Kokemattomana kysyn, että voiko jollakin ohjelmointikielillä tehdä koodista sellaista, että koodin voisi ilman muokkauksia kääntää erilaisille moderneille suoritinarkkitehtuureille (x86, PowerPC, ARM jne.) sekä erilaisille moderneille käyttöjärjestelmille (kuten Windows 10, OS X El Capitan ja Linux Mint) ja vieläpä näiden käyttöjärjestelmien rajapinnoille (kuten Win32 ja WinRT)? Vaativatko nuo aina omanlaisiaan koodinpätkiä, jotka tekevät samalla koodista epäyhteensopivan eri suoritinarkkitehtuureille, käyttöjärjetelmille ja rajapinnoille?
En tarkoita sitä, olisiko tuossa mitään järkeä, vaan sitä, onko se ylipäänsä mahdollista.
Kääntäminen eri suoritinarkkitehtuureille jne.
8
147
Vastaukset
Googleta vaikka gcc cross compile. Kyllä PC:llä voi kääntää koodia vaikka puhelimelle. C:llä nyt pysyy tekemään melkein mitä vain. Koodiin voi lisätä ohjauskäskyjä miten käännetään eri alustoilla. RawTherapee ja Gimp esimerkiksi ohjelmia jotka toimivat Linux ja Windows ympäristössä. Noita olen kääntänyt vain Linux ympäristössä koska se on helppoa.
Toki. Javascript toimii yleisesti ottaen ihan joka paikassa koodia muokkaamatta tai erikseen toiseen ympäristöön kääntämättä ja joka paikassa on myös se ajoympäristö.
Muissa ohjelmointikielissä tulee väistämättä jotain rajoitetta siirrettävyyteen, että mihin siirtyy. Tulkattavat ja tavukoodiksi käännetyt kielet poistavat laitearkkitehtuuririippuvuuden mutta on riippuvuuksia ajoympäristöihin. Laitearkkitehtuurille käännettävät kielet tekevät riippuvuuden laitearkkitehtuurin että tarvitsee uudelleenkääntämistä ja riippuvuutta myös ajoympäristöön ja siihen miten se siirtyy.- 102030405060
On monia kieliä, mitkä ovat niin sanotusti ajon aikana tulkattavia. Niitä yleensä voi käyttää ilman muutoksia eri alustoilla.
Näitä ovat esim.
-Python
-Java
-Javascript
Toki sitten perinteisemätkin kielet joissakin tapauksissa ja vähän kehitysymäristöstä riippuen kääntyy hyvinkin helposti eri alustoille, esimerkiksi Qt:n C jutut. - lazz_o
Lazarus (http://www.lazarus-ide.org/) tekee tuota. Se sallii myös ikkunointiympäristön vaihdon ("sama ohjelma voi olla gnome tai esim qt-tyylinen). Täysin samalla lähdekoodilla tehty ohjelma voi toimia esim. windowsissa ja raspberry pi:ssä (eri prosessoriarkkitehtuuri, eri käyttöjärjestelmä, eri ikkunointijärjestelmä). Lazarus on tehty lazaruksella ja se on saatavana esim. windowsiin ja raspberry piihin.
- a1234
Tulkattavien kielten kuten Javascript:n todellinen ongelma on isot sovellukset pienissä laitteissa koska ne vaativat ajoympäristön. Kokemuksesta tiedän että pilvipalveluna toteutettu outlook kaatuu omaan mahtavuuteensa pienillä laitteilla (ei MS-käyttis)
Myös käännettävät kielet tarvitsevat ajoympäristöä (kirjastot) ja Javascript tavallaan tavukoodia ja semmoista "assembleria" mihin käännetään koodi ja se minimoidaan.
Muistin kulutus on sitten eri asia. Luonnollisesti optimaalisinta muistinkulutuksen kannalta on käyttää ekosysteemin natiivia, että sehän on se parhaiten optimoitu ja riippuu myös siitä miten sovellus tehdään.- a2345
Alunperin pienille laitteille käännettävät ohjelmat ristikäännettiin eli ohjelmat kehitettiin PC:llä ja ohjelmat siirrettiin sitten pieniin laitteisiin (tätä tehdään tänäkin päivänä).
- Tehdäänjoo
Joo, kyllä yleensä kaikki sulautettu softa käännetään PC:llä, olipa kyseessä sitten puhelin, tukiasema tai laivan moottorin ohjausboksi. Monesti (lähes) samoista sourcekoodeista käännetään myös PC:lle yksikkötestibinäärit ja yleensä myös ennen oikean raudan valmistumista softaa käännetään erilaisille emulaattoreille tai protokorteille, joissa on yleensä yhtä sun toista poikkeavuutta lopulliseen rautaan verrattuna. C:llä näitä enimmäkseen koodataan, joskus osittain C :llakin. Laiteriippuvaiset asiat pyritään piilottamaan jonkinlaisen HAL- tai ajurirajapinnan taakse niin, että eri raudoille sovitus hoituu esim. käännöksen aikaisilla flägityksillä.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Nainen, tervetuloa
Tule luokseni eka vaikka viikoks tai pariksi. Saisin helliä, kannustaa ja tukea sua ja kokata lempi herkkujasi. Pääsisit357774Olisit ollut varovaisempi
Nyt jos minut hylkäät ja et meidän asiasta minulle mitään ilmoita niin ettet edes anteeksi pyydä, niin tiedä että minä e834606Mies sinä olet kaunis katsella
Olet myös rauhallinen, tavallinen, varovainen, lämmin, poikamainen, komea, ryhdikäs, rentotyylinen, kiva, mukava... jne673271- 552166
Sinulle, tahtoisin kertoa mitä
ajattelen siitä. Ehkä olen väärässä, mutta minusta kuulostaa jonkin alulta, mutta ei kerro minkä. Se selvinnee myöhemmi281709Ensitreffit alttarilla Jyrki paljastaa hääyön intiimiasioista kameroiden sammuttua: "Fyysinen..."
Ooo-la-laa… Ensitreffit alttarilla -sarjassa alkaa hääparien välillä ns. tunteet kuumenemaan. Lue lisää: https://www.s71687Persut tyrmäsivät Suomen osallistumisen Ukrainan jälleenrakentamiseen
Siinä meni sitten kokoomusyrittäiltä bisnekset sivun suun putinistipersujen takia. Jälleenrakentamiseen osallistuvat mu3581498Miksi suomussalmelaiset haisee niin pahalle?
Kaupassa käydessä huomaa, miten monet ihmiset haisee todella kammottavalle. Eikö täällä osata käydä pesulla tarpeeksi us171496Miksi miehet pelkäätte jotain naista?
Iskeekö ujous, paniikki ja hävetys. En ole niin pelottava miltä vaikutan vink vink.581199Nuorisojoukko ryösti merkkikengät teinipojan jalasta Helsingin Itäkeskuksessa.
https://www.is.fi/kotimaa/art-2000010709501.html Muun muassa näidenkin rikosten huomattavan suurista kasvamismääristä vi2771088