Compile wine 0.9.58 under Ubuntu 8.04
Hej alle sammen
Jeg ønsker at spille CNC3 under mit Ubuntu 8.04 (64 bit), til det ønsker jeg at complier wine 0.9.58 med nogle patches, jeg bruger denne guide fra Winehq CNC3 winehq, jeg får denne compileringsfejl:
Jeg har også gjordt som følgende link siger.
Så vidt jeg kan se mangler jeg libXext men jeg har lavet installeret og linket til den.
Jeg håber der er nogle der kan hjælp. på forhold mange tak
Jeg ønsker at spille CNC3 under mit Ubuntu 8.04 (64 bit), til det ønsker jeg at complier wine 0.9.58 med nogle patches, jeg bruger denne guide fra Winehq CNC3 winehq, jeg får denne compileringsfejl:
../../tools/winegcc/winegcc -B../../tools/winebuild -shared ./winex11.drv.spec bitblt.o bitmap.o brush.o clipboard.o clipping.o codepage.o desktop.o dib.o dib_convert.o dib_dst_swap.o dib_src_swap.o event.o graphics.o init.o keyboard.o mouse.o opengl.o palette.o pen.o scroll.o settings.o text.o window.o winpos.o wintab.o x11ddraw.o x11drv_main.o xdnd.o xfont.o xim.o xinerama.o xrandr.o xrender.o xvidmode.o version.res -o winex11.drv.so -luser32 -lgdi32 -ladvapi32 -lkernel32 -lntdll -L/usr/lib -lXext -lX11 ../../libs/port/libwine_port.a -L/lib32 -L/usr/lib32 -L/home/kaalund/Byggepladsen/wine-0.9.58/lib32 -Wl,-rpath,/lib32 -Wl,-rpath,/usr/lib32
/usr/bin/ld: skipping incompatible /usr/lib/libXext.so when searching for -lXext
/usr/bin/ld: skipping incompatible /usr/lib/libXext.a when searching for -lXext
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.2.3/../../../libXext.so when searching for -lXext
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.2.3/../../../libXext.a when searching for -lXext
/usr/bin/ld: skipping incompatible /usr/bin/../lib/libXext.so when searching for -lXext
/usr/bin/ld: skipping incompatible /usr/bin/../lib/libXext.a when searching for -lXext
/usr/bin/ld: skipping incompatible /usr/lib/libXext.so when searching for -lXext
/usr/bin/ld: skipping incompatible /usr/lib/libXext.a when searching for -lXext
/usr/bin/ld: cannot find -lXext
collect2: ld returnerede afslutningskoden 1
winegcc: gcc-4.2 failed
make[2]: *** [winex11.drv.so] Fejl 2
make[2]: Forlader katalog '/home/kaalund/Byggepladsen/wine-0.9.58/dlls/winex11.drv'
make[1]: *** [winex11.drv] Fejl 2
make[1]: Forlader katalog '/home/kaalund/Byggepladsen/wine-0.9.58/dlls'
make: *** [dlls] Fejl 2
Jeg har også gjordt som følgende link siger.
Så vidt jeg kan se mangler jeg libXext men jeg har lavet installeret og linket til den.
Jeg håber der er nogle der kan hjælp. på forhold mange tak
Kommentarer4
Kompilering + mere professionelt brug af wine :)
Som regel er wine compilering en længere omgang på 64bit igennem et chroot og du skal eksporte et par paths mv før end compileringen virker.
Følgende er uddrag af mine egne noter og et script som jeg bruger.
Guide til opsætningen af et hurtigt chroot:
http://cronflakes.com/stuff/linuxin/quick-and-dirty-chroot.pdf
Script til download og kompilering af Wine på en relativt nem måde
http://cronflakes.com/stuff/linuxin/wine-get
Følg guiden, sæt et chroot op. Det eneste du skal gøre er at erstatte "gutsy" med "hardy" for at få et i386 (32bit) hardy chroot.
Når Det er gjort og den minimale test i slutningen af guiden er udført, installerer du lige de krævede libraries for at compilere wine under dit chroot med følgende kommando:
dchroot -c hardy -d "sudo apt-get build-dep wine"
Så henter du scriptet "wine-get" som jeg ladge op. Så installerer du php5-cli på dit 64bit system:
sudo apt-get install php5-cli
Så åbner du wine-get filen med gedit og retter i linjerne 20, 21, 23 og 24 så stierne passer på hvad du vil have.
Hvis du fulgte guiden til punkt og prikke og erstattede "gutsy" med "hardy " hedder dit chroot også hardy, lad os så antage at du ønsker at hente wine kildekoden og bygge wine i mappen /home/mixi/wine-compile og wine-pakkerne skal installeres som /usr/local/wine/wine-VERSION, ergo kommer området omkring de førnævnte linjer til at se sådan her ud:
<?php
"baseprefix"=>"/usr/local/wine/",
"builddir"=>"/home/mixi/wine-compile/",
"oldpwd"=>"", //will hold the value of where the script was executed from, needed because if patch-files are supplied, they'll be expected here
"chrootpath"=>"/chroot/",
"chrootname"=>"hardy", //name of the chroot in dchroot config file
?>
HUSK at de paths du skriver ved baseprefix og builddir SKAL eksistere, det gør vi lige sådan her
mkdir /home/mixi/wine-compile && sudo mkdir /usr/local/wine
Gør scriptet eksekvérbart:
chmod +x wine-get
======================
Installations eksempler:
======================
./wine-get install version=0.9.58
Henter, udpakker og kompilerer wine 0.9.58 under dit chroot så du får en fuldt funktionsdygtig wine og installerer det til /usr/local/wine/wine-0.9.58
Hvor du så kan benytte wine som
/usr/local/wine/wine-0.9.58/bin/wine notepad
Installér wine med 2 samtidige tråde (dvs højere hastighed)
./wine-get install wine=0.9.58 threads=2
Installér wine med patch filerne "patch1.diff" og "patch2.diff", 2 tråde, CFLAGS O2 (optimization level 2) og et specielt versions-nr
./wine-get install wine=0.9.58 threads=2 patchlist="patch1.diff patch2.diff" cflags="-O2" minorversion=cnc
Det ser måske lidt overkill agtigt ud ved første øjekast. Men det tillader dig at have multiple sam-eksisterende wine installationer hvilket er en STOR bonus da visse wine-versioner virker godt med et program mens en meget ældre version virker godt med et andet program.
Det skal nu ikke længere stoppe dig :)
Som sidste eksempel viser, kan du således patche en version af wine til at få et specielt spil/program til at fungere uden at alle andre programmer vil bruge den.
Et sidste tip:
Til flere forskellige versioner af wine kan du med fordel bruge flere forskellige konfigurationer.
Fra start har du kun et, nemlig $HOME/.wine.
Skriv:
WINEPREFIX="/home/mixi/.cncwine" /usr/local/wine/wine-0.9.58-cnc/bin/wineprefix
For at danne et nyt falsk windows dir.
Installationen (setup.exe) startes så med:
WINEPREFIX="/home/mixi/.cncwine" /usr/local/wine/wine-0.9.58-cnc/bin/wine setup.exe
Fordelen ? Jo, du kan nu lave så mange dll overrides, lyd og GFX indstillinger mv uden at dette rammer de andre applikationer du bruger.
Det er dit eget valg om du vil alt det her. Men det er uden tvivl den bedste måde at gøre det på. Via dette fandt jeg fx en speciel version af wine samt en bunke registrerings-tweaks og dll overrides der gjorde at jeg fik spillet "world in conflict" til at køre med LANGT højere FPS (lad os sige +30 average) end hvis jeg skulle have brugt den seneste wine + standard indstillingerne..
Re: Compile wine 0.9.58 under Ubuntu 8.04
Re: Compile wine 0.9.58 under Ubuntu 8.04
By en vej så tror jeg mere eller mindre du kunne lave en fin guide ud af det,
ellers vil jeg gerne gøre det... du skal selvfølgelig nok få credit :D
Tak :)
Med sådant et setup er det jo ret nemt at bruge wine version 0.9.XYZ til et givent app - bare husk også at bruge WINEPREFIX til at lave forskellige WIN-dirs.
Og tak for kommentaren :) Kendte bare til problemet og hvor irriterende det kan være ;)