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

Zachary Pincus zpincus at stanford.edu
Fri, 6 Feb 2004 13:05:00 -0800


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
------------------------------------------