I have just upgraded my Ada compiler (GNAT GPL 2009) because the one I have been using has a small bug. The old version was 32 bits and the new version is 64 bits. I'm on OS X 10.5.8 (Leopard).
Bad idea. I've changed the paths in my build script (below) to accommodate the new compiler. cmake sees it. The build goes OK until it hits a linking problem. Here is the problem encountered when linking to a qt library. FWIW, my Qt installation is the OS binary from http://qt.nokia.com/downloads/mac-os-cpp/ . Linking CXX shared module qt.so cd /usr/local/plplot_build_dir/drivers && "/Applications/Programming/ CMake 2.6-2.app/Contents/bin/cmake" -E cmake_link_script CMakeFiles/ qt.dir/link.txt --verbose=1 /usr/bin/c++ -bundle -headerpad_max_install_names -o qt.so CMakeFiles/qt.dir/qt.cpp.o CMakeFiles/qt.dir/__/bindings/qt_gui/ plqt.cpp.o ../src/libplplotd.9.7.0.dylib /usr/lib/libm.dylib - framework QtSvg -framework QtGui -framework Carbon -framework AppKit - framework QtXml -framework QtCore /usr/lib/libz.dylib -framework ApplicationServices /usr/lib/libltdl.dylib /usr/lib/libdl.dylib ../lib/ csa/libcsirocsa.0.0.1.dylib ../lib/qsastime/libqsastime.0.0.1.dylib / usr/lib/libm.dylib ld: warning in ../src/libplplotd.9.7.0.dylib, file is not of required architecture ld: warning in ../lib/csa/libcsirocsa.0.0.1.dylib, file is not of required architecture ld: warning in ../lib/qsastime/libqsastime.0.0.1.dylib, file is not of required architecture Undefined symbols: "_plgesc", referenced from: QtPLDriver::getTextPicture(unsigned int, unsigned int*, int, double)in plqt.cpp.o "_plOpenFile", referenced from: plD_init_rasterqt(PLStream*) in qt.cpp.o plD_init_svgqt(PLStream*) in qt.cpp.o plD_init_epspdfqt(PLStream*) in qt.cpp.o "_plP_setphy", referenced from: plD_init_rasterqt(PLStream*) in qt.cpp.o plD_init_svgqt(PLStream*) in qt.cpp.o plD_init_epspdfqt(PLStream*) in qt.cpp.o plD_init_qtwidget(PLStream*) in qt.cpp.o plD_init_extqt(PLStream*) in qt.cpp.o "_plGetFam", referenced from: plD_bop_bmpqt(PLStream*) in qt.cpp.o plD_bop_jpgqt(PLStream*) in qt.cpp.o plD_bop_pngqt(PLStream*) in qt.cpp.o plD_bop_ppmqt(PLStream*) in qt.cpp.o plD_bop_tiffqt(PLStream*) in qt.cpp.o plD_bop_svgqt(PLStream*) in qt.cpp.o plD_bop_epspdfqt_helper(PLStream*, int) in qt.cpp.o "_plP_setpxl", referenced from: plD_init_rasterqt(PLStream*) in qt.cpp.o plD_init_svgqt(PLStream*) in qt.cpp.o plD_init_epspdfqt(PLStream*) in qt.cpp.o plD_init_qtwidget(PLStream*) in qt.cpp.o plD_init_extqt(PLStream*) in qt.cpp.o "_plP_fci2hex", referenced from: QtPLDriver::getFont(unsigned int)in plqt.cpp.o QtPLDriver::getFont(unsigned int)in plqt.cpp.o QtPLDriver::getFont(unsigned int)in plqt.cpp.o "_plwarn", referenced from: qt_family_check(PLStream*) in qt.cpp.o "_c_plparseopts", referenced from: plsetqtdev(QtExtWidget*, int, char**)in plqt.cpp.o "_c_plcalc_world", referenced from: QtExtWidget::mouseMoveEvent(QMouseEvent*) in plqt.cpp.o QtExtWidget::mouseReleaseEvent(QMouseEvent*) in plqt.cpp.o "_plFamInit", referenced from: plD_init_rasterqt(PLStream*) in qt.cpp.o plD_init_svgqt(PLStream*) in qt.cpp.o plD_init_epspdfqt(PLStream*) in qt.cpp.o "_plParseDrvOpts", referenced from: plD_init_rasterqt(PLStream*) in qt.cpp.o plD_init_svgqt(PLStream*) in qt.cpp.o plD_init_epspdfqt(PLStream*) in qt.cpp.o plD_init_qtwidget(PLStream*) in qt.cpp.o "_c_plgfci", referenced from: QtPLDriver::drawText(PLStream*, EscText*) in plqt.cpp.o QtPLWidget::drawText(PLStream*, EscText*) in plqt.cpp.o "_plsc", referenced from: _plsc$non_lazy_ptr in qt.cpp.o _plsc$non_lazy_ptr in plqt.cpp.o "_plRotationShear", referenced from: QtPLDriver::drawText(PLStream*, EscText*) in plqt.cpp.o QtPLWidget::drawText(PLStream*, EscText*) in plqt.cpp.o ld: symbol(s) not found collect2: ld returned 1 exit status make[2]: *** [drivers/qt.so] Error 1 make[1]: *** [drivers/CMakeFiles/qt.dir/all] Error 2 make: *** [all] Error 2 Here is the build script: #!/bin/bash # Set environment so that cmake can find the Ada compiler, BLAS, and LAPACK. # Following used for OS X 10.5 with MacAda 32-bit compiler. #CMAKE_LIBRARY_PATH=/usr/local/ada-4.3/lib/gcc/i686-apple- darwin9/4.3.0/adalib:\ #/usr/lib/libblas.dylib:\ #/usr/lib/liblapack.dylib:\ #/usr/lib/libtcl.dylib:\ #/usr/lib/libtk.dylib # Following used for OS X 10.5 with GNAT GPL 2009 64-bit installed April 13, 2010. CMAKE_LIBRARY_PATH=/usr/local/ada-4.3/lib/gcc/x86_64-apple- darwin9.6.0/4.3.4/adalib:\ /usr/lib/libblas.dylib:\ /usr/lib/liblapack.dylib:\ /usr/lib/libtcl.dylib:\ /usr/lib/libtk.dylib export CMAKE_LIBRARY_PATH # cd to the build directory. cd /usr/local/plplot_build_dir # Clean the build directory. echo "Deleting most recent build and installation." sudo rm -rf /usr/local/plplot_build_dir/* # Delete the installation directory. sudo rm -rf /usr/local/plplot echo "Running cmake." # Run cmake. cmake \ -DCMAKE_INSTALL_PREFIX=/usr/local/plplot \ -DCMAKE_VERBOSE_MAKEFILE=ON \ -DBUILD_TEST=ON \ -DDEFAULT_NO_BINDINGS=ON \ -DENABLE_ada=ON \ -DENABLE_java=OFF \ -DENABLE_tcl=OFF \ -DENABLE_tk=OFF \ -DENABLE_wxwidgets=OFF \ -DPLD_aqt=OFF \ -DPLD_wxwidgets=OFF \ -DENABLE_qt=ON\ -DHAVE_ADA_2007=OFF \ -DBUILD_TEST=ON \ -DBUILD_DOC=ON \ /Users/jb/Documents/Programs/Ada/Code/Bindings/PLplot/plplot_svn/ plplot >& cmake.out less cmake.out echo "Running make." make echo "Running make install as root." sudo make install echo "Finished installing PLplot." # Run ctest which builds the examples and runs them. See file called run_ctest.sh. echo "Running ctest to test examples." cd /usr/local/plplot_build_dir export DYLD_LIBRARY_PATH=/usr/local/plplot_build_dir/bindings/ada:\ #/usr/local/ada-4.3/lib/gcc/i686-apple-darwin9/4.3.0/adalib # 32-bit GNAT from MacAda.org /usr/local/ada-4.3/lib/gcc/x86_64-apple-darwin9.6.0/4.3.4/adalib # 64- bit GNAT GPL 2009 from AdaCore ctest --verbose --tests-regex ada echo "Finished building and installing PLplot from SVN." exit 0 ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel