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
153
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
Nurmossa kuoli 2 Lasta..
Autokolarissa. Näin kertovat iltapäivälehdet juuri nyt. 22.11. Ja aina ennen Joulua näitä tulee. . .1448229Joel Harkimo seuraa Martina Aitolehden jalanjälkiä!
Oho, aikamoinen yllätys, että Joel Jolle Harkimo on lähtenyt Iholla-ohjelmaan. Tässähän hän seuraa mm. Martina Aitolehde442224Kaksi lasta kuoli kolarissa Seinäjoella. Tutkitaan rikoksena
Henkilöautossa matkustaneet kaksi lasta ovat kuolleet kolarissa Seinäjoella. Kolmas lapsi on vakasti loukkaantunut ja262102- 951718
Miksi pankkitunnuksilla kaikkialle
Miksi rahaliikenteen palveluiden tunnukset vaaditaan miltei kaikkeen yleiseen asiointiin Suomessa? Kenen etu on se, että1811657- 321327
Tunnekylmä olet
En ole tyytyväinen käytökseesi et osannut kommunikoida. Se on huono piirre ihmisessä että ei osaa katua aiheuttamaansa p1081083Taisit sä sit kuiteski
Vihjata hieman ettei se kaikki ollutkaan totta ❤️ mutta silti sanoit kyllä vielä uudelleen sen myöhemmin 😔 ei tässä oik51009- 53995
Odotathan nainen jälleenkohtaamistamme
Tiedät tunteeni, ne eivät sammu johtuen ihanuudestasi. Haluan tuntea ihanan kehosi kosketuksen ja sen aikaansaamaan väri28860