[Insight-developers] Re: Integrating WrapITK into ITK CVS
Gaetan Lehmann
gaetan.lehmann at jouy.inra.fr
Wed Nov 8 05:26:37 EST 2006
On Thu, 02 Nov 2006 19:54:52 +0100, Bill Hoffman
<bill.hoffman at kitware.com> wrote:
> Gaetan Lehmann wrote:
>>
>> Here is a new version able to read the .idx files.
>>
>> Do you know how to build all the generated c++ files in a single shared
>> object, as is it currently done ?
>>
> Use cmake:
>
> ADD_LIBRARY(foo MODULE ${generated_source_files})
>
I'm trying to work on that when I can, and things are going better and
better :-)
I still have some problems however:
(1) VXLNumericsPython and BasePython are building, but I still have an
error when linking VXLNumericsPython, about undefined symbols all related
to vnl_matrix_fixed_ref<double, ...>, and nothing about
vnl_matrix_fixed_ref<float, ...> which is also wrapped (see below). Do you
know how to avoid that ?
(2) BasePython builds without problem, but can't be loaded, because the
function init_BasePython is not defined. I see that with cableswig it is
generated in a wrap_BasePythonPython.cxx file. Is it a file I have to
generate by hand, or can it be generated by swig ? I can't find anything
about that in the swig manual :-/
BTW, why have you chosen to build a module which groups several modules,
rather than building each module individually ? It produce smaller
binaries ?
Thanks,
Gaetan
Linking CXX shared module ../../../../bin/_VXLNumericsPython.so
cd /Users/glehmann/src/Insight/build/Wrapping/WrapITK/Modules/VXLNumerics
&& /usr/bin/cmake -P
CMakeFiles/VXLNumericsPython.dir/cmake_clean_target.cmake
cd /Users/glehmann/src/Insight/build/Wrapping/WrapITK/Modules/VXLNumerics
&& /usr/bin/cmake -E cmake_link_script
CMakeFiles/VXLNumericsPython.dir/link.txt --verbose=1
/usr/bin/c++ -ftemplate-depth-50 -no-cpp-precomp -Wno-long-double
-ftemplate-depth-50 -no-cpp-precomp -Wno-long-double -bundle
-headerpad_max_install_names -Wl,-flat_namespace,-U,_environ
-Wl,-flat_namespace,-U,_environ -o
../../../../bin/_VXLNumericsPython.so
"CMakeFiles/VXLNumericsPython.dir/__/__/ClassIndex/wrap_vnl_matrixPython.o"
"CMakeFiles/VXLNumericsPython.dir/__/__/ClassIndex/wrap_vnl_vectorPython.o"
"CMakeFiles/VXLNumericsPython.dir/__/__/ClassIndex/wrap_vcl_complexPython.o"
"CMakeFiles/VXLNumericsPython.dir/__/__/ClassIndex/wrap_vnl_c_vectorPython.o"
"CMakeFiles/VXLNumericsPython.dir/__/__/ClassIndex/wrap_vnl_diag_matrixPython.o"
"CMakeFiles/VXLNumericsPython.dir/__/__/ClassIndex/wrap_vnl_file_matrixPython.o"
"CMakeFiles/VXLNumericsPython.dir/__/__/ClassIndex/wrap_vnl_file_vectorPython.o"
"CMakeFiles/VXLNumericsPython.dir/__/__/ClassIndex/wrap_vnl_fortran_copyPython.o"
"CMakeFiles/VXLNumericsPython.dir/__/__/ClassIndex/wrap_vnl_matrix_fixedPython.o"
"CMakeFiles/VXLNumericsPython.dir/__/__/ClassIndex/wrap_vnl_matrix_fixed_refPython.o"
"CMakeFiles/VXLNumericsPython.dir/__/__/ClassIndex/wrap_vnl_matrix_refPython.o"
"CMakeFiles/VXLNumericsPython.dir/__/__/ClassIndex/wrap_vnl_vector_refPython.o"
-L. -L/Users/glehmann/src/Insight/build/bin -litkvnl -litkvnl_inst
-lpython2.3 -litkvnl_algo -litkv3p_netlib -litkvnl -litkvcl -lm
/usr/bin/ld: Undefined symbols:
vnl_matrix_fixed_ref<double, 2u, 6u>::read_ascii(std::basic_istream<char,
std::char_traits<char> >&) const
vnl_matrix_fixed_ref<double, 2u, 6u>::set_column(unsigned int, double
const*) const
vnl_matrix_fixed_ref<double, 2u, 6u>::set_column(unsigned int,
vnl_vector<double> const&) const
vnl_matrix_fixed_ref<double, 2u, 6u>::set_column(unsigned int, double)
const
vnl_matrix_fixed_ref<double, 2u, 6u>::set_columns(unsigned int,
vnl_matrix<double> const&) const
vnl_matrix_fixed_ref<double, 2u, 6u>::scale_column(unsigned int, double)
const
vnl_matrix_fixed_ref<double, 2u, 6u>::set_identity() const
vnl_matrix_fixed_ref<double, 2u, 6u>::fill_diagonal(double) const
vnl_matrix_fixed_ref<double, 2u, 6u>::normalize_rows() const
vnl_matrix_fixed_ref<double, 2u, 6u>::inplace_transpose() const
vnl_matrix_fixed_ref<double, 2u, 6u>::normalize_columns() const
vnl_matrix_fixed_ref<double, 2u, 6u>::fill(double) const
vnl_matrix_fixed_ref<double, 2u, 6u>::fliplr() const
vnl_matrix_fixed_ref<double, 2u, 6u>::flipud() const
vnl_matrix_fixed_ref<double, 2u, 6u>::update(vnl_matrix<double> const&,
unsigned int, unsigned int) const
vnl_matrix_fixed_ref<double, 2u, 6u>::copy_in(double const*) const
vnl_matrix_fixed_ref<double, 2u, 6u>::set_row(unsigned int, double const*)
const
vnl_matrix_fixed_ref<double, 2u, 6u>::set_row(unsigned int,
vnl_vector<double> const&) const
vnl_matrix_fixed_ref<double, 2u, 6u>::set_row(unsigned int, double) const
vnl_matrix_fixed_ref<double, 2u, 6u>::scale_row(unsigned int, double) const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::get_n_rows(unsigned int,
unsigned int) const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::is_identity(double) const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::is_identity() const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::get_n_columns(unsigned int,
unsigned int) const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::operator_inf_norm() const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::operator_one_norm() const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::conjugate_transpose() const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::assert_size_internal(unsigned
int, unsigned int) const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::assert_finite_internal() const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::print(std::basic_ostream<char,
std::char_traits<char> >&) const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::extract(unsigned int, unsigned
int, unsigned int, unsigned int) const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::is_zero(double) const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::is_zero() const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::copy_out(double*) const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::has_nans() const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::is_finite() const
vnl_matrix_fixed_ref_const<double, 2u, 6u>::transpose() const
collect2: ld returned 1 exit status
make[3]: *** [bin/_VXLNumericsPython.so] Error 1
make[2]: ***
[Wrapping/WrapITK/Modules/VXLNumerics/CMakeFiles/VXLNumericsPython.dir/all]
Error 2
make[1]: ***
[Wrapping/WrapITK/Modules/VXLNumerics/CMakeFiles/VXLNumericsPython.dir/rule]
Error 2
make: *** [VXLNumericsPython] Error 2
--
Gaëtan Lehmann
Biologie du Développement et de la Reproduction
INRA de Jouy-en-Josas (France)
tel: +33 1 34 65 29 66 fax: 01 34 65 29 09
http://voxel.jouy.inra.fr
More information about the Insight-developers
mailing list