[Insight-users] compile problem: vnl object files not linked in!

Luis Ibanez luis.ibanez at kitware.com
Fri, 06 Feb 2004 16:20:00 -0500


Hi Zach

Can you please post your CMakeCache.txt
file to the list ?

Note that with "nm" you can demangle C++
names by using the option "-C" or its
equivalent "--demangle".

Before building with shared libraries and
wrapping ON, did you performed a build
without wrapping in this same binary directory ?

if yes, did you used static libraries in this
occasion ?

Please let us know,


    Thanks


      Luis


---------------------
Zachary Pincus wrote:

> Hello,
> 
> I'm trying to compile ITK on Mac OS X 10.3.2, with python wrapping  
> support.
> 
> ITK compiles fail on me at the build step of linking the libitkvnl_inst  
> library, because it cannot find a lot of the vnl symbols. (Example  
> error output at end of message.)
> 
> Strangely, when I run nm to show the symbol tables of some of the vnl  
> object files (e.g. vnl_math.o) produced by the build, these missing  
> symbols are clearly in the files. (Well, not totally clearly, thanks  
> the c++ name mangling, which I am not an expert in.)
> 
> So it looks like the linker isn't being given the path of all of these  
> vnl object files when it is trying to link libitkvnl_inst.
> 
> The only non-standard thing I'm doing with the build is adding python  
> wrapping, which requires building shared dynamic libraries.
> 
> Any suggestions on getting ITK to link properly would be most  appreciated.
> 
> Thank you,
> 
> Zach Pincus
> 
> Department of Biochemistry and Program in Biomedical Informatics
> Stanford University School of Medicine
> 
> 
> Here is a sample of the errors showing each of the files not found.
> Ellipses indicate that there were other missing symbols from the above  
> type.
> ------------------------------------------------------------------------ 
> ---
> ld: Undefined symbols:
> vnl_math_isnan(double)
> ...
> void vnl_c_vector_inf_norm<double, double>(double const*, unsigned,  
> double*)
> ...
> vnl_error_matrix_col_index(char const*, int)
> ...
> vnl_matrix<double>::vnl_matrix[in-charge](double const*, unsigned,  
> unsigned)
> ...
> vnl_vector<double>::vnl_vector[in-charge](unsigned)
> ...
> vnl_c_vector<double>::allocate_Tptr(int)
> ...
> vnl_matrix_fixed<double, (unsigned)4, (unsigned)3>::add(double const*,  
> double const*, double*)
> ...
> void vnl_c_vector_inf_norm<unsigned char, unsigned char>(unsigned char  
> const*, unsigned, unsigned char*)
> ...
> vnl_c_vector<unsigned char>::allocate_T(int)
> ...
> /usr/bin/libtool: internal link edit command failed
> ------------------------------------------
> 
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users
>