From: Ludwig M. <lud...@tu...> - 2006-11-20 00:33:10
|
Hallo! I wanted to write a MySQL application for Windows on a linux host. I installed the Debian/testing mingw packages, and unpacked the MySQL sources for Windows in a separate directory. I am actually getting crazy with the linker. I actually run the reimp-dlltool or the pexports-dlltool respectively, made a libmysql.a, the compiler runs with no complain for not finding "lmysql" ... But the linker complains about "undefined references" ... (compiled ReImp, refuses to work complaining "invalid or corrupt import library, so I run the binary one) wine /tmp/a/bin/reimp.exe "C:\libmysql.lib" i586-mingw32msvc-dlltool --input-def libmysql.def --dllname libmysql.dll --output-lib libmysql.a I copied the libmysql.a file into the applications directory, and run a "make". The erroneus part (nb: mysql.c is the name of my application, it has not anything to do with the MySQL server): i586-mingw32msvc-gcc -I"/home/ludwig/prog/hpa/MySQL Server 5.0/include/" -L./ -O2 -c -o mysql.o mysql.c [...] i586-mingw32msvc-gcc -I"/home/ludwig/prog/hpa/MySQL Server 5.0/include/" -L./ -mconsole mysql.o -o mysql.exe mysql.o:mysql.c:(.text+0xa9): undefined reference to `_mysql_init@4' mysql.o:mysql.c:(.text+0xd2): undefined reference to `_mysql_real_connect@32' mysql.o:mysql.c:(.text+0x148): undefined reference to `_mysql_real_query@12' mysql.o:mysql.c:(.text+0x156): undefined reference to `_mysql_use_result@4' mysql.o:mysql.c:(.text+0x16e): undefined reference to `_mysql_fetch_row@4' mysql.o:mysql.c:(.text+0x18d): undefined reference to `_mysql_num_fields@4' mysql.o:mysql.c:(.text+0x1b9): undefined reference to `_mysql_fetch_row@4' mysql.o:mysql.c:(.text+0x1d1): undefined reference to `_mysql_close@4' mysql.o:mysql.c:(.text+0x1d9): undefined reference to `_mysql_server_end@0' collect2: ld returned 1 exit status make: *** [mysql] Error 1 i586-mingw32msvc-nm libmysql.a yields (excerpts): deess00068.o: 00000000 b .bss 00000000 d .data U __head_libmysql_a 00000000 i .idata$4 00000000 i .idata$5 00000000 i .idata$6 00000000 i .idata$7 00000000 I __imp__mysql_init@4 00000000 T _mysql_init@4 00000000 t .text deess00085.o: 00000000 b .bss 00000000 d .data U __head_libmysql_a 00000000 i .idata$4 00000000 i .idata$5 00000000 i .idata$6 00000000 i .idata$7 00000000 I __imp__mysql_real_connect@32 00000000 T _mysql_real_connect@32 00000000 t .text How comes? Saluti! Ludwig |