Véleményed van a honlapomról? Mondd el nekem!
Drupal alapú honlapot szeretnél? Javítani kellene az oldaladon, esetleg fejleszteni rá, szebbé tenni? Kérj árajánlatot!
Ezen az űrlapon veheted fel velem a kapcsolatot!
MinGW és a cross-build Linux alatt
Készítek pár GTK+ -t használó alkalmazást, jó lenne lefordítani őket Windows alá, viszont mindezt Linux alatt. Ezért most gyorsan felvésem magamnak a tudnivalókat ide, én Ubuntu-n ügyködök, de megy ez máshol is.
- Először is kell MinGW a Linuxra: apt-get install mingw32 mingw32-binutils mingw32-runtime
- Töltsük le a GTK+ Windowsos változatát (igen, azt): 32 bit, 64 bit. Nyilván az előbbi kettőből csak az egyik kell, amelyik változatra szeretnél fordítani. Itt szinte mindenből kell a Binaries és a Dev, ha nem szeretnél ennyi mindent egyesével letölteni, akkor van egy "bundle" csomag, ami mindent tartalmaz egyben, az All-in-one bundle alatti részben találod kilinkelve az oldalon. Én ez utóbbi használatát javaslom.
- A letöltött csomago(ka)t át kell helyezni az /usr/i586-mingw32msvc/ könyvtárba, és ott kicsomagolni jól. Akkor csináltad ügyesen, ha lett például ilyen könyvárad: /usr/i586-mingw32msvc/lib/gtk-2.0/
- Na most egy csúnya rész jön: Lett egy ilyen könyvtárad: /usr/i586-mingw32msvc/lib/pkgconfig/, tele .pc kiterjesztésű fájlokkal.
Ezeknek a fájloknak az első sora ilyesmi:
prefix=c:/devel/target/15b8edc4c065056b502aacb9c2e1d417
Ez így teljes badarság, meg kell nyitni őket, és összesben átírni ezt a sort erre:
prefix=/usr/i586-mingw32msvc/
Erre majd összeütök valami kis segédeszközt, amit megosztok itt. - Ha ez megvan, be kell állítani, hogy hol keresse a fordítót és a pkgconfig csomagleírásait:
- export CC="i586-mingw32msvc-cc"
- export CXX="i586-mingw32msvc-c++"
- export CFLAGS="-O2 -mms-bitfields"
- export CXXFLAGS="-O2 -mms-bitfields"
- export PKG_CONFIG_PATH="/usr/i586-mingw32msvc/lib/pkgconfig"
- Mehet a fordítás, ha autoconf-os a program, akkor ennyi:
- mkdir /home/foobar/kesz_program
- ./configure --host=mingw32 --prefix=/home/foobar/kesz_program --disable-nls
- make
- make install
- ha sikerült, a lefordított programot a /home/foobar/kesz_program könyvtárban találjuk
Friss hozzászólások