Link error building parallel CGM with OCC
Has anyone encountered a problem building a parallel version of CGM with OCC (the patched version)? This is built on the new Ubuntu 10 release installed on the ANL compute servers (thrash specifically). It is using MPI compiled with GCC 4.4.3. The issue comes during make check. It first appears in the src/itaps directory when building chaman. But it occurs in all 3 link steps taken in that directory. The log lines for the compile and link are below. make[3]: Entering directory `/nfs/fathom/libs/cgm/cgm-4.0.1/parallel/ src/itaps' make chaman testgeom_occ partest make[4]: Entering directory `/nfs/fathom/libs/cgm/cgm-4.0.1/parallel/ src/itaps' /home/fathom/3rdparty/mpich2/mpich2-1.2.1/gcc/bin/mpicxx - DHAVE_CONFIG_H -I. -I.. -I../geom/parallel - DLITTLE_ENDIAN=BYTE_ORDER -DTEMPLATE_DEFS_INCLUDED -DHAVE_OCC - DHAVE_OCC_IGES -DHAVE_OCC_STEP -DHAVE_OCC_STL -DSRCDIR=. -I../util - I../geom -I../init -I../geom/parallel -DUSE_MPI -Wall -pipe - pedantic -O2 -DNDEBUG -MT chaman.o -MD -MP -MF .deps/chaman.Tpo -c -o chaman.o chaman.cc mv -f .deps/chaman.Tpo .deps/chaman.Po /bin/sh ../libtool --tag=CXX --mode=link /home/fathom/3rdparty/ mpich2/mpich2-1.2.1/gcc/bin/mpicxx -Wall -pipe -pedantic -O2 - DNDEBUG -L/home/fathom/3rdparty/occ/OpenCASCADE6.3.0/gcc/lib -o chaman chaman.o libiGeom.la -lm libtool: link: /home/fathom/3rdparty/mpich2/mpich2-1.2.1/gcc/bin/ mpicxx -Wall -pipe -pedantic -O2 -DNDEBUG -o .libs/chaman chaman.o -L/ home/fathom/3rdparty/occ/OpenCASCADE6.3.0/gcc/lib ./.libs/libiGeom.so - lm -Wl,-rpath -Wl,/home/fathom/libs/cgm/cgm-4.0.1/parallel/gcc_optocc/ lib ./.libs/libiGeom.so: undefined reference to `CGMReadParallel::CGMReadParallel(GeometryQueryTool*, CGMParallelComm*)' ./.libs/libiGeom.so: undefined reference to `CGMReadParallel::load_file(char const*, char const*, char const*, int const*, int)' collect2: ld returned 1 exit status make[4]: *** [chaman] Error 1 I've looked at .libs/libiGeom.so. It does have undefined references to the above routines. But it also has a dependency on the libcgm.so.0 shared library that exists in the main CGM source directory (in .libs). And that shared library has definitions for the routines. --Bob
participants (1)
-
Robert Smith