Gå til innhold

Hjelp med mingw32, crosscompilere for Win


Anbefalte innlegg

Skrevet

Halloi!

 

Jeg har aktivt jobbet med oversettelse av en applikasjon til Linux. Utvikleren har ventet på at noen skulle få laget en windows versjon av programmet, og etter mange løftebrudd, ser det ut som om de siste som sa ja, har trukket seg...

Derfor tenkte jeg at dette kunne være noe for meg.. Liker nye utfordringer, samt det å lære nye ting.

 

Jeg fikk beskjed om at det eneste man trengte å gjøre, var å crosscompilere med mingw32. Jeg har ingen aning om hvordan dette skal gjøres, og tar derfor, med åpne armer, imot alle råd, tips, vink, guider og linker dere kan komme på. Prøvde å google mingw32 på norske sider, men det var heller begrenset informasjon..

 

Programmet er også avhengig av blant annet QT. Jeg har tilgangen på 4 forskjellige Linuxmaskiner, og en Windows XP maskin.

 

På forhånd takk for all hjelp!

Videoannonse
Annonse
Skrevet (endret)

har litt problemer med å forstå det du sier, altså hvilken retning det er snakk om .. du mener fra Linux-->Win32? .. det spiller kanskje ingen rolle

 

det jeg skal frem til er at kryss-kompilering først og fremst brukes når platformen/maskinen man ønsker generere binaries for ikke kan hoste GCC selv -- og det er enklere, tror jeg, å unngå kryss-kompilering i dette tilfellet fordi både win32 og linux kan hoste GCC selv

 

(vmware-player er grei i slike sammenhenger btw.)

 

edit: GCC er altså portet til Win32 - MinGW og Cygwin er to muligheter

Endret av oladunk10
Skrevet

Heisann!

 

Jeg var kanskje litt upresis i mine formuleringer ja... :)

 

Jeg har en applikasjon bygd for Linux, kalt XX. Denne applikasjonen ønsket utvikleren at skulle bli gjort tilgjengelig for Win brukere også. Mye arbeid har visstnok allerede blitt gjort, diverse libraries er allerede kompilert mm. Etter den dialogen jeg hadde med utvikleren her istad, var det visstnok "bare" å kryss-kompilere med feks mingw som gjennstod. Om det finnes en annen måte å få dette programmet gjort tilgjengelig for windows brukere, så er jeg lutter øre! ;)

 

Jeg har innlogging for SVN versjonen av applikasjonen XX, og sitter selv hovedsakelig på en Linux maskin. Har alikevel muligheten til å prøve ut programmet XX på den ene maskinen min, som er en Windows XP maskin.

 

Programmet XX har også diverse avhengigheter til andre programmer, som feks QT.

 

Som sagt har jeg lite bakgrunn for et slikt arbeide, men en plass må man jo begynne.

Skrevet

ok, vel .. "kryss-kompilering" (eller "cross-compiling") vil si å generere (kompilere/linke) binaries for en annen platform enn den man står på nå ..

 

det kan hende du mener noe annet når du bruker uttryket "kryss-kompilering" -- men om du mener det jeg forsøker å forklare her så tror jeg det hadde vært lettere å sette opp et miljø på WinXP-maskinen (event. bruke vmware-player og kjøre winxp under linux) med kompiler og bibliotioteker, og utføre kompileringen/linkingen der - fremfor å "kryss-kompilere"

 

..men for alt jeg vet kan det godt hende prosjekt XX har en løsning for dette med kryss-kompilering linux->win32 allerede mer eller mindre satt opp fra før..

Skrevet
Heisann!

 

Jeg var kanskje litt upresis i mine formuleringer ja... :)

 

Jeg har en applikasjon bygd for Linux, kalt XX. Denne applikasjonen ønsket utvikleren at skulle bli gjort tilgjengelig for Win brukere også. Mye arbeid har visstnok allerede blitt gjort, diverse libraries er allerede kompilert mm. Etter den dialogen jeg hadde med utvikleren her istad, var det visstnok "bare" å kryss-kompilere med feks mingw som gjennstod. Om det finnes en annen måte å få dette programmet gjort tilgjengelig for windows brukere, så er jeg lutter øre! ;)

 

Jeg har innlogging for SVN versjonen av applikasjonen XX, og sitter selv hovedsakelig på en Linux maskin. Har alikevel muligheten til å prøve ut programmet XX på den ene maskinen min, som er en Windows XP maskin.

 

Programmet XX har også diverse avhengigheter til andre programmer, som feks QT.

 

Som sagt har jeg lite bakgrunn for et slikt arbeide,  men en plass  må man jo begynne.

7136677[/snapback]

Enklaste er nok å kompilere native ville eg tru, og ikkje krysskompilere.

 

Då må du først installere nødvendige bibilotek, inkludert headers, på maskina du skal kompilere på, og sørge for at dei fungerer.

 

Så installerer du full toolchain, dvs gcc, gasm, gdb etc, og kjører make. Sansynlegvis må det installerast i t.d cygwin for å fungere optimalt/i heile tatt.

 

Når du har gjort det, prøver du å kompilere. Mest truleg tryner det, fordi ting ikkje er heilt likt på ulike OS. Da ser du på kva som gjekk gale, og prøver å fikse det slik at det fungerer på det nye OSet.

 

Når du har gjort det til det endeleg kompilerer, så er du ferdig, og kan strippe binærfilene og distribuere dei.

 

Dersom du ikkje har peiling på kompilering i heile tatt, er ikkje krysskompilering/porting verdas enklaste ting. Du kan ha flaks, og det bare fungerer, men det kan godt skje at det er ting som ikkje er platformuavhengig i koden.

 

Men, sikkert grei måte å lære på.

 

Utav interesse, kva program er det? Det luktar opensource lang veg...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...