[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-core-devel
Subject:    Re: kimgio.la: file not recognized, and libtool problems (solved)
From:       Michael Matz <matz () ifh ! de>
Date:       2000-04-12 23:23:29
[Download RAW message or body]

Hi,

I know the subject is promising ;) I hope it's solved.

So everyone seeing problems like linking some KDE 1 libs from /usr/lib or
/lib: please remove the relevant *.so files from that dir (also *.la if
they are there). They are only needed for linking, not for running. Do
_not_ delete *.so.* (with additional numbers).

Than there was another problem with libtool including a .la file in g++
link line (libkcm_display and other modules)
error msg was sth. like:
> /opt/kde2dev/lib/libkimgio.la: file not
> recognized: File format not recognized

you should remove all .libs dirs in the builddir. E.g. in the case of
libkcm_display.lo the error is produced, because an old libbgnd.al (a
static libtool lib) is in .libs. So basically make sure, that _all_
binaries (libraries, static and shared, modules, what not) are produced by
the same version of libtool. To be on the safe side you can delete all
files other than Makefile, *.lo and *.o. To be even safer delete all
produced files.

This is simple if you have srcdir!=builddir (from which I'm a great
fan). Otherwise you can try 'make clean' but I don't know if it really
removes all the things in .libs.

Please note, that if you remove the .libs dirs but not the corresponding
proxy libtool scripts (*.la in case of modules and libraries, same name as
app in case of program), .libs doesn't get rebuilt, and you get failures
on install time. Please don't report such failures ;)

Last thing: I have recompiled and installed fresh kdelibs, and also have
recompiled all kdebase, installed it, and ... zippp... works ;) So it
somehow works. Try harder if it doesn't for you ;)

read below.

On Wed, 12 Apr 2000, David Faure wrote:
> Just got the same (after removing the *.la in /usr/lib for my previous
> problem :(
> This is the first module (-module -avoid-version) that is not compiled in
> kdelibs, and libtool does the wrong thing with its arguments.
> 
> /bin/sh ../../libtool --mode=link g++ -O3 -fomit-frame-pointer -pipe
> -mcpu=pentium -march=pentium -fno-exceptions -fno-rtti -fno-check-new
[... cut cut ...]
> ./.libs/libbgnd.al -lc -Wl,-soname -Wl,libkcm_display.so -o
  ^^^^^^^^^^^^^^^^^^

this is the crux.

> .libs/libkcm_display.so
> /opt/kde2dev/lib/libkimgio.la: file not
> recognized: File format not recognized

this is only the symptom.

> This definitely looks like a libtool bug.
> Can we go back to a working libtool ?

We don't need to. At least if all of the above is correct.


Ciao,
Michael.
P.S: yes libtool dependencies are complicated :)
P.S2: Hmm, 34 hours without sleep, I really should go to bed soon ;-)

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic