[Insight-users] migrating to Borland C++ builder 6

Dean Inglis dean . inglis at on . aibn . com
Fri, 9 May 2003 12:38:32 -0400


Hi,

I am upgrading to BCB6 from BCB5.  My build attempt
fails with CMake 1.6.6, MinSizeRel build on Windows 2000.
VTK cvs interstingly enough builds and tests clean. Without
really digging into vcl,vxl,vnl, I naively included headers
when required to keep the build proceeeding:

#include <stdlib.h> for atof in Utilities/metaUtils.cxx
#include <ctype.h>  for isdigit in Utilities/vxl/vnl/vnl_bignum.cxx
#include <stdlib.h>  for atol in Utilities/vxl/vnl/vnl_bignum.cxx
#include <ctype.h> for isspace in Utilities/vxl/vnl/vnl_matrix.txx
#include <stdlib.h> for qsort in Utilities/vxl/vnl/algo/vnl_amoeba.cxx

and in Utilities/vxl/CMakeLists.txt
SET(BUILD_TESTING 0)
SET(BUILD_EXAMPLES 0)
to bypass a fail due to:

Building executable c:\Builder\Releases\itkRelease\bin\vnl_lsqr_test.exe...
Borland C++ 5.6 for Win32 Copyright (c) 1993, 2002 Borland
Turbo Incremental Link 5.60 Copyright (c) 1997-2002 Borland
Error: Unresolved external
'vnl_sparse_matrix_linear_system<double>::multiply(const
vnl_vector<double>&, vnl_vector<double>&) const' referenced from
C:\BUILDER\RELEASES\ITKRELEASE\UTILITIES\VXL\VNL\EXAMPLES\VNL_LSQR_TEST.OBJ
Error: Unresolved external
'vnl_sparse_matrix_linear_system<double>::transpose_multiply(const
vnl_vector<double>&, vnl_vector<double>&) const' referenced from
C:\BUILDER\RELEASES\ITKRELEASE\UTILITIES\VXL\VNL\EXAMPLES\VNL_LSQR_TEST.OBJ
Error: Unresolved external
'vnl_sparse_matrix_linear_system<double>::get_rhs(vnl_vector<double>&)
const' referenced from
C:\BUILDER\RELEASES\ITKRELEASE\UTILITIES\VXL\VNL\EXAMPLES\VNL_LSQR_TEST.OBJ

then ...

#include <math.h> for pow in
Code/Numerics/itkOnePlusOneEvolutionaryOptimizer.cxx
#include <math.h> for sqrt in Code/Common/itkitkVersor.txx
#include <math.h> for sqrt in
Code/Numerics/Statistics/itkNormalVariateGenerator.cxx

and the build finally fails in Code/Numerics/FEM:

Building object file itkFEMElementBase.obj...
Borland C++ 5.6 for Win32 Copyright (c) 1993, 2002 Borland
c:\Builder\Sources\Insight\Code\Numerics\FEM\itkFEMElementBase.cxx:
Error E2091
c:\Builder\Sources\Insight\Code\Numerics\FEM\itkFEMObjectFactory.h 73:
Functions cannot return arrays or functions
Error E2089
c:\Builder\Sources\Insight\Code\Numerics\FEM\itkFEMObjectFactory.h 73:
Identifier 'Pointer' cannot have a type qualifier
Error E2451
c:\Builder\Sources\Insight\Code\Numerics\FEM\itkFEMObjectFactory.h 83:
Undefined symbol 'COF'
Error E2293
c:\Builder\Sources\Insight\Code\Numerics\FEM\itkFEMObjectFactory.h 100: )
expected
Error E2451
c:\Builder\Sources\Insight\Code\Numerics\FEM\itkFEMElementBase.cxx 535:
Undefined symbol 'Register' in function Element::Node::CLID()
*** 5 errors in Compile ***

Can someone with the expertise assist in getting BCB6 up and running?


Dean


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dean Inglis, Ph.D.
-      Centre for Appendicular       -
- Magnetic Resonance Imaging Studies -
25 Charlton Avenue East, Unit 610
Hamilton, Ontario, L8N 1Y2
Canada
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~