[Insight-users] Build with shared libs fails in VNL on Darwin

Gavin Baker gavinb+xtk at cs.mu.OZ.AU
Fri Feb 4 01:36:06 EST 2005


Hello,

I did a test build of ITK from CVS (fresh checkout today) on Darwin
(10.3.7), and got a failure compiling in VNL:

[...]
Building object file Templates/vnl_svd_economy+float-.o...
Building object file Templates/vnl_svd_economy+vcl_complex+double--.o...
Building object file Templates/vnl_svd_economy+vcl_complex+float--.o...
Building shared library /Users/gavinb/Tools/ITK/Insight/Build/bin/libitkvnl_algo.dylib...
ld: Undefined symbols:
std::basic_ostream<char, std::char_traits<char> >& operator<< <double>(std::basic_ostream<char, std::char_traits<char> >&, vnl_matrix<double> const&)
std::basic_ostream<char, std::char_traits<char> >& operator<< <double>(std::basic_ostream<char, std::char_traits<char> >&, vnl_vector<double> const&)
std::basic_ostream<char, std::char_traits<char> >& operator<< <float>(std::basic_ostream<char, std::char_traits<char> >&, vnl_matrix<float> const&)
std::basic_ostream<char, std::char_traits<char> >& operator<< <float>(std::basic_ostream<char, std::char_traits<char> >&, vnl_vector<float> const&)
std::basic_ostream<char, std::char_traits<char> >& operator<< <std::complex<double> >(std::basic_ostream<char, std::char_traits<char> >&, vnl_matrix<std::complex<double> > const&)
std::basic_ostream<char, std::char_traits<char> >& operator<< <std::complex<double> >(std::basic_ostream<char, std::char_traits<char> >&, vnl_vector<std::complex<double> > const&)
std::basic_ostream<char, std::char_traits<char> >& operator<< <std::complex<float> >(std::basic_ostream<char, std::char_traits<char> >&, vnl_matrix<std::complex<float> > const&)
std::basic_ostream<char, std::char_traits<char> >& operator<< <std::complex<float> >(std::basic_ostream<char, std::char_traits<char> >&, vnl_vector<std::complex<float> > const&)
/usr/bin/libtool: internal link edit command failed
make[11]: *** [/Users/gavinb/Tools/ITK/Insight/Build/bin/libitkvnl_algo.dylib] Error 1
make[10]: *** [default_target] Error 2
make[9]: *** [default_target_algo] Error 2
make[8]: *** [default_target] Error 2
make[7]: *** [default_target_vnl] Error 2
make[6]: *** [default_target] Error 2
make[5]: *** [default_target_core] Error 2
make[4]: *** [default_target] Error 2
make[3]: *** [default_target_vxl] Error 2
make[2]: *** [default_target] Error 2
make[1]: *** [default_target_Utilities] Error 2
make: *** [default_target] Error 2


I suspected a problem with building with BUILD_SHARED_LIBS enabled, so
I turned this off and tried again, and it worked.  It would appear
some CMake/libtool voodoo is involved here.  Would it help to send the
generated Makefile?

Thanks -

  :: Gavin

-- 
Gavin Baker                                      Complex Systems Group
http://www.cs.mu.oz.au/~gavinb             The University of Melbourne


More information about the Insight-users mailing list