Sida 1 av 1

gcc-program körbart på både 32/64 Linux?

Postat: 15 maj 2018, 11:46:49
av Marta
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.

Re: gcc-program körbart på både 32/64 Linux?

Postat: 15 maj 2018, 13:05:11
av lillahuset
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!

Re: gcc-program körbart på både 32/64 Linux?

Postat: 16 maj 2018, 16:43:25
av Marta
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.

Re: gcc-program körbart på både 32/64 Linux?

Postat: 16 maj 2018, 16:59:06
av lillahuset
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

Re: gcc-program körbart på både 32/64 Linux?

Postat: 16 maj 2018, 17:50:16
av arvidb
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?

Re: gcc-program körbart på både 32/64 Linux?

Postat: 17 maj 2018, 10:37:15
av Glenn
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.

Re: gcc-program körbart på både 32/64 Linux?

Postat: 17 maj 2018, 10:50:33
av TomasL
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.