[q-lang-users] Build problems with q-6.0
Brought to you by:
agraef
From: Thomas P. <Tho...@at...> - 2005-02-16 07:29:28
|
Hello, I report this hier because the bug tracking page at sourceforge seems not to be use by this project. There are some glitches with building q-6.0. On my AthlonXp Debian testing system, it is not possible to build the opendx (dxl) extension. This is the error make[4]: Entering directory `/home/tpasch/compile/q-6.0/modules/dxl' /bin/sh ../../libtool --mode=link --tag=CC gcc-3.4 -O3 -o dxl.la -rpath /opt/lib/q -no-undefined -module -avoid-version dxl.lo ../../libq/libq.la -lDXL -lcrypt -lutil -lnsl -lm grep: /usr/lib/libXm.la: No such file or directory /bin/sed: can't read /usr/lib/libXm.la: No such file or directory libtool: link: `/usr/lib/libXm.la' is not a valid libtool archive make[4]: *** [dxl.la] Fehler 1 The libtool tries to build static libraries a (even with --disable-static configure option!). In addition I think the state of q-6.0 on AMD64 (aka x86_64) is dubious at best. Building opendx-4.3.2 (dxl) extension does not work (no surprise): make[4]: Entering directory `/home/pasch/compile/q-6.0/modules/dxl' /bin/sh ../../libtool --mode=link --tag=CC gcc -O3 -fomit-frame-pointer -fprefetch-loop-arrays -funroll-loops -mfpmath=sse -o dxl.la -rpath /opt/lib/q -no-undefined -module-avoid-version dxl.lo ../../libq/libq.la -L/usr/dx/lib_linux -lDXL -lcrypt -lutil -lnsl -lm libtool: link: warning: `//usr/lib/libMagick.la' seems to be moved libtool: link: warning: `//usr/lib/libltdl.la' seems to be moved gcc -shared .libs/dxl.o -Wl,--whole-archive /usr/dx/lib_linux/libDXL.a -Wl,--no-whole-archive -Wl,--rpath -Wl,/home/pasch/compile/q-6.0/libq/.libs -Wl,--rpath -Wl,/opt/lib -L//usr/lib -L/usr/lib -L/usr/lib64 ../../libq/.libs/libq.so -L/usr/dx/lib_linux -lcrypt -lutil -lnsl -lm -mfpmath=sse -Wl,-soname -Wl,dxl.so -o .libs/dxl.so /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/dx/lib_linux/libDXL.a(close.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC /usr/dx/lib_linux/libDXL.a(close.o): could not read symbols: Bad value collect2: ld returned 1 exit status (of course I tried './configure --disable-static'). Building the ImageMagick extension also fails. This is perhaps because I'm using a very recent version (6.1.8.8) on AMD64: if /bin/sh ../../libtool --mode=compile --tag=CC gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../libq -O3 -fomit-frame-pointer -fprefetch-loop-arrays -funroll-loops -mfpmath=sse -MT magick.lo -MD -MP -MF ".deps/magick.Tpo" -c -o magick.lo magick.c; \ then mv -f ".deps/magick.Tpo" ".deps/magick.Plo"; else rm -f ".deps/magick.Tpo"; exit 1; fi gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../libq -O3 -fomit-frame-pointer -fprefetch-loop-arrays -funroll-loops -mfpmath=sse -MT magick.lo -MD -MP -MF .deps/magick.Tpo -c magick.c -fPIC -DPIC -o .libs/magick.o magick.c: In function `__F__magick_magick_colors': magick.c:1154: error: too few arguments to function `GetColorList' make[4]: *** [magick.lo] Error 1 Without this extensions, I managed to build q-6.0. But the build failes with: PATH=.:/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/3.4.3:/opt/blackdown-jdk-1.4.2/bin:/opt/blackdown-jdk-1.4.2/jre/bin:/usr/qt/3/bin:/usr/kde/3.3/bin:/usr/kde/3.2/bin:/usr/kde/3.1/bin:/usr/games/bin QPATH=../stdlib:../modules/clib:../modules/clib q ./qcwrap.q ./qcwrap.q def: error loading module Warning: 248 unresolved external symbols ! Value mismatch in definition Trying to invoke the (partly) build q I got: PATH=.:/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/3.4.3:/opt/blackdown-jdk-1.4.2/bin:/opt/blackdown-jdk-1.4.2/jre/bin:/usr/qt/3/bin:/usr/kde/3.3/bin:/usr/kde/3.2/bin:/usr/kde/3.1/bin:/usr/games/bin QPATH=../stdlib:../modules/clib:../modules/clib q def: error loading module Warning: 248 unresolved external symbols Q interpreter version 6.0 (x86_64-unknown-linux-gnu) Copyright (c) 1991-2004 by Albert Graef This software is distributed under the terms of the GNU General Public License version 2 or later; type `copying' for details. ! Value mismatch in definition Last not least I got the following compiler warnings while building: regex.c: In function `xxre_match_2': regex.c:3765: warning: cast from pointer to integer of different size regex.c:3765: warning: cast from pointer to integer of different size regex.c:3771: warning: cast to pointer from integer of different size regex.c:3771: warning: cast to pointer from integer of different size regex.c:3918: warning: cast to pointer from integer of different size regex.c:3918: warning: cast to pointer from integer of different size regex.c:3971: warning: cast to pointer from integer of different size regex.c:3971: warning: cast to pointer from integer of different size regex.c:4077: warning: cast from pointer to integer of different size regex.c:4077: warning: cast from pointer to integer of different size regex.c:4110: warning: cast to pointer from integer of different size regex.c:4110: warning: cast to pointer from integer of different size regex.c:4123: warning: cast to pointer from integer of different size regex.c:4123: warning: cast to pointer from integer of different size regex.c:4291: warning: cast from pointer to integer of different size regex.c:4291: warning: cast from pointer to integer of different size odbc.c: In function `__F__odbc_sql_exec': odbc.c:610: warning: passing arg 10 of `SQLBindParameter' from incompatible pointer type qmfuns.c: In function `ptr_hash': qmfuns.c:1974: warning: cast from pointer to integer of different size qmfuns.c: In function `ptr_hash': qmfuns.c:1974: warning: cast from pointer to integer of different size libtool: link: warning: `-dlopen self' is ignored for libtool libraries qmfuns.c: In function `ptr_hash': qmfuns.c:1974: warning: cast from pointer to integer of different size libtool: link: warning: `-dlopen self' is ignored for libtool libraries qmfuns.c: In function `ptr_hash': qmfuns.c:1974: warning: cast from pointer to integer of different size q-q.o(.text+0x3d6f): In function `__qq__rerun': : warning: the use of `tmpnam' is dangerous, better use `mkstemp' For me this indicates that the regex and odbc extension will probably not work. Kind regards, Thomas |