Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: Michal Štrba 25. 01. 2011, 15:45:00
-
Chcem sa opytat ze ak v C/C++ napisem prenositelny kod (taky ktory skompilujem na lubovolnej platforme a program bude fungovat) tak ak ho len skompilujem bez linkovania bude vysledny objektovy subor prenositelny tiez?
-
Nie
-
Není to možné. Objektové soubory už jsou zkompilované pro konkrétní architekturu - jsou to binární kusy výsledného programu. Takže není možné je přenést na jinou platformu nebo architekturu.
-
Myslim, ze Java je odpoved, ale nejsem si jisty, co byla otazka.. :-)
-
Obecně ne. Lze ale vytvořit přenositelný objektový kód třeba pomocí LLVM (doporučuji, umí to i JIT nebo AOT kompilaci) nebo QEMU User Mode Emulation (dá se, ale mobily tím usmažíte). Ani jedno ale nefunguje tak, že nahrajete objektový kód na cílovou platformu a rovnou spustíte.
Btw. Java je na tuto otázku asi jako je odpověď „Použij loď” na otázku „Když vyrobím vlak tak, že na něj lze montovat libovolná kola, bude moct po sestavení jezdit na libovolné trati?”
-
Btw. Java je na tuto otázku asi jako je odpověď „Použij loď” na otázku „Když vyrobím vlak tak, že na něj lze montovat libovolná kola, bude moct po sestavení jezdit na libovolné trati?”
Slo me o to, ze bych se temer vsadil, ze autor chce (tedy duvod proc se pta) distribuovat kod pro vic platforem, ale nechce ho distribuovat jako zdrojak.
-
Slo me o to, ze bych se temer vsadil, ze autor chce (tedy duvod proc se pta) distribuovat kod pro vic platforem, ale nechce ho distribuovat jako zdrojak.
V tom případě je nejjednodušším a nejschůdnějším řešením distribuce více druhů binárek na jednom instalačním médiu.