[PD-dev] External compilation linux->windows

Nicolas Montgermont nicolas_montgermont at yahoo.fr
Wed Apr 18 15:20:07 CEST 2007


Hi lists,

Perhaps this is a little ot, but I try to compile some externals from 
linux (ubuntu edgy) to windows.
I've installed the mingw32 packages and edited my makefile to replace 
the "cc" and "ld" commands by the "i586-mingw32msvc-" ,"cc" and "ld" 
ones when I choose pd_nt as a target. I also add the "-L/usr/lib/" 
option to the "i586-mingw32msvc-ld".
Here is the concerned part of the makefile :

-------------
pd_nt: downquantize~.dll

.SUFFIXES: .dll

PDNTCFLAGS = -DPD -O2 -funroll-loops -fomit-frame-pointer \
    -Wall -W -Wshadow -Wstrict-prototypes -Werror \
    -Wno-unused -Wno-parentheses -Wno-switch

PDNTINCLUDE = -I/home/montgermont/pd/pd-0.40-0test05/src -I/usr/include/stk

.c.dll:
    i586-mingw32msvc-cc $(PDNTCFLAGS) $(PDNTINCLUDE) -o $*.o -c $*.c
    i586-mingw32msvc-ld -export_dynamic -L/usr/lib/  -shared -o $*.dll 
$*.o -lc -lm -lstk
    strip --strip-unneeded $*.dll
    rm $*.o
-------------------------

and here is the terminal error:
-------------------------
montgermont at carcassi:~/pd/downquantize$ make pd_nt
i586-mingw32msvc-cc -DPD -O2 -funroll-loops -fomit-frame-pointer -Wall 
-W -Wshadow -Wstrict-prototypes -Werror -Wno-unused -Wno-parentheses 
-Wno-switch -I/home/montgermont/pd/pd-0.40-0test05/src 
-I/usr/include/stk  -o downquantize~.o -c downquantize~.c
i586-mingw32msvc-ld -export_dynamic -L/usr/lib/ -shared -o 
downquantize~.dll downquantize~.o -lc -lm -lstk
downquantize~.o:downquantize~.c:(.text+0x284): référence indéfinie vers 
« dsp_add »
downquantize~.o:downquantize~.c:(.text+0x29b): référence indéfinie vers 
« pd_new »
downquantize~.o:downquantize~.c:(.text+0x2b1): référence indéfinie vers 
« floatinlet_new »
downquantize~.o:downquantize~.c:(.text+0x2b8): référence indéfinie vers 
« s_signal »
downquantize~.o:downquantize~.c:(.text+0x2be): référence indéfinie vers 
« outlet_new »
downquantize~.o:downquantize~.c:(.text+0x2e8): référence indéfinie vers 
« gensym »
downquantize~.o:downquantize~.c:(.text+0x2f0): référence indéfinie vers 
« class_new »
downquantize~.o:downquantize~.c:(.text+0x306): référence indéfinie vers 
« gensym »
downquantize~.o:downquantize~.c:(.text+0x31b): référence indéfinie vers 
« class_addmethod »
downquantize~.o:downquantize~.c:(.text+0x32a): référence indéfinie vers 
« class_domainsignalin »
make: *** [downquantize~.dll] Erreur 1
--------------------------

It seems mingw32msvc can't find any pd function... but the linux to 
linux part works well (see attached)
Do someone understand where is the error? Or better, already have a 
makefile to cross compile?
Sorry if it's stupid, I'm not really used to makefiles...

Greetings,

-- 
Nicolas Montgermont
http://nicomon.basseslumieres.org
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: makefile
URL: <http://lists.puredata.info/pipermail/pd-dev/attachments/20070418/ee96a44c/attachment.asc>


More information about the Pd-dev mailing list