Re: [CMake] Missing symbols in library after successfull link to a static lib on Linux

Alexander Neundorf a.neundorf-work at gmx.net
Thu Apr 27 12:41:03 EDT 2006


> --- Ursprüngliche Nachricht --- 
> Von: "wedekind" <wedekind at caesar.de> 
> An: <cmake at cmake.org> 
> Betreff: [CMake] Missing symbols in library after successfull link to 
> a	static lib on Linux 
> Datum: Thu, 27 Apr 2006 18:31:54 +0200 
>  
> Hello all, 
>  
> I have encountered a strange problem after creating a shared libary 
with 
> cmake on Linux. I link this library using TARGET_LINK_LIBRARIES to some 
> static libraries of the DCMTK (dicom toolkit). 
>  
> I am using CMake 2.2.3 on SuSE Linux 9.3 and DCMTK 3.5.3. 
>  
> After successfully creating this shared library, I cannot load it, 
since 
> it 
> is missing a symbol defined in one of the static libraries I have 
linked 
> against. I have used the Linux-tool "nm" to check whether the missing 
> symbol 
> is really to be found in one of the static libs I have linked against 
and 
> it 
> is (noted by a "T" left of the symbol). 
>  
> What could be the problem here? Why was the symbol not linked into my 
> shared 
> lib? Do I have to link the static libs to the shared lib in another 
way? 
>  
> Thanks in advance for any hints or suggestions. 
 
I don't know the exact details, but linking static libs to shared libs is 
problematic, you shouldn't do this. 
To have it work you would need special linker flags. 
Can you simply compile the source files of the static lib directly for 
the shared lib ? 
 
Bye 
Alex 
 
 

-- 
GMX Produkte empfehlen und ganz einfach Geld verdienen!
Satte Provisionen für GMX Partner: http://www.gmx.net/de/go/partner


More information about the CMake mailing list