Linking problems
Andy Goossens
andygoossens at pandora.be
Fri Jun 27 15:18:29 CEST 2003
Before I continue my struggle compiling a KDE app, some other remarks:
1) http://kde-cygwin.sourceforge.net/kde3/ mentions "the first KDE 3.3.1
release". Make that KDE 3.1.1 :-p
2) The new KDE-Devel packages are causing a bug in the Cygwin installer.
Everytime the Cygwin setup.exe 'wizard' is completed, the names of the
KDE-Devel autoconf and automake packages gets longer. It seems like the
package name is appended with its own version number on each run of the
Cygwin setup.
Okay, that was bad wording ;-) It becomes clearer when I paste a piece of my
/etc/setup/installed.db file:
autoconf-2.52 autoconf-2.52-2.52-2.52-2.52-2.52-5.tar.bz2 0
autoconf-devel-2.52 autoconf-devel-2.52-2.52-2.52-2.52-2.52-4.tar.bz2 0
automake-1.5 automake-1.5-1.5-1.5-1.5-1.5b-1.tar.bz2 0
automake-devel-1.5 automake-devel-1.5-1.5-1.5-1.5-1.5-5.tar.bz2 0
Only automake and autoconf packages are affected.
On Thursday 26 June 2003 09:14, ralf.habacker at freenet.de wrote:
> It seems that the setup compiler is not able to deal with symbolic links.
>
> A workaround is to use the following sh script, which recreates the
> necessary links. Enter /opt/kde3/bin before running it.
>
> for i in `ls *.dll`; do cd ../lib; j=`echo $i | sed
> "s,-[0-9.-]*dll,.dll,g;s,cyg,lib,g"`; ln -fs ../bin/$i $j.a; cd ../bin ;
> done
Another great trick :-) Thanks...
But now, I'm facing another error at link time. Those auto-imports seem
harmless, but "undefined reference" doesn't sound good. ;-)
Info: resolving QString::null by linking to __imp___7QString$null
(auto-import)
...snip...
Info: resolving KApplication::KApp by linking to
__imp___12KApplication$KApp (auto-import)
Info: resolving _static_QUType_int by linking
to/usr/lib/gcc-lib/i686-pc-cygwin/2.95.3-10/libgcc.a(_pure.o)(.text+0x2f):
undefined reference to `write'
/usr/lib/gcc-lib/i686-pc-cygwin/2.95.3-10/libgcc.a(_eh.o)(.text+0x7):
undefined reference to `abort'
/usr/lib/gcc-lib/i686-pc-cygwin/2.95.3-10/libgcc.a(_eh.o)(.text+0xaa):
undefined reference to `TlsSetValue at 8'
...snip...
/usr/lib/gcc-lib/i686-pc-cygwin/2.95.3-10/libgcc.a(frame.o)(.text+0xb9b):
undefined reference to `ReleaseMutex at 4'
/usr/lib/gcc-lib/i686-pc-cygwin/2.95.3-10/libgcc.a(frame.o)(.text+0xba3):
undefined reference to `abort'
__imp__static_QUType_int (auto-import)
Info: resolving _static_QUType_varptr by linking to
__imp__static_QUType_varptr (auto-import)
collect2: ld returned 1 exit status
I installed automake, autoconf, binutils-patch from the KDE-Devel category.
But according to the FAQ on the website
(http://kde-cygwin.sourceforge.net/faq/compiling.php), I need an updated
binutils package (which is installed, as I assume it's inside binutils-patch)
and the libtool version from the download area. So I'm guessing my problem
may be caused by using the original Cygwin libtool.
Now, do I need to use an updated libtool? Looking at the download area, do I
need the one listed below the "kde-2.2.1-alpha" section? I had a few tries
but I couldn't get it to work properly. And how do I integrate libtool into
the KDE build system?
--
// Andy Goossens
// Quote of the moment:
Beware of computerized fortune-tellers!
More information about the kde-cygwin
mailing list