WineLib Linker Error?

eric pouech eric.pouech at wanadoo.fr
Mon Aug 13 11:14:59 CDT 2001


> and a hand crafted make file.  When I run the make I get the
> following output (line wrapping added):
well the error is in the make file

>  LD_LIBRARY_PATH="../../wine-20010731/unicode:$LD_LIBRARY_PATH"
>   ../../wine-20010731/tools/winebuild/winebuild -fPIC
>   -L../../wine-20010731/dlls -o test.spec.c -spec test.spec
this part should be run with '-sym test.tmp.o' as an additional option

as a remainder the step for building a Wine module are:
1/ build all .o from the .c files
2/ (relative)-link (ld -r) them into a $(module).tmp.o file
3/ remove all resolved symbols (strip --strip-unneeded
$(module).tmp.o                                                                                                                                                 
4/ translate the .spec file into .spec.c file (this include the
generation
   of all the imports). The needed imports are in fact the unresolved
   symbols from $(module).tmp.o. So you need to pass this to winebuild
5/ compile the .spec.c into a .o file
6/ do the final linking (normally, all unresolved symbols from
$(module).tmp.o
   should be present in .spec.o file)

so you missed steps 2&3 (and part of 4). using winemaker is really a
good idea
here... just my 2 cents

A+

-- 
---------------
Eric Pouech (http://perso.wanadoo.fr/eric.pouech/)
"The future will be better tomorrow", Vice President Dan Quayle



More information about the wine-users mailing list