gcc-program körbart på både 32/64 Linux?
gcc-program körbart på både 32/64 Linux?
Finns det något sätt att få ett program skrivet i gcc utan ++ för 32-bit att bli körbart även i en dator med 64-bit Linux? Det vore bra med samma version till allt.
- lillahuset
- Gått bort
- Inlägg: 13969
- Blev medlem: 3 juli 2008, 08:13:14
- Ort: Norrköping
Re: gcc-program körbart på både 32/64 Linux?
Om jag fattar din fråga rätt borde det här svaret funka:
https://www.maketecheasier.com/run-32-b ... bit-linux/
Du behöver alltså 32 bit libben.
Förr när jag var tvungen att köra en del 32 bits program funkade det perfekt. Lycka till!
https://www.maketecheasier.com/run-32-b ... bit-linux/
Du behöver alltså 32 bit libben.
Förr när jag var tvungen att köra en del 32 bits program funkade det perfekt. Lycka till!
Re: gcc-program körbart på både 32/64 Linux?
Det är just secialare som skulle vara trevligt att komma ifrån. Programmet länkar till xlib direkt och har inga andra dependecies på en 32-bit burk. Dessvärre går invecklingen mot att det skall vara minst 4 bytes memory padding på det mesta numera. I det här fallet blir det 8 bytes åt he***te för vaje entry i dess dubbellänkade lista. Laddas 100k data blir det ungefär 20k extra slack mot en 32-bit...
Vad är det för libbar som behövs? Hade varit fint om det funnis en wrapper som kunde inkludera och sedan länka statiskt med bara det som användes inkluderat. Samma rimligt stora fil körbar på alla Linuxburkar.
Vad är det för libbar som behövs? Hade varit fint om det funnis en wrapper som kunde inkludera och sedan länka statiskt med bara det som användes inkluderat. Samma rimligt stora fil körbar på alla Linuxburkar.
- lillahuset
- Gått bort
- Inlägg: 13969
- Blev medlem: 3 juli 2008, 08:13:14
- Ort: Norrköping
Re: gcc-program körbart på både 32/64 Linux?
Du kompilerar och länkar bara som vanligt för 32 bit. Sedan installerar du 32 bits libben enligt artikeln på din 64 bittare. Efter det ska det bara vara att köra som vanligt.
Jag har inte gjort det på länge för nuförtiden brukar det mesta vara kompilerat för 64 bit
Jag har inte gjort det på länge för nuförtiden brukar det mesta vara kompilerat för 64 bit
Re: gcc-program körbart på både 32/64 Linux?
Jag kör Gentoo Linux och i den distron så kan man välja att köra ren 64-bit (då inga 32-bitarsprogram fungerar) eller "multilib" när både 64- och 32-bitarsbibliotek installeras och som alltså stödjer båda typerna av exekverbara filer.
En lösning kanske är att bygga programmet statiskt? Edit: vilket du redan har nämnt själv, ja. Fungerar inte det?
En lösning kanske är att bygga programmet statiskt? Edit: vilket du redan har nämnt själv, ja. Fungerar inte det?
Re: gcc-program körbart på både 32/64 Linux?
Om man använder en pakethanterare kan man ju sätta dependency till 32bitlibbarna på paketet.
När jag installerade mjukvara för "multianvändare" på förra jobbet installerade jag alltid både 32 och 64bit för att undvika problem.. problemen uppstod iofs sällan men var jobbiga när dom uppstod, och disk var ju billigt.
När jag installerade mjukvara för "multianvändare" på förra jobbet installerade jag alltid både 32 och 64bit för att undvika problem.. problemen uppstod iofs sällan men var jobbiga när dom uppstod, och disk var ju billigt.
Re: gcc-program körbart på både 32/64 Linux?
Eller så länkar man libbarna statiskt, så slipper man installera runtimen för dem.
Visserligen blir programmet lite större, men risken för krascher blir mindre.
Visserligen blir programmet lite större, men risken för krascher blir mindre.