View Issue Details

IDProjectCategoryView StatusLast Update
0000055FreeCADBugpublic2010-01-01 09:07
Reporterunauthenticated Assigned Towmayer  
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionno change required 
Product Version 
Target VersionFixed in Version 
Summary0000055: just click new and it will crash
DescriptionGUI opens. When I try to start a new project it crashes
Additional Informationgdb FreeCAD
GNU gdb 6.8
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-suse-linux"...
(gdb) bt
No stack.
(gdb) run
Starting program: /usr/bin/FreeCAD
[Thread debugging using libthread_db enabled]
warning: Lowest section in /usr/lib64/libicudata.so.38 is .hash at 0000000000000158
[New Thread 0x7f994f831710 (LWP 5448)]
FreeCAD 0.7, Libs: 0.7R2008
(c) Juergen Riegel, Werner Mayer 2001-2009
  ##### #### ### ####
  # # # # # #
  # ## #### #### # # # # #
  #### # # # # # # # ##### # #
  # # #### #### # # # # #
  # # # # # # # # # ## ## ##
  # # #### #### ### # # #### ## ## ##

   Parameter not existing, write initial one
   This warning normally means that FreeCAD is running the first time
   or the configuration was deleted or moved. Build up the standard
   configuration.
   User settings not existing, write initial one
   This warning normally means that FreeCAD is running the first time
   or your configuration was deleted or moved. The system defaults
   will be reestablished for you.
[New Thread 0x417dd950 (LWP 5458)]
Coin error in SoGroup::insertChild(): idx 2 is out of bounds (groupnode # children == 0)
FreeCAD: SoGroup.cpp:259: virtual SoNode* SoGroup::getChild(int) const: Assertion `(index >= 0) && (index < this->getNumChildren())' failed.

Program received signal SIGABRT, Aborted.
[Switching to Thread 0x7f994f831710 (LWP 5448)]
0x00007f99470f65c5 in raise () from /lib64/libc.so.6
(gdb) bt
#0 0x00007f99470f65c5 in raise () from /lib64/libc.so.6
#1 0x00007f99470f7bb3 in abort () from /lib64/libc.so.6
0000002 0x00007f99470ef1e9 in __assert_fail () from /lib64/libc.so.6
0000003 0x00007f994ab5e6f3 in SoGroup::getChild () from /usr/lib64/libCoin.so.40
0000004 0x00007f994eca4f0f in SoQtViewer::setSceneGraph () from /usr/lib64/libSoQt.so.20
0000005 0x00007f994f42ffca in View3DInventorViewer (this=0xc9ad70, parent=<value optimized out>, name=<value optimized out>, embed=<value optimized out>,
    type=<value optimized out>, build=<value optimized out>) at View3DInventorViewer.cpp:304
0000006 0x00007f994f4253b7 in View3DInventor (this=0xb2e2b0, pcDocument=<value optimized out>, parent=<value optimized out>, wflags=<value optimized out>)
    at View3DInventor.cpp:86
0000007 0x00007f994f375de5 in Gui::Document::createView (this=0xb2ed70, sType=<value optimized out>) at Document.cpp:667
0000008 0x00007f994f2de545 in Gui::Application::slotNewDocument (this=0x7fff57a14090, Doc=@0xc83f20) at Application.cpp:363
0000009 0x00007f994930489f in boost::signal1<void, App::Document&, boost::last_value<void>, int, std::less<int>, boost::function<void ()(App::Document&), std::allocator<void> > >::operator() (this=<value optimized out>, a1=@0xc83f20) at /usr/include/boost/function/function_template.hpp:825
0000010 0x00007f99492f770b in App::Application::newDocument (this=0x6604f0, Name=<value optimized out>, UserName=0x0) at Application.cpp:253
0000011 0x00007f9949305811 in App::Application::sNewDocument (args=<value optimized out>) at ApplicationPy.cpp:145
0000012 0x00007f994825a7cd in PyEval_EvalFrameEx () from /usr/lib64/libpython2.5.so.1.0
0000013 0x00007f994825bc4d in PyEval_EvalCodeEx () from /usr/lib64/libpython2.5.so.1.0
0000014 0x00007f994825be42 in PyEval_EvalCode () from /usr/lib64/libpython2.5.so.1.0
0000015 0x00007f99482767a1 in ?? () from /usr/lib64/libpython2.5.so.1.0
0000016 0x00007f994827699c in PyRun_StringFlags () from /usr/lib64/libpython2.5.so.1.0
0000017 0x00007f9948bd5fb4 in Base::InterpreterSingleton::runString (this=<value optimized out>, sCmd=0xb44a90 "App.newDocument()") at Interpreter.cpp:116
0000018 0x00007f994f2f9da6 in Gui::Command::doCommand (eType=Gui::Command::Doc, sCmd=0x7f994f4dc3a1 "App.newDocument()") at Command.cpp:370
0000019 0x00007f994f2f86ad in Gui::Command::invoke (this=0x755dd0, i=0) at Command.cpp:244
0000020 0x00007f994f2d17e8 in Gui::Action::qt_metacall (this=0x7ce020, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fff57a11880) at moc_Action.cpp:66
0000021 0x00007f994baa62f2 in QMetaObject::activate () from /usr/lib64/libQtCore.so.4
0000022 0x00007f994d345a77 in QAction::triggered () from /usr/lib64/libQtGui.so.4
0000023 0x00007f994d346ef0 in QAction::activate () from /usr/lib64/libQtGui.so.4
0000024 0x00007f994d731c3d in ?? () from /usr/lib64/libQtGui.so.4
0000025 0x00007f994d737c0f in ?? () from /usr/lib64/libQtGui.so.4
0000026 0x00007f994d39cd7f in QWidget::event () from /usr/lib64/libQtGui.so.4
0000027 0x00007f994d73a49b in QMenu::event () from /usr/lib64/libQtGui.so.4
0000028 0x00007f994d34ba9d in QApplicationPrivate::notify_helper () from /usr/lib64/libQtGui.so.4
0000029 0x00007f994d35447a in QApplication::notify () from /usr/lib64/libQtGui.so.4
0000030 0x00007f994ba914fc in QCoreApplication::notifyInternal () from /usr/lib64/libQtCore.so.4
0000031 0x00007f994d3536c8 in QApplicationPrivate::sendMouseEvent () from /usr/lib64/libQtGui.so.4
---Type <return> to continue, or q <return> to quit---
0000032 0x00007f994d3bd9a4 in ?? () from /usr/lib64/libQtGui.so.4
0000033 0x00007f994d3bc855 in QApplication::x11ProcessEvent () from /usr/lib64/libQtGui.so.4
0000034 0x00007f994d3e3ccc in ?? () from /usr/lib64/libQtGui.so.4
0000035 0x00007f9946c3595a in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
0000036 0x00007f9946c39060 in ?? () from /usr/lib64/libglib-2.0.so.0
0000037 0x00007f9946c391fc in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
0000038 0x00007f994baba9df in QEventDispatcherGlib::processEvents () from /usr/lib64/libQtCore.so.4
#39 0x00007f994d3e341f in ?? () from /usr/lib64/libQtGui.so.4
#40 0x00007f994ba8fd72 in QEventLoop::processEvents () from /usr/lib64/libQtCore.so.4
0000041 0x00007f994ba90144 in QEventLoop::exec () from /usr/lib64/libQtCore.so.4
0000042 0x00007f994ba92454 in QCoreApplication::exec () from /usr/lib64/libQtCore.so.4
0000043 0x00007f994f2e2342 in Gui::Application::runApplication () at Application.cpp:1158
0000044 0x0000000000402d5a in main (argc=1, argv=<value optimized out>) at MainGui.cpp:146
TagsNo tags attached.
FreeCAD Information

Activities

unauthenticated

2009-12-13 00:04

viewer   ~0000060

Last edited: 2010-01-10 15:58

submitted by dharter

Jriegel

2009-12-13 07:16

administrator   ~0000061

That kind of crash means usually you OpenGL subsystem is not working
properly.
Please check with other OpenGL systems like e.g. Blender.

wmayer

2009-12-14 09:06

administrator   ~0000066

No, this is an issue with Coin3D. For any reason a child is tried to access in an SoGroup node by an index which is out of bounds.

Version 0.7 R2008 is quite old now. If possible try to get/build the 0.9 version, if possible. Maybe that was a bug which is already fixed.

BTW, did you the binaries on your own or did you get them from your Linux distro? For the latter case do you know whether it was built with Coin2.x or Coih3.x?

unauthenticated

2009-12-21 23:51

viewer   ~0000081

These were all from various SUSE binary repositories. I remember having to search for some obscure required packages.
libCoin40-2.5.0-16.1
Coin-3.1.1-1.pm.3.1
libCoin60-3.1.1-1.pm.3.1
FreeCAD-0.7.2008-1.pm.5
 Here are the required packages:
Distribution: openSUSE 11.0 (x86_64)
/bin/sh
/bin/sh
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
libCoin.so.40()(64bit)
libComplete.so.2()(64bit)
libCompleteGui.so.2()(64bit)
libDrawing.so.2()(64bit)
libDrawingGui.so.2()(64bit)
libFreeCADApp.so.2()(64bit)
libFreeCADBase.so.2()(64bit)
libFreeCADGui.so.2()(64bit)
libGL.so.1()(64bit)
libGLU.so.1()(64bit)
libICE.so.6()(64bit)
libImage.so.2()(64bit)
libImageGui.so.2()(64bit)
libMesh.so.2()(64bit)
libMeshGui.so.2()(64bit)
libMeshPart.so.2()(64bit)
libMeshPartGui.so.2()(64bit)
libPart.so.2()(64bit)
libPartDesign.so.2()(64bit)
libPartDesignGui.so.2()(64bit)
libPartGui.so.2()(64bit)
libPoints.so.2()(64bit)
libPointsGui.so.2()(64bit)
libQt3Support.so.4()(64bit)
libQtCore.so.4()(64bit)
libQtGui.so.4()(64bit)
libQtNetwork.so.4()(64bit)
libQtOpenGL.so.4()(64bit)
libQtSql.so.4()(64bit)
libQtSvg.so.4()(64bit)
libQtUnitGui.so.2()(64bit)
libQtXml.so.4()(64bit)
libRaytracing.so.2()(64bit)
libRaytracingGui.so.2()(64bit)
libReverseEngineering.so.2()(64bit)
libReverseEngineeringGui.so.2()(64bit)
libSM.so.6()(64bit)
libSketcher.so.2()(64bit)
libSketcherGui.so.2()(64bit)
libSoQt.so.20()(64bit)
libTKBO-6.3.0.so()(64bit)
libTKBRep-6.3.0.so()(64bit)
libTKBool-6.3.0.so()(64bit)
libTKFillet-6.3.0.so()(64bit)
libTKG2d-6.3.0.so()(64bit)
libTKG3d-6.3.0.so()(64bit)
libTKGeomAlgo-6.3.0.so()(64bit)
libTKGeomBase-6.3.0.so()(64bit)
libTKHLR-6.3.0.so()(64bit)
libTKIGES-6.3.0.so()(64bit)
libTKMath-6.3.0.so()(64bit)
libTKMesh-6.3.0.so()(64bit)
libTKOffset-6.3.0.so()(64bit)
libTKPrim-6.3.0.so()(64bit)
libTKSTEP-6.3.0.so()(64bit)
libTKSTL-6.3.0.so()(64bit)
libTKShHealing-6.3.0.so()(64bit)
libTKTopAlgo-6.3.0.so()(64bit)
libTKXSBase-6.3.0.so()(64bit)
libTKernel-6.3.0.so()(64bit)
libX11.so.6()(64bit)
libXau.so.6()(64bit)
libXcursor.so.1()(64bit)
libXext.so.6()(64bit)
libXfixes.so.3()(64bit)
libXi.so.6()(64bit)
libXinerama.so.1()(64bit)
libXmu.so.6()(64bit)
libXrandr.so.2()(64bit)
libXrender.so.1()(64bit)
libXt.so.6()(64bit)
lib_TEMPLATE_.so.2()(64bit)
lib_TEMPLATE_Gui.so.2()(64bit)
libboost_filesystem.so()(64bit)
libboost_program_options.so()(64bit)
libboost_regex.so()(64bit)
libboost_signals.so()(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libcv.so.1()(64bit)
libcxcore.so.1()(64bit)
libdl.so.2()(64bit)
libdl.so.2(GLIBC_2.2.5)(64bit)
libfontconfig.so.1()(64bit)
libfreetype.so.6()(64bit)
libgcc_s.so.1()(64bit)
libgcc_s.so.1(GCC_3.0)(64bit)
libglib-1.2.so.0()(64bit)
libgts-0.7.so.5()(64bit)
libhighgui.so.1()(64bit)
libm.so.6()(64bit)
libm.so.6(GLIBC_2.2.5)(64bit)
libpng12.so.0()(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libpython2.5.so.1.0()(64bit)
librt.so.1()(64bit)
libstdc++.so.6()(64bit)
libstdc++.so.6(CXXABI_1.3)(64bit)
libstdc++.so.6(CXXABI_1.3.1)(64bit)
libstdc++.so.6(GLIBCXX_3.4)(64bit)
libstdc++.so.6(GLIBCXX_3.4.9)(64bit)
libxcb-xlib.so.0()(64bit)
libxcb.so.1()(64bit)
libxerces-c.so.28()(64bit)
libz.so.1()(64bit)
rpmlib(PayloadIsLzma) <= 4.4.2-1

dharter

2009-12-22 00:00

reporter   ~0000082

Name : FreeCAD Relocations: (not relocatable)
Version : 0.7.2008 Vendor: http://packman.links2linux.de
Release : 1.pm.5 Build Date: Sun 26 Apr 2009 06:40:00 PM CDT
Install Date: Fri 11 Dec 2009 10:09:15 PM CST Build Host: pmbs
Group : Productivity/Graphics/3D Editors Source RPM: FreeCAD-0.7.2008-1.pm.5.src.rpm
Size : 139640549 License: GPL LGPL
Signature : DSA/SHA1, Sun 26 Apr 2009 07:08:34 PM CDT, Key ID f899f20d9a795806
Packager : Andrea Florio <andrea@links2linux.de>
URL : http://juergen-riegel.net/FreeCAD/Docu/index.php?title=Main_Page
Summary : FreeCAD is a general purpose 3D CAD modeler

wmayer

2009-12-22 09:35

administrator   ~0000084

Installing libCoin40-2.5.0-16.1 together with libCoin60-3.1.1-1.pm.3.1 is already an indication for some problems. For me it seems that in FreeCAD you have a mixed dependency on the Coin2.x and Coin3.x libs. If so, the behaviour is undefined. What does "ldd libFreeCADGui.so" say? If you find something like libCoin.so.40 and libCoin.so.60 then this is definitely the case. To solve that issue you must find out which Coin version SoQt depends on then uninstall the other package.

After that rebuild FreeCAD from scratch. In case you have installed FreeCAD as ready binaries submit a bug report to the maintainer for openSuse.

dharter

2009-12-22 10:21

reporter   ~0000085

Both libCoins are in here:
ldd /opt/FreeCAD/lib64/libFreeCADGui.so.2.0.0
        linux-vdso.so.1 => (0x00007fffb87fe000)
        libQtCore.so.4 => /usr/lib64/libQtCore.so.4 (0x00007fafafbbf000)
        libQtNetwork.so.4 => /usr/lib64/libQtNetwork.so.4 (0x00007fafaf89e000)
        libQtSvg.so.4 => /usr/lib64/libQtSvg.so.4 (0x00007fafaf645000)
        libQtXml.so.4 => /usr/lib64/libQtXml.so.4 (0x00007fafaf3fe000)
        libXt.so.6 => /usr/lib64/libXt.so.6 (0x00007fafaf197000)
        libSoQt.so.20 => /usr/lib64/libSoQt.so.20 (0x00007fafaeebe000)
        libQtOpenGL.so.4 => /usr/lib64/libQtOpenGL.so.4 (0x00007fafaec2d000)
        libQtGui.so.4 => /usr/lib64/libQtGui.so.4 (0x00007fafae074000)
        libQt3Support.so.4 => /usr/lib64/libQt3Support.so.4 (0x00007fafadb62000)
        libXmu.so.6 => /usr/lib64/libXmu.so.6 (0x00007fafad948000)
        libXi.so.6 => /usr/lib64/libXi.so.6 (0x00007fafad73d000)
        libCoin.so.40 => /usr/lib64/libCoin.so.40 (0x00007fafacdb3000)
        libGL.so.1 => /usr/X11R6/lib64/libGL.so.1 (0x00007fafacc22000)
        libXext.so.6 => /usr/lib64/libXext.so.6 (0x00007fafaca0f000)
        libSM.so.6 => /usr/lib64/libSM.so.6 (0x00007fafac806000)
        libICE.so.6 => /usr/lib64/libICE.so.6 (0x00007fafac5e9000)
        libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007fafac2ab000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fafac0a7000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fafabe8b000)
        libboost_filesystem.so => /usr/lib64/libboost_filesystem.so (0x00007fafabc7d000)
        libboost_signals.so => /usr/lib64/libboost_signals.so (0x00007fafaba6a000)
        libpython2.5.so.1.0 => /usr/lib64/libpython2.5.so.1.0 (0x00007fafab701000)
        libxerces-c.so.28 => /usr/lib64/libxerces-c.so.28 (0x00007fafab0f8000)
        libFreeCADBase.so.2 => /opt/FreeCAD/lib64/libFreeCADBase.so.2 (0x00007fafaadf6000)
        libFreeCADApp.so.2 => /opt/FreeCAD/lib64/libFreeCADApp.so.2 (0x00007fafaaaf7000)
        libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007fafaa7ea000)
        libm.so.6 => /lib64/libm.so.6 (0x00007fafaa594000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fafaa23b000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fafaa023000)
        libz.so.1 => /lib64/libz.so.1 (0x00007fafa9e0d000)
        libgthread-2.0.so.0 => /usr/lib64/libgthread-2.0.so.0 (0x00007fafa9c08000)
        librt.so.1 => /lib64/librt.so.1 (0x00007fafa99fe000)
        libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007fafa973b000)
        libpng12.so.0 => /usr/lib64/libpng12.so.0 (0x00007fafa9513000)
        libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x00007fafa9290000)
        libXrender.so.1 => /usr/lib64/libXrender.so.1 (0x00007fafa9086000)
        libXrandr.so.2 => /usr/lib64/libXrandr.so.2 (0x00007fafa8e7e000)
        libXfixes.so.3 => /usr/lib64/libXfixes.so.3 (0x00007fafa8c77000)
        libXcursor.so.1 => /usr/lib64/libXcursor.so.1 (0x00007fafa8a6c000)
        libXinerama.so.1 => /usr/lib64/libXinerama.so.1 (0x00007fafa8869000)
        libfontconfig.so.1 => /usr/lib64/libfontconfig.so.1 (0x00007fafa8632000)
        libCoin.so.60 => /usr/lib64/libCoin.so.60 (0x00007fafa7a81000)
        libGLU.so.1 => /usr/lib64/libGLU.so.1 (0x00007fafa77fa000)
        libQtSql.so.4 => /usr/lib64/libQtSql.so.4 (0x00007fafa75bb000)
        libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007fafa73b7000)
        libxcb-xlib.so.0 => /usr/lib64/libxcb-xlib.so.0 (0x00007fafa71b5000)
        libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007fafa6f99000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fafb06e9000)
        libutil.so.1 => /lib64/libutil.so.1 (0x00007fafa6d95000)
        libicuuc.so.38 => /usr/lib64/libicuuc.so.38 (0x00007fafa6a52000)
        libicudata.so.38 => /usr/lib64/libicudata.so.38 (0x00007fafa5d7b000)
        libboost_program_options.so => /usr/lib64/libboost_program_options.so (0x00007fafa5b44000)
        libpcre.so.0 => /usr/lib64/libpcre.so.0 (0x00007fafa591a000)
        libexpat.so.1 => /lib64/libexpat.so.1 (0x00007fafa56f0000)

wmayer

2009-12-22 11:33

administrator   ~0000088

Now check with ldd libSoQt.so which Coin version this depends on. It may already suffice to redirect the symlink libCoin.so to the right version of Coin.

Once this is done you must completely rebuild the FreeCAD sources to get clean executables.

dharter

2009-12-22 21:47

reporter   ~0000089

ldd /usr/lib64/libSoQt.so.20.4.1 | grep Coin
        libCoin.so.60 => /usr/lib64/libCoin.so.60 (0x00007fbbe1f7b000)

So I should ln earlier versions of coin to LibCoin.so.60 then recompile?

wmayer

2009-12-22 22:12

administrator   ~0000090

So, now there must be a symbolic link libCoin.so somewhere that points to libCoin.so.40. Remove this link and recreate it so that it points to libCoin.so.60.

Maybe you can start FreeCAD just to see if it works without recompiling -- what I do not assume.

After a rebuild check again for libCoin.so.40 in the dependencies. This must not appear anymore, then.

dharter

2009-12-22 23:20

reporter   ~0000091

It might be too late for that. I am trying to modify the source rpm spec file to the newest version of FreeCAD. To get opencv-devel, I had to upgrade to opencv version 2 and had many cascading changes in other packages.

dharter

2009-12-23 00:02

reporter   ~0000092

NOw I am getting:
checking Python.h usability... yes
checking Python.h presence... yes
checking for Python.h... yes
checking for libpython2.5... yes
Use local sources of PyCXX & zipios++... no
checking for PyCXX headers... no
configure: error: Cannot find the PyCXX headers
error: Bad exit status from /var/tmp/rpm-tmp.67526 (%build)
I haven't been able to find any rpms for pycxx for suse.
http://cxx.sourceforge.net/
I don't like to install software without a rpm so it may be while until I find an rpm or make one.

dharter

2009-12-23 06:42

reporter   ~0000093

I installed pycxx anyways. I ahd to make a symlink in the python2.6 directory to it for the configure script to find it. I never figured out how to add multile directories to the python-include-dir variable.

To build also https://sourceforge.net/projects/zipios/ zipios++ is needed and there are no rpms for that. The c++ compile fails for that. t is no simple compile for FreeCAD.

wmayer

2009-12-23 08:32

administrator   ~0000094

From where did you take the sources to build FreeCAD? The tarball you have is definitely the wrong one because this is tailored for the Debian platform where packages for PyCXX and zipios++ are available, thus these sources are left out.

From the SF download area you can fetch the tarball FreeCAD-0.9.2646-2.tar.gz which contains all the needed sources.

dharter

2009-12-23 12:47

reporter   ~0000095

I got that version from the featured link on https://sourceforge.net/projects/free-cad/ . It did not say anything about debian.

Now I have the correct version but there is a problem with boost.
checking for boost... configure: error: failed
error: Bad exit status from /var/tmp/rpm-tmp.59712 (%build)

configure:17709: checking for boost
configure:17763: g++ -o conftest -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -I/usr/include/boost -L/usr/lib64/ conftest.cpp -lboost_program_options-mt
>&5
/tmp/ccbOMkoR.o: In function `main':
/usr/src/packages/BUILD/FreeCAD-0.9.2646/conftest.cpp:53: undefined reference to `boost::program_options::options_description::m_default_line_length'
collect2: ld returned 1 exit status
configure:17769: $? = 1
configure: failed program was:
Perhaps I need a special version of boost that configure is not handling properly.

unauthenticated

2009-12-23 13:51

viewer   ~0000096

Sorry, for the confusion. Normally I add "dfsg" (Debian free software guideline) to the filename but here I forgot to do.

The error with boost could be a bug in boost itself. Googling for the error the very first hit was this: http://old.nabble.com/dynamic-link-error:-boost::program_options::arg-not-found-td19534877.html

This is refers to the Windows platform but maybe this causes the same error on other platforms, too.

dharter

2009-12-23 14:17

reporter   ~0000097

I upgraded a few packages. I still get the same error. Here is what I have installed.
rpm -qa | grep boost
libboost_math1_36_0-1.36.0-11.1
libboost_regex1_39_0-1.39.0-6.3
libboost_date_time1_36_0-1.36.0-11.1
libboost_date_time1_39_0-1.39.0-6.3
libboost_filesystem1_36_0-1.36.0-11.1
libboost_signals1_39_0-1.39.0-6.3
libboost_signals1_36_0-1.36.0-11.1
libboost_python1_39_0-1.39.0-6.3
libboost_test1_36_0-1.36.0-11.1
boost-jam-3.1.17-4.2
boost-1.34.1-42.4
libboost_thread1_36_0-1.36.0-11.1
libboost_wave1_36_0-1.36.0-11.1
libboost_iostreams1_39_0-1.39.0-6.3
libboost_wave1_39_0-1.39.0-6.3
libboost_program_options1_36_0-1.36.0-11.1
libboost_python1_36_0-1.36.0-11.1
libboost_thread1_39_0-1.39.0-6.3
libboost_graph1_39_0-1.39.0-6.3
libboost_regex1_36_0-1.36.0-11.1
libboost_serialization1_36_0-1.36.0-11.1
libboost_serialization1_39_0-1.39.0-6.3
libboost_test1_39_0-1.39.0-6.3
libboost_iostreams1_36_0-1.36.0-11.1
boost-license1_39_0-1.39.0-6.3
libboost_program_options1_39_0-1.39.0-6.3
libboost_mpi1_39_0-1.39.0-6.3
libboost_math1_39_0-1.39.0-6.3
libboost_mpi1_36_0-1.36.0-11.1
boost-doc-1.39.0-6.3
boost-devel-1.39.0-6.3
libboost_graph1_36_0-1.36.0-11.1
libboost_filesystem1_39_0-1.39.0-6.3
boost-license-1.36.0-11.1
libboost_system1_36_0-1.36.0-11.1
libboost_system1_39_0-1.39.0-6.3
The devel is 1.39 and the main is 1.34

dharter

2009-12-23 15:42

reporter   ~0000098

I compiled some rpms for boot. I deleted some duplicat packages. It seems that the base package version does not change. Here is what I have. It still does not compile.
libboost_regex1_39_0-1.39.0-6.3
libboost_date_time1_39_0-1.39.0-6.3
libboost_signals1_39_0-1.39.0-6.3
libboost_python1_39_0-1.39.0-6.3
boost-jam-3.1.17-4.2
boost-1.34.1-42.4
libboost_iostreams1_39_0-1.39.0-6.3
libboost_wave1_39_0-1.39.0-6.3
libboost_program_options1_36_0-1.36.0-11.1
libboost_python1_36_0-1.36.0-11.1
libboost_thread1_39_0-1.39.0-6.3
libboost_graph1_39_0-1.39.0-6.3
libboost_serialization1_39_0-1.39.0-6.3
libboost_test1_39_0-1.39.0-6.3
libboost_iostreams1_36_0-1.36.0-11.1
boost-license1_39_0-1.39.0-6.3
libboost_program_options1_39_0-1.39.0-6.3
libboost_mpi1_39_0-1.39.0-6.3
libboost_math1_39_0-1.39.0-6.3
boost-doc-1.39.0-6.3
boost-devel-1.39.0-6.3
libboost_filesystem1_39_0-1.39.0-6.3
boost-license-1.36.0-11.1
libboost_system1_39_0-1.39.0-6.3
checking whether xerces lib is available... yes
checking for boost... configure: error: failed

wmayer

2009-12-23 22:40

administrator   ~0000099

At the moment I have no idea whether it's a bug in boost or whether our boost check is erroneous. Maybe you can tmp. swtich off the boost check by replacing 'AC_TRY_LINK' with 'AC_TRY_COMPILE'. This should only compile the test but do not linking. You'll find it in acinclude.m4 at 470. Afterwards you must run ./autogen.sh to update all the autotool files.

dharter

2009-12-24 06:04

reporter   ~0000100

I will try that .Perhaps it has something to do with the gcc version or one of its options.
g++ --version
g++ (SUSE Linux) 4.3.1 20080507 (prerelease) [gcc-4_3-branch revision 135036]
Copyright (C) 2008 Free Software Foundation, Inc.
 What version of gcc are you using and what version of boost did you use?

wmayer

2009-12-24 13:27

administrator   ~0000101

On different machines I have different version of boost and g++.
* Debian testing <==> boost 1.40, g++ 4.3.4
* Ubuntu Karmic Koala <==> boost 1.38, g++ 4.4.1
* Ubuntu Hardy <==> boost 1.34, g++ 4.2.4

I think I have already used all boost versions from 1.33 on and got never ever any problems. Only on Windows we got a strange linker error with an older version.

dharter

2009-12-24 16:12

reporter   ~0000102

I made that change and it tried to link it again and failed.
Perhaps it is some gcc option such as -ffriend-injection
No I tried this option and it did not work.

autogen.sh did not update all the autotool files. It still tries to compile and link it even when I delete all that code to bypass the test.

wmayer

2009-12-25 12:51

administrator   ~0000103

You can also replace AC_MSG_ERROR with AC_MSG_RESULT in the boost check (line 431, 452, 477). This will still produce the messages but won't stop the configure script anymore.

dharter

2009-12-25 21:23

reporter   ~0000104

Yes, this last change enabled me to compile it.
But it crashed with virtually the same error as the test compile.
I looked at bug reports for g++ at the gnu site. It seems that there are several erroneous bug reports regarding namespaces that are considered to be coding errors and not bugs.
g++ -I../../src -I/usr/include/ -I/usr/include//Qt3Support -I/usr/include//QtGui -I/usr/include//QtCore -I/usr/include//QtOpenGL -I/usr/include//QtNetwork -I/usr/include//QtSvg -I/usr/include//QtXml -I/usr/include//QtUiTools -I/usr/include//QtWebKit -I/usr/include/python2.5 -I/usr/include -I/usr/include/boost -g -O2 -Wno-deprecated -frtti -o .libs/FreeCAD MainGui.o -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Base -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui -L/usr/lib/qt4/ -L/usr/lib64 -L/usr/X11R6/lib64 -lm -L/usr/lib -L/usr/lib64/ /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so /usr/lib64/libQtSvg.so /usr/lib64/libQtWebKit.so /usr/lib64/libSoQt.so /usr/lib64/libQtOpenGL.so -lGLU /usr/lib64/libQt3Support.so /usr/lib64/libQtSql.so /usr/lib64/libQtXml.so /usr/lib64/libQtGui.so /usr/lib64/libpng12.so /usr/lib64/libfreetype.so /usr/lib64/libXrender.so /usr/lib64/libXrandr.so /usr/lib64/libXfixes.so /usr/lib64/libXcursor.so /usr/lib64/libXinerama.so /usr/lib64/libfontconfig.so /usr/lib64/libQtNetwork.so /usr/lib64/libQtCore.so -pthread /usr/lib64/libgthread-2.0.so -lrt /usr/lib64/libglib-2.0.so /usr/lib64/libXmu.so /usr/lib64/libXt.so /usr/lib64/libXi.so /usr/lib64/libCoin.so -lGL /usr/lib64/libXext.so /usr/lib64/libSM.so -lICE /usr/lib64/libX11.so /usr/lib64/libxcb-xlib.so /usr/lib64/libxcb.so -lXau -ldl -lQtUiTools /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so -lboost_program_options-mt -lboost_signals-mt /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Base/.libs/libFreeCADBase.so -lpthread -lboost_filesystem-mt -lz -lpython2.5 -lxerces-c -Wl,--rpath -Wl,/opt/FreeCAD/lib64
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so: undefined reference to `boost::program_options::options_description::m_default_line_length'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so: undefined reference to `boost::signals::detail::signal_base::signal_base(boost::function2<bool, boost::signals::detail::stored_group, boost::signals::detail::stored_group> const&, boost::any const&)'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so: undefined reference to `boost::program_options::detail::cmdline::set_additional_parser(boost::function1<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>)'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so: undefined reference to `boost::system::get_generic_category()'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so: undefined reference to `boost::system::get_system_category()'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so: undefined reference to `boost::program_options::basic_parsed_options<char> boost::program_options::parse_config_file<char>(std::basic_istream<char, std::char_traits<char> >&, boost::program_options::options_description const&, bool)'
collect2: ld returned 1 exit status
make[3]: *** [FreeCAD] Error 1
make[3]: Leaving directory `/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Main'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/src/packages/BUILD/FreeCAD-0.9.2646/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/packages/BUILD/FreeCAD-0.9.2646'
make: *** [all] Error 2
It is Christmas enough debugging for today.

wmayer

2009-12-26 09:47

administrator   ~0000105

Of course because this change only suppresses the error but doesn't solve. With this step I hoped to get a bit more information. At least we know that our test is probably not erroneous but it's definitely an issue with your boost.

So, to reduce the number of linker errors please make sure to having set BOOST_SYSTEM_LIB to -lboost_system-mt (acinclude.m4) because this lib is needed by FreeCAD.

After all we still have the issue with "boost::program_options::options_description::m_default_line_length". We'll again have to dig further into the problem. I'll let you know if I find something related to that...

dharter

2009-12-26 14:24

reporter   ~0000106

The same thing happened. Will have to check my boost package installation.
 
g++ -I../../src -I/usr/include/ -I/usr/include//Qt3Support -I/usr/include//QtGui -I/usr/include//QtCore -I/usr/include//QtOpenGL -I/usr/include//QtNetwork -I/usr/include//QtSvg -I/usr/include//QtXml -I/usr/include//QtUiTools -I/usr/include//QtWebKit -I/usr/include/python2.5 -I/usr/include -I/usr/include/boost -g -O2 -Wno-deprecated -frtti -o .libs/FreeCAD MainGui.o -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Base -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui -L/usr/lib/qt4/ -L/usr/lib64 -L/usr/X11R6/lib64 -lm -L/usr/lib -L/usr/lib64/ /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so /usr/lib64/libQtSvg.so /usr/lib64/libQtWebKit.so /usr/lib64/libSoQt.so /usr/lib64/libQtOpenGL.so -lGLU /usr/lib64/libQt3Support.so /usr/lib64/libQtSql.so /usr/lib64/libQtXml.so /usr/lib64/libQtGui.so /usr/lib64/libpng12.so /usr/lib64/libfreetype.so /usr/lib64/libXrender.so /usr/lib64/libXrandr.so /usr/lib64/libXfixes.so /usr/lib64/libXcursor.so /usr/lib64/libXinerama.so /usr/lib64/libfontconfig.so /usr/lib64/libQtNetwork.so /usr/lib64/libQtCore.so -pthread /usr/lib64/libgthread-2.0.so -lrt /usr/lib64/libglib-2.0.so /usr/lib64/libXmu.so /usr/lib64/libXt.so /usr/lib64/libXi.so /usr/lib64/libCoin.so -lGL /usr/lib64/libXext.so /usr/lib64/libSM.so -lICE /usr/lib64/libX11.so /usr/lib64/libxcb-xlib.so /usr/lib64/libxcb.so -lXau -ldl -lQtUiTools /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so -lboost_program_options-mt -lboost_signals-mt /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Base/.libs/libFreeCADBase.so -lpthread -lboost_filesystem-mt -lz -lpython2.5 -lxerces-c -Wl,--rpath -Wl,/opt/FreeCAD/lib64
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so: undefined reference to `boost::program_options::options_description::m_default_line_length'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so: undefined reference to `boost::signals::detail::signal_base::signal_base(boost::function2<bool, boost::signals::detail::stored_group, boost::signals::detail::stored_group> const&, boost::any const&)'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so: undefined reference to `boost::program_options::detail::cmdline::set_additional_parser(boost::function1<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>)'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so: undefined reference to `boost::system::get_generic_category()'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so: undefined reference to `boost::system::get_system_category()'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so: undefined reference to `boost::program_options::basic_parsed_options<char> boost::program_options::parse_config_file<char>(std::basic_istream<char, std::char_traits<char> >&, boost::program_options::options_description const&, bool)'
collect2: ld returned 1 exit status

2009-12-26 20:28

 

config.log (Attachment missing)

dharter

2009-12-26 20:39

reporter   ~0000107

I have uploaded my config.log with the -H option specified during compile. This use of "generic" makes it much more complicated to debug.

What if BOOST_PROGRAM_OPTIONS_DECL never gets defined? I thought that was just for windows anyways.
It seems that there are 2 definitions in boost/program_options/options_description.hpp?

 class options_description;
class BOOST_PROGRAM_OPTIONS_DECL options_description {

wmayer

2009-12-28 11:48

administrator   ~0000108

BOOST_PROGRAM_OPTIONS_DECL of course is needed for Windows only. But what I meant is the macro BOOST_STATIC_CONSTANT(unsigned, m_default_line_length = 80);
The variable m_default_line_length is defined as static and possibly wasn't initialized somewhere in a boost .cpp file. Using this macro and setting the variable to 80 inside the header file possibly solves this error already.

A further helpful link I have found is this: http://groups.google.ws/group/boost-list/browse_thread/thread/520d7df08f3a6d3e

If this still doesn't solve the issue it's probably best to open a bug report in the openSuse mailing list.

dharter

2009-12-28 21:19

reporter   ~0000109

OK. That is what was causing it. I made the following patch and it now compiles. I have a further problem now and I will look at it for a while. The vendor is not SUSE. It is Vendor: http://packman.links2linux.de
Packager : andflo@links2linux.de
root:~>diff -c /usr/include/boost/program_options/options_description.hpp /usr/include/boost/program_options/options_description.hpp~
*** /usr/include/boost/program_options/options_description.hpp Mon Dec 28 16:02:55 2009
--- /usr/include/boost/program_options/options_description.hpp~ Wed Dec 16 02:53:09 2009
***************
*** 155,161 ****
      */
      class BOOST_PROGRAM_OPTIONS_DECL options_description {
      public:
! static const unsigned m_default_line_length=80;

          /** Creates the instance. */
          options_description(unsigned line_length = m_default_line_length);
--- 155,161 ----
      */
      class BOOST_PROGRAM_OPTIONS_DECL options_description {
      public:
! static const unsigned m_default_line_length;

          /** Creates the instance. */
          options_description(unsigned line_length = m_default_line_length);

dharter

2009-12-28 22:48

reporter   ~0000110

I had some problems with libtool. I ran autogen.sh and that fixed those problems. Now I have more boost problems. There is a more serious problem with it. Perhaps I should submit a bug report with THEM. But how is it that you can compile? Perhaps an issue with gcc and boost with the gcc people claiming it is a coding error?
g++ -I../../src -I/usr/include/ -I/usr/include//Qt3Support -I/usr/include//QtGui -I/usr/include//QtCore -I/usr/include//QtOpenGL -I/usr/include//QtNetwork -I/usr/include//QtSvg -I/usr/include//QtXml -I/usr/include//QtUiTools -I/usr/include//QtWebKit -I/usr/include/python2.5 -I/usr/include -I/usr/include/boost -g -O2 -Wno-deprecated -frtti -o .libs/FreeCAD MainGui.o -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Base -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui -L/usr/lib/qt4/ -L/usr/lib64 -L/usr/X11R6/lib64 -lm -L/usr/lib -L/usr/lib64/ /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so /usr/lib64/libQtSvg.so /usr/lib64/libQtWebKit.so /usr/lib64/libSoQt.so /usr/lib64/libQtOpenGL.so -lGLU /usr/lib64/libQt3Support.so /usr/lib64/libQtSql.so /usr/lib64/libQtXml.so /usr/lib64/libQtGui.so /usr/lib64/libpng12.so /usr/lib64/libfreetype.so /usr/lib64/libXrender.so /usr/lib64/libXrandr.so /usr/lib64/libXfixes.so /usr/lib64/libXcursor.so /usr/lib64/libXinerama.so /usr/lib64/libfontconfig.so /usr/lib64/libQtNetwork.so /usr/lib64/libQtCore.so -pthread /usr/lib64/libgthread-2.0.so -lrt /usr/lib64/libglib-2.0.so /usr/lib64/libXmu.so /usr/lib64/libXt.so /usr/lib64/libXi.so /usr/lib64/libCoin.so -lGL /usr/lib64/libXext.so /usr/lib64/libSM.so -lICE /usr/lib64/libX11.so /usr/lib64/libxcb-xlib.so /usr/lib64/libxcb.so -lXau -ldl -lQtUiTools /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so -lboost_program_options-mt -lboost_signals-mt /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Base/.libs/libFreeCADBase.so -lpthread -lboost_filesystem-mt -lboost_system-mt -lz -lpython2.5 -lxerces-c -Wl,--rpath -Wl,/opt/FreeCAD/lib64
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so: undefined reference to `boost::signals::detail::signal_base::signal_base(boost::function2<bool, boost::signals::detail::stored_group, boost::signals::detail::stored_group> const&, boost::any const&)'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so: undefined reference to `boost::program_options::detail::cmdline::set_additional_parser(boost::function1<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>)'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so: undefined reference to `boost::program_options::basic_parsed_options<char> boost::program_options::parse_config_file<char>(std::basic_istream<char, std::char_traits<char> >&, boost::program_options::options_description const&, bool)'
collect2: ld returned 1 exit status
make[3]: *** [FreeCAD] Error 1
make[3]: Leaving directory `/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Main'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/src/packages/BUILD/FreeCAD-0.9.2646/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/packages/BUILD/FreeCAD-0.9.2646'
make: *** [all] Error 2

wmayer

2009-12-29 08:42

administrator   ~0000111

This is something I don't understand either. It turned out that on so many systems additional libs must be added to the linker to get built everything fine.

So, I have added the boost_program_options lib to FreeCADGui. Then you can also try the line "AM_LDFLAGS = @BOOST_FILESYSTEM_LIB@ @BOOST_PROGOPTIONS_LIB@ @BOOST_SIGNALS_LIB@ @BOOST_SYSTEM_LIB@". Just add it to line 62 in the file src/Main/Makefile.am.

dharter

2009-12-29 10:42

reporter   ~0000112

That did not fix it or this is a new problem.
Here is the fix:
#--------------------------------------------------------------------------------------

# set the include path found by configure
AM_CXXFLAGS = -I$(top_srcdir)/src $(QT_CXXFLAGS) $(all_includes)
AM_LDFLAGS = @BOOST_FILESYSTEM_LIB@ \
@BOOST_PROGOPTIONS_LIB@ @BOOST_SIGNALS_LIB@ @BOOST_SYSTEM_LIB@

g++ -I../../src -I/usr/include/ -I/usr/include//Qt3Support -I/usr/include//QtGui -I/usr/include//QtCore -I/usr/include//QtOpenGL -I/usr/include//QtNetwork -I/usr/include//QtSvg -I/usr/include//QtXml -I/usr/include//QtUiTools -I/usr/include//QtWebKit -I/usr/include/python2.5 -I/usr/include -I/usr/include/boost -g -O2 -Wno-deprecated -frtti -o .libs/FreeCAD MainGui.o -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Base -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui -L/usr/lib/qt4/ -L/usr/lib64 -L/usr/X11R6/lib64 -lm -L/usr/lib -L/usr/lib64/ /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so /usr/lib64/libQtSvg.so /usr/lib64/libQtWebKit.so /usr/lib64/libSoQt.so /usr/lib64/libQtOpenGL.so -lGLU /usr/lib64/libQt3Support.so /usr/lib64/libQtSql.so /usr/lib64/libQtXml.so /usr/lib64/libQtGui.so /usr/lib64/libpng12.so /usr/lib64/libfreetype.so /usr/lib64/libXrender.so /usr/lib64/libXrandr.so /usr/lib64/libXfixes.so /usr/lib64/libXcursor.so /usr/lib64/libXinerama.so /usr/lib64/libfontconfig.so /usr/lib64/libQtNetwork.so /usr/lib64/libQtCore.so -pthread /usr/lib64/libgthread-2.0.so -lrt /usr/lib64/libglib-2.0.so /usr/lib64/libXmu.so /usr/lib64/libXt.so /usr/lib64/libXi.so /usr/lib64/libCoin.so -lGL /usr/lib64/libXext.so /usr/lib64/libSM.so -lICE /usr/lib64/libX11.so /usr/lib64/libxcb-xlib.so /usr/lib64/libxcb.so -lXau -ldl -lQtUiTools /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so -lboost_program_options-mt -lboost_signals-mt /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Base/.libs/libFreeCADBase.so -lpthread -lboost_filesystem-mt -lboost_system-mt -lz -lpython2.5 -lxerces-c -Wl,--rpath -Wl,/opt/FreeCAD/lib64
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so: undefined reference to `boost::signals::detail::signal_base::signal_base(boost::function2<bool, boost::signals::detail::stored_group, boost::signals::detail::stored_group> const&, boost::any const&)'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so: undefined reference to `boost::program_options::detail::cmdline::set_additional_parser(boost::function1<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>)'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so: undefined reference to `boost::program_options::basic_parsed_options<char> boost::program_options::parse_config_file<char>(std::basic_istream<char, std::char_traits<char> >&, boost::program_options::options_description const&, bool)'
collect2: ld returned 1 exit status
make[3]: *** [FreeCAD] Error 1
make[3]: Leaving directory `/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Main'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/src/packages/BUILD/FreeCAD-0.9.2646/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/packages/BUILD/FreeCAD-0.9.2646'
make: *** [all] Error 2


What patches if any are installed in your boost distribution?
I am trying to build a 1-41 version but found a problem with the spec file.

wmayer

2009-12-29 11:02

administrator   ~0000113

On Ubuntu Hardy I have boost 1.33 and 1.34 in use. You'll find the original tarball here: http://archive.ubuntu.com/ubuntu/pool/main/b/boost/ There you'll also find the boost_1.34.1-4ubuntu3.diff.gz file which seems to patch quite a lot.

Have a look to the 1.40 version (http://archive.ubuntu.com/ubuntu/pool/main/b/boost1.40/) and its patch file (boost1.40_1.40.0-4ubuntu2.diff.gz) you'll see that only a few files have been patched.

dharter

2009-12-29 13:54

reporter   ~0000114

Last edited: 2009-12-29 13:55

I forgot to run autogen.sh. I will retry this.

dharter

2009-12-29 14:15

reporter   ~0000115

I ran autogen and the ran the compile. I still got errors. I then looked up all the boostlibraries. I ran the last g++ compile that failed adding libraries. I added almost all of them and it still did not compile. Perhaps I need to go in to the boost headers and define a default value.
/usr/lib64/libboost_date_time-mt.so.1.34.1
/usr/lib64/libboost_date_time-mt.so.2
/usr/lib64/libboost_date_time.so.1.34.1
/usr/lib64/libboost_date_time.so.1.39.0
/usr/lib64/libboost_date_time.so.2
/usr/lib64/libboost_filesystem-mt.so.1.34.1
/usr/lib64/libboost_filesystem-mt.so.2
/usr/lib64/libboost_filesystem.so.1.34.1
/usr/lib64/libboost_filesystem.so.1.39.0
/usr/lib64/libboost_filesystem.so.2
/usr/lib64/libboost_graph-mt.so.1.34.1
/usr/lib64/libboost_graph-mt.so.2
/usr/lib64/libboost_graph.so.1.34.1
/usr/lib64/libboost_graph.so.1.39.0
/usr/lib64/libboost_graph.so.2
/usr/lib64/libboost_iostreams-mt.so.1.34.1
/usr/lib64/libboost_iostreams-mt.so.2
/usr/lib64/libboost_iostreams.so.1.34.1
/usr/lib64/libboost_iostreams.so.1.36.0
/usr/lib64/libboost_iostreams.so.1.39.0
/usr/lib64/libboost_iostreams.so.2
/usr/lib64/libboost_math_c99.so.1.39.0
/usr/lib64/libboost_math_c99f.so.1.39.0
/usr/lib64/libboost_math_c99l.so.1.39.0
/usr/lib64/libboost_math_tr1.so.1.39.0
/usr/lib64/libboost_math_tr1f.so.1.39.0
/usr/lib64/libboost_math_tr1l.so.1.39.0
/usr/lib64/libboost_mpi.so.1.39.0
/usr/lib64/libboost_mpi_python.so.1.39.0
/usr/lib64/libboost_prg_exec_monitor-mt.so.1.34.1
/usr/lib64/libboost_prg_exec_monitor-mt.so.2
/usr/lib64/libboost_prg_exec_monitor.so.1.34.1
/usr/lib64/libboost_prg_exec_monitor.so.1.39.0
/usr/lib64/libboost_prg_exec_monitor.so.2
/usr/lib64/libboost_program_options-mt.so.1.34.1
/usr/lib64/libboost_program_options-mt.so.2
/usr/lib64/libboost_program_options.so.1.34.1
/usr/lib64/libboost_program_options.so.1.36.0
/usr/lib64/libboost_program_options.so.1.39.0
/usr/lib64/libboost_program_options.so.2
/usr/lib64/libboost_python-mt.so.1.34.1
/usr/lib64/libboost_python-mt.so.2
/usr/lib64/libboost_python.so.1.34.1
/usr/lib64/libboost_python.so.1.36.0
/usr/lib64/libboost_python.so.1.39.0
/usr/lib64/libboost_python.so.2
/usr/lib64/libboost_regex-mt.so.1.34.1
/usr/lib64/libboost_regex-mt.so.2
/usr/lib64/libboost_regex.so.1.34.1
/usr/lib64/libboost_regex.so.1.39.0
/usr/lib64/libboost_regex.so.2
/usr/lib64/libboost_serialization-mt.so.1.34.1
/usr/lib64/libboost_serialization-mt.so.2
/usr/lib64/libboost_serialization.so.1.34.1
/usr/lib64/libboost_serialization.so.1.39.0
/usr/lib64/libboost_serialization.so.2
/usr/lib64/libboost_signals-mt.so.1.34.1
/usr/lib64/libboost_signals-mt.so.2
/usr/lib64/libboost_signals.so.1.34.1
/usr/lib64/libboost_signals.so.1.39.0
/usr/lib64/libboost_signals.so.2
/usr/lib64/libboost_system.so.1.39.0
/usr/lib64/libboost_thread-mt.so.1.34.1
/usr/lib64/libboost_thread-mt.so.2
/usr/lib64/libboost_thread.so.1.39.0
/usr/lib64/libboost_unit_test_framework-mt.so.1.34.1
/usr/lib64/libboost_unit_test_framework-mt.so.2
/usr/lib64/libboost_unit_test_framework.so.1.34.1
/usr/lib64/libboost_unit_test_framework.so.1.39.0
/usr/lib64/libboost_unit_test_framework.so.2
/usr/lib64/libboost_wave-mt.so.1.34.1
/usr/lib64/libboost_wave-mt.so.2
/usr/lib64/libboost_wave.so.1.34.1
/usr/lib64/libboost_wave.so.1.39.0
/usr/lib64/libboost_wave.so.2
/usr/lib64/libboost_wserialization-mt.so.1.34.1
/usr/lib64/libboost_wserialization-mt.so.2
/usr/lib64/libboost_wserialization.so.1.34.1
/usr/lib64/libboost_wserialization.so.1.39.0
/usr/lib64/libboost_wserialization.so.2

wmayer

2009-12-30 10:55

administrator   ~0000118

This may be a stupid question but the softlinks for boost that end with ".so" do they point to the correct boost libs?

dharter

2009-12-31 02:07

reporter   ~0000119

That is a good question.
I have a boost-1.34.1-42.4 package installed. When I built 1.41 I never got a boost-1.41 package. I assumed that the others relied on that. Maybe I am wrong. Why would someone change the default naming convention for a newer package. After looking at the symlinks perhaps I need to remove boost-1.34.
Yes all those symlinks are pointing to the 1-34 version.
/usr/lib64>ls *boost* -al
lrwxrwxrwx 1 root root 26 2009-12-30 19:27 libboost_date_time-mt.so -> libboost_date_time-mt.so.2
-rwxr-xr-x 1 root root 68936 2008-12-09 20:14 libboost_date_time-mt.so.1.34.1
lrwxrwxrwx 1 root root 31 2008-12-21 21:42 libboost_date_time-mt.so.2 -> libboost_date_time-mt.so.1.34.1
lrwxrwxrwx 1 root root 23 2009-12-30 19:27 libboost_date_time.so -> libboost_date_time.so.2
-rwxr-xr-x 1 root root 68936 2008-12-09 20:14 libboost_date_time.so.1.34.1
-rwxr-xr-x 1 root root 80960 2009-12-30 19:00 libboost_date_time.so.1.41.0
lrwxrwxrwx 1 root root 28 2008-12-21 21:42 libboost_date_time.so.2 -> libboost_date_time.so.1.34.1
lrwxrwxrwx 1 root root 27 2009-12-30 19:27 libboost_filesystem-mt.so -> libboost_filesystem-mt.so.2
-rwxr-xr-x 1 root root 56928 2008-12-09 20:14 libboost_filesystem-mt.so.1.34.1
lrwxrwxrwx 1 root root 32 2008-12-21 21:42 libboost_filesystem-mt.so.2 -> libboost_filesystem-mt.so.1.34.1
lrwxrwxrwx 1 root root 24 2009-12-30 19:27 libboost_filesystem.so -> libboost_filesystem.so.2
-rwxr-xr-x 1 root root 52832 2008-12-09 20:14 libboost_filesystem.so.1.34.1
-rwxr-xr-x 1 root root 85520 2009-12-30 19:00 libboost_filesystem.so.1.41.0
lrwxrwxrwx 1 root root 29 2008-12-21 21:42 libboost_filesystem.so.2 -> libboost_filesystem.so.1.34.1
lrwxrwxrwx 1 root root 22 2009-12-30 19:27 libboost_graph-mt.so -> libboost_graph-mt.so.2
-rwxr-xr-x 1 root root 426112 2008-12-09 20:14 libboost_graph-mt.so.1.34.1
lrwxrwxrwx 1 root root 27 2008-12-21 21:42 libboost_graph-mt.so.2 -> libboost_graph-mt.so.1.34.1
lrwxrwxrwx 1 root root 33 2009-12-30 19:21 libboost_graph_parallel-mt.so -> libboost_graph_parallel.so.1.41.0
lrwxrwxrwx 1 root root 33 2009-12-30 19:21 libboost_graph_parallel.so -> libboost_graph_parallel.so.1.41.0
-rwxr-xr-x 1 root root 304400 2009-12-30 19:00 libboost_graph_parallel.so.1.41.0
lrwxrwxrwx 1 root root 19 2009-12-30 19:27 libboost_graph.so -> libboost_graph.so.2
-rwxr-xr-x 1 root root 426104 2008-12-09 20:14 libboost_graph.so.1.34.1
-rwxr-xr-x 1 root root 308280 2009-12-30 19:00 libboost_graph.so.1.41.0
lrwxrwxrwx 1 root root 24 2008-12-21 21:42 libboost_graph.so.2 -> libboost_graph.so.1.34.1
lrwxrwxrwx 1 root root 26 2009-12-30 19:27 libboost_iostreams-mt.so -> libboost_iostreams-mt.so.2
-rwxr-xr-x 1 root root 40208 2008-12-09 20:14 libboost_iostreams-mt.so.1.34.1
lrwxrwxrwx 1 root root 31 2008-12-21 21:42 libboost_iostreams-mt.so.2 -> libboost_iostreams-mt.so.1.34.1
lrwxrwxrwx 1 root root 23 2009-12-30 19:27 libboost_iostreams.so -> libboost_iostreams.so.2
-rwxr-xr-x 1 root root 40208 2008-12-09 20:14 libboost_iostreams.so.1.34.1
-rwxr-xr-x 1 root root 65072 2009-12-30 19:00 libboost_iostreams.so.1.41.0
lrwxrwxrwx 1 root root 28 2008-12-21 21:42 libboost_iostreams.so.2 -> libboost_iostreams.so.1.34.1
lrwxrwxrwx 1 root root 28 2009-12-30 19:21 libboost_math_c99f-mt.so -> libboost_math_c99f.so.1.41.0
lrwxrwxrwx 1 root root 28 2009-12-30 19:21 libboost_math_c99f.so -> libboost_math_c99f.so.1.41.0
-rwxr-xr-x 1 root root 148616 2009-12-30 19:00 libboost_math_c99f.so.1.41.0
lrwxrwxrwx 1 root root 28 2009-12-30 19:21 libboost_math_c99l-mt.so -> libboost_math_c99l.so.1.41.0
lrwxrwxrwx 1 root root 28 2009-12-30 19:21 libboost_math_c99l.so -> libboost_math_c99l.so.1.41.0
-rwxr-xr-x 1 root root 148512 2009-12-30 19:00 libboost_math_c99l.so.1.41.0
lrwxrwxrwx 1 root root 27 2009-12-30 19:21 libboost_math_c99-mt.so -> libboost_math_c99.so.1.41.0
lrwxrwxrwx 1 root root 27 2009-12-30 19:21 libboost_math_c99.so -> libboost_math_c99.so.1.41.0
-rwxr-xr-x 1 root root 152656 2009-12-30 19:00 libboost_math_c99.so.1.41.0
lrwxrwxrwx 1 root root 28 2009-12-30 19:21 libboost_math_tr1f-mt.so -> libboost_math_tr1f.so.1.41.0
lrwxrwxrwx 1 root root 28 2009-12-30 19:21 libboost_math_tr1f.so -> libboost_math_tr1f.so.1.41.0
-rwxr-xr-x 1 root root 309176 2009-12-30 19:00 libboost_math_tr1f.so.1.41.0
lrwxrwxrwx 1 root root 28 2009-12-30 19:21 libboost_math_tr1l-mt.so -> libboost_math_tr1l.so.1.41.0
lrwxrwxrwx 1 root root 28 2009-12-30 19:21 libboost_math_tr1l.so -> libboost_math_tr1l.so.1.41.0
-rwxr-xr-x 1 root root 292576 2009-12-30 19:00 libboost_math_tr1l.so.1.41.0
lrwxrwxrwx 1 root root 27 2009-12-30 19:21 libboost_math_tr1-mt.so -> libboost_math_tr1.so.1.41.0
lrwxrwxrwx 1 root root 27 2009-12-30 19:21 libboost_math_tr1.so -> libboost_math_tr1.so.1.41.0
-rwxr-xr-x 1 root root 296688 2009-12-30 19:00 libboost_math_tr1.so.1.41.0
lrwxrwxrwx 1 root root 22 2009-12-30 19:21 libboost_mpi-mt.so -> libboost_mpi.so.1.41.0
lrwxrwxrwx 1 root root 29 2009-12-30 19:21 libboost_mpi_python-mt.so -> libboost_mpi_python.so.1.41.0
lrwxrwxrwx 1 root root 29 2009-12-30 19:21 libboost_mpi_python.so -> libboost_mpi_python.so.1.41.0
-rwxr-xr-x 1 root root 89904 2009-12-30 19:00 libboost_mpi_python.so.1.41.0
lrwxrwxrwx 1 root root 22 2009-12-30 19:21 libboost_mpi.so -> libboost_mpi.so.1.41.0
-rwxr-xr-x 1 root root 255896 2009-12-30 19:00 libboost_mpi.so.1.41.0
lrwxrwxrwx 1 root root 33 2009-12-30 19:27 libboost_prg_exec_monitor-mt.so -> libboost_prg_exec_monitor-mt.so.2
-rwxr-xr-x 1 root root 27648 2008-12-09 20:14 libboost_prg_exec_monitor-mt.so.1.34.1
lrwxrwxrwx 1 root root 38 2008-12-21 21:42 libboost_prg_exec_monitor-mt.so.2 -> libboost_prg_exec_monitor-mt.so.1.34.1
lrwxrwxrwx 1 root root 30 2009-12-30 19:27 libboost_prg_exec_monitor.so -> libboost_prg_exec_monitor.so.2
-rwxr-xr-x 1 root root 27648 2008-12-09 20:14 libboost_prg_exec_monitor.so.1.34.1
-rwxr-xr-x 1 root root 64912 2009-12-30 19:00 libboost_prg_exec_monitor.so.1.41.0
lrwxrwxrwx 1 root root 35 2008-12-21 21:42 libboost_prg_exec_monitor.so.2 -> libboost_prg_exec_monitor.so.1.34.1
lrwxrwxrwx 1 root root 32 2009-12-30 19:27 libboost_program_options-mt.so -> libboost_program_options-mt.so.2
-rwxr-xr-x 1 root root 226464 2008-12-09 20:14 libboost_program_options-mt.so.1.34.1
lrwxrwxrwx 1 root root 37 2008-12-21 21:42 libboost_program_options-mt.so.2 -> libboost_program_options-mt.so.1.34.1
lrwxrwxrwx 1 root root 29 2009-12-30 19:27 libboost_program_options.so -> libboost_program_options.so.2
-rwxr-xr-x 1 root root 226464 2008-12-09 20:14 libboost_program_options.so.1.34.1
-rwxr-xr-x 1 root root 316792 2009-12-30 19:00 libboost_program_options.so.1.41.0
lrwxrwxrwx 1 root root 34 2008-12-21 21:42 libboost_program_options.so.2 -> libboost_program_options.so.1.34.1
lrwxrwxrwx 1 root root 23 2009-12-30 19:27 libboost_python-mt.so -> libboost_python-mt.so.2
-rwxr-xr-x 1 root root 288584 2008-12-09 20:14 libboost_python-mt.so.1.34.1
lrwxrwxrwx 1 root root 28 2008-12-21 21:42 libboost_python-mt.so.2 -> libboost_python-mt.so.1.34.1
lrwxrwxrwx 1 root root 20 2009-12-30 19:27 libboost_python.so -> libboost_python.so.2
-rwxr-xr-x 1 root root 288576 2008-12-09 20:14 libboost_python.so.1.34.1
-rwxr-xr-x 1 root root 354904 2009-12-30 19:00 libboost_python.so.1.41.0
lrwxrwxrwx 1 root root 25 2008-12-21 21:42 libboost_python.so.2 -> libboost_python.so.1.34.1
lrwxrwxrwx 1 root root 22 2009-12-30 19:27 libboost_regex-mt.so -> libboost_regex-mt.so.2
-rwxr-xr-x 1 root root 714544 2008-12-09 20:14 libboost_regex-mt.so.1.34.1
lrwxrwxrwx 1 root root 27 2008-12-21 21:42 libboost_regex-mt.so.2 -> libboost_regex-mt.so.1.34.1
lrwxrwxrwx 1 root root 19 2009-12-30 19:27 libboost_regex.so -> libboost_regex.so.2
-rwxr-xr-x 1 root root 714536 2008-12-09 20:14 libboost_regex.so.1.34.1
-rwxr-xr-x 1 root root 1018904 2009-12-30 19:00 libboost_regex.so.1.41.0
lrwxrwxrwx 1 root root 24 2008-12-21 21:42 libboost_regex.so.2 -> libboost_regex.so.1.34.1
lrwxrwxrwx 1 root root 30 2009-12-30 19:27 libboost_serialization-mt.so -> libboost_serialization-mt.so.2
-rwxr-xr-x 1 root root 424408 2008-12-09 20:14 libboost_serialization-mt.so.1.34.1
lrwxrwxrwx 1 root root 35 2008-12-21 21:42 libboost_serialization-mt.so.2 -> libboost_serialization-mt.so.1.34.1
lrwxrwxrwx 1 root root 27 2009-12-30 19:27 libboost_serialization.so -> libboost_serialization.so.2
-rwxr-xr-x 1 root root 424400 2008-12-09 20:14 libboost_serialization.so.1.34.1
-rwxr-xr-x 1 root root 494088 2009-12-30 19:00 libboost_serialization.so.1.41.0
lrwxrwxrwx 1 root root 32 2008-12-21 21:42 libboost_serialization.so.2 -> libboost_serialization.so.1.34.1
lrwxrwxrwx 1 root root 24 2009-12-30 19:27 libboost_signals-mt.so -> libboost_signals-mt.so.2
-rwxr-xr-x 1 root root 77280 2008-12-09 20:14 libboost_signals-mt.so.1.34.1
lrwxrwxrwx 1 root root 29 2008-12-21 21:42 libboost_signals-mt.so.2 -> libboost_signals-mt.so.1.34.1
lrwxrwxrwx 1 root root 21 2009-12-30 19:27 libboost_signals.so -> libboost_signals.so.2
-rwxr-xr-x 1 root root 77280 2008-12-09 20:14 libboost_signals.so.1.34.1
-rwxr-xr-x 1 root root 93616 2009-12-30 19:00 libboost_signals.so.1.41.0
lrwxrwxrwx 1 root root 26 2008-12-21 21:42 libboost_signals.so.2 -> libboost_signals.so.1.34.1
lrwxrwxrwx 1 root root 25 2009-12-30 19:21 libboost_system-mt.so -> libboost_system.so.1.41.0
lrwxrwxrwx 1 root root 25 2009-12-30 19:21 libboost_system.so -> libboost_system.so.1.41.0
-rwxr-xr-x 1 root root 14832 2009-12-30 19:00 libboost_system.so.1.41.0
lrwxrwxrwx 1 root root 23 2009-12-30 19:27 libboost_thread-mt.so -> libboost_thread-mt.so.2
-rwxr-xr-x 1 root root 57384 2008-12-09 20:14 libboost_thread-mt.so.1.34.1
lrwxrwxrwx 1 root root 28 2008-12-21 21:42 libboost_thread-mt.so.2 -> libboost_thread-mt.so.1.34.1
lrwxrwxrwx 1 root root 25 2009-12-30 19:21 libboost_thread.so -> libboost_thread.so.1.41.0
-rwxr-xr-x 1 root root 85208 2009-12-30 19:00 libboost_thread.so.1.41.0
lrwxrwxrwx 1 root root 36 2009-12-30 19:27 libboost_unit_test_framework-mt.so -> libboost_unit_test_framework-mt.so.2
-rwxr-xr-x 1 root root 276432 2008-12-09 20:14 libboost_unit_test_framework-mt.so.1.34.1
lrwxrwxrwx 1 root root 41 2008-12-21 21:42 libboost_unit_test_framework-mt.so.2 -> libboost_unit_test_framework-mt.so.1.34.1
lrwxrwxrwx 1 root root 33 2009-12-30 19:27 libboost_unit_test_framework.so -> libboost_unit_test_framework.so.2
-rwxr-xr-x 1 root root 276432 2008-12-09 20:14 libboost_unit_test_framework.so.1.34.1
-rwxr-xr-x 1 root root 773376 2009-12-30 19:00 libboost_unit_test_framework.so.1.41.0
lrwxrwxrwx 1 root root 38 2008-12-21 21:42 libboost_unit_test_framework.so.2 -> libboost_unit_test_framework.so.1.34.1
lrwxrwxrwx 1 root root 21 2009-12-30 19:27 libboost_wave-mt.so -> libboost_wave-mt.so.2
-rwxr-xr-x 1 root root 1005936 2008-12-09 20:14 libboost_wave-mt.so.1.34.1
lrwxrwxrwx 1 root root 26 2008-12-21 21:42 libboost_wave-mt.so.2 -> libboost_wave-mt.so.1.34.1
lrwxrwxrwx 1 root root 18 2009-12-30 19:27 libboost_wave.so -> libboost_wave.so.2
-rwxr-xr-x 1 root root 1005928 2008-12-09 20:14 libboost_wave.so.1.34.1
-rwxr-xr-x 1 root root 1178040 2009-12-30 19:00 libboost_wave.so.1.41.0
lrwxrwxrwx 1 root root 23 2008-12-21 21:42 libboost_wave.so.2 -> libboost_wave.so.1.34.1
lrwxrwxrwx 1 root root 31 2009-12-30 19:27 libboost_wserialization-mt.so -> libboost_wserialization-mt.so.2
-rwxr-xr-x 1 root root 353144 2008-12-09 20:14 libboost_wserialization-mt.so.1.34.1
lrwxrwxrwx 1 root root 36 2008-12-21 21:42 libboost_wserialization-mt.so.2 -> libboost_wserialization-mt.so.1.34.1
lrwxrwxrwx 1 root root 28 2009-12-30 19:27 libboost_wserialization.so -> libboost_wserialization.so.2
-rwxr-xr-x 1 root root 353136 2008-12-09 20:14 libboost_wserialization.so.1.34.1
-rwxr-xr-x 1 root root 360968 2009-12-30 19:00 libboost_wserialization.so.1.41.0
lrwxrwxrwx 1 root root 33 2008-12-21 21:42 libboost_wserialization.so.2 -> libboost_wserialization.so.1.34.1





 I was finally able to build a boost version 1.41. It left me wondering how the original even got built with that spec file.

I ran a compile again and got the following. I had hard coded a default line length in the header files to get that far. I am not sure what I would need to initialize in these errors.
g++ -I../../src -I/usr/include/ -I/usr/include//Qt3Support -I/usr/include//QtGui -I/usr/include//QtCore -I/usr/include//QtOpenGL -I/usr/include//QtNetwork -I/usr/include//QtSvg -I/usr/include//QtXml -I/usr/include//QtUiTools -I/usr/include//QtWebKit -I/usr/include/python2.5 -I/usr/include -I/usr/include/boost -g -O2 -Wno-deprecated -frtti -o .libs/FreeCAD MainGui.o -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Base -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App -L/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui -L/usr/lib/qt4/ -L/usr/lib64 -L/usr/X11R6/lib64 -lm -L/usr/lib -L/usr/lib64/ /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so /usr/lib64/libQtSvg.so /usr/lib64/libQtWebKit.so /usr/lib64/libSoQt.so /usr/lib64/libQtOpenGL.so -lGLU /usr/lib64/libQt3Support.so /usr/lib64/libQtSql.so /usr/lib64/libQtXml.so /usr/lib64/libQtGui.so /usr/lib64/libpng12.so /usr/lib64/libfreetype.so /usr/lib64/libXrender.so /usr/lib64/libXrandr.so /usr/lib64/libXfixes.so /usr/lib64/libXcursor.so /usr/lib64/libXinerama.so /usr/lib64/libfontconfig.so /usr/lib64/libQtNetwork.so /usr/lib64/libQtCore.so -pthread /usr/lib64/libgthread-2.0.so -lrt /usr/lib64/libglib-2.0.so /usr/lib64/libXmu.so /usr/lib64/libXt.so /usr/lib64/libXi.so /usr/lib64/libCoin.so -lGL /usr/lib64/libXext.so /usr/lib64/libSM.so -lICE /usr/lib64/libX11.so /usr/lib64/libxcb-xlib.so /usr/lib64/libxcb.so -lXau -ldl -lQtUiTools /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so -lboost_program_options-mt -lboost_signals-mt /usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Base/.libs/libFreeCADBase.so -lpthread -lboost_filesystem-mt -lboost_system-mt -lz -lpython2.5 -lxerces-c -Wl,--rpath -Wl,/opt/FreeCAD/lib64
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Gui/.libs/libFreeCADGui.so: undefined reference to `boost::signals::detail::signal_base::signal_base(boost::function2<bool, boost::signals::detail::stored_group, boost::signals::detail::stored_group> const&, boost::any const&)'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so: undefined reference to `boost::program_options::detail::cmdline::set_additional_parser(boost::function1<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>)'
/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/App/.libs/libFreeCADApp.so: undefined reference to `boost::program_options::basic_parsed_options<char> boost::program_options::parse_config_file<char>(std::basic_istream<char, std::char_traits<char> >&, boost::program_options::options_description const&, bool)'
collect2: ld returned 1 exit status
make[3]: *** [FreeCAD] Error 1
make[3]: Leaving directory `/usr/src/packages/BUILD/FreeCAD-0.9.2646/src/Main'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/src/packages/BUILD/FreeCAD-0.9.2646/src'
make[1]: *** [all-recursive] Error 1

wmayer

2009-12-31 09:10

administrator   ~0000120

So, as we have seen the softlinks for the boost libs boost_program_options-mt, boost_signals-mt, boost_filesystem-mt and boost_system-mt point all to version 1.34.

To make sure that 1.41 is used you have redirect the symlinks. E.g. we have:
libboost_signals-mt.so -> libboost_signals-mt.so.2
libboost_signals-mt.so.2 -> libboost_signals-mt.so.1.34.1

To adjust the links do the following:
rm libboost_signals-mt.so.2
ln -s libboost_signals-mt.so.1.41.0 libboost_signals-mt.so.2

What else you can check is the dependency of the libs FreeCADBase.so, FreeCADApp.so and FreeCADGui.so to what boost version is linked. Maybe we have there a mixture of different boost version... The command is ldd.

dharter

2009-12-31 16:42

reporter   ~0000122

Good news. I removed all the old boost libs and symlinks. It seems that in the newer version rpms, they are packaged differently. Some may not be built with my(multi-thread). I then rebuilt boost from a src rpm found on the SUSE build site (version 1.40). Then I changed the spec file for FreeCAD to run autogen.sh. Everything compiled and I have some packages. More later.
Wrote: /usr/src/packages/RPMS/x86_64/FreeCAD-0.9.2646-2.x86_64.rpm
Wrote: /usr/src/packages/RPMS/x86_64/FreeCAD-devel-0.9.2646-2.x86_64.rpm
Wrote: /usr/src/packages/RPMS/x86_64/FreeCAD-debuginfo-0.9.2646-2.x86_64.rpm
Wrote: /usr/src/packages/RPMS/x86_64/FreeCAD-debugsource-0.9.2646-2.x86_64.rpm

dharter

2009-12-31 17:04

reporter   ~0000123

Last edited: 2009-12-31 17:34

I installed the rpms after adding a missing dependency.
FreeCAD executed and did not crash. It looks nice! I ran new and it did not crash as before. That is all the testing that I have done with it. Now I need to learn how to use it.
  If you have some space I can send you the suse rpms or src.rpms. I may store it on the susebuild service if it isn't too much work to put it there. I know some about rpms, but I wouldn't consider myself a package maintainer at this time.

FreeCAD
FreeCAD 0.9, Libs: 0.9R2646
(c) Juergen Riegel, Werner Mayer 2001-2009
  ##### #### ### ####
  # # # # # #
  # ## #### #### # # # # #
  #### # # # # # # # ##### # #
  # # #### #### # # # # #
  # # # # # # # # # ## ## ##
  # # #### #### ### # # #### ## ## ##

   Parameter not existing, write initial one
   This warning normally means that FreeCAD is running the first time
   or the configuration was deleted or moved. Build up the standard
   configuration.
   User settings not existing, write initial one
   This warning normally means that FreeCAD is running the first time
   or your configuration was deleted or moved. The system defaults
   will be reestablished for you.
Attach observer 0x748f60
Attach observer 0x757c90
Attach observer 0x797ad0
Object::connect: No such slot Gui::DockWnd::TaskPanelView::task1() in TaskPanelView.cpp:59
Attach observer 0x765d20
Attach observer 0x781f38
Attach observer 0x85ea00
Couldn't resolve property: pattern3445
Attach observer 0x8670d8
Attach observer 0x2565410
Detach observer 0x8670d8
Detach observer 0x2565410
Detach observer 0x757c90
Detach observer 0x85ea00
Detach observer 0x781f38
Detach observer 0x797ad0
Detach observer 0x765d20
Detach observer 0x748f60

dharter

2010-01-01 00:58

reporter   ~0000124

I created a 3D part with this and it seems to be working. No crashes.
ldd /usr/bin/FreeCAD
        linux-vdso.so.1 => (0x00007fffc91fe000)
        libFreeCADGui.so.2 => /opt/FreeCAD/lib64/libFreeCADGui.so.2 (0x00007fc0c070f000)
        libQtSvg.so.4 => /usr/lib64/libQtSvg.so.4 (0x00007fc0c04b6000)
        libQtWebKit.so.4 => /usr/lib64/libQtWebKit.so.4 (0x00007fc0bf202000)
        libSoQt.so.20 => /usr/lib64/libSoQt.so.20 (0x00007fc0bef29000)
        libQtOpenGL.so.4 => /usr/lib64/libQtOpenGL.so.4 (0x00007fc0bec98000)
        libGLU.so.1 => /usr/lib64/libGLU.so.1 (0x00007fc0bea12000)
        libQt3Support.so.4 => /usr/lib64/libQt3Support.so.4 (0x00007fc0be500000)
        libQtSql.so.4 => /usr/lib64/libQtSql.so.4 (0x00007fc0be2c1000)
        libQtXml.so.4 => /usr/lib64/libQtXml.so.4 (0x00007fc0be07a000)
        libQtGui.so.4 => /usr/lib64/libQtGui.so.4 (0x00007fc0bd4c2000)
        libpng12.so.0 => /usr/lib64/libpng12.so.0 (0x00007fc0bd29a000)
        libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x00007fc0bd018000)
        libXrender.so.1 => /usr/lib64/libXrender.so.1 (0x00007fc0bce0e000)
        libXrandr.so.2 => /usr/lib64/libXrandr.so.2 (0x00007fc0bcc06000)
        libXfixes.so.3 => /usr/lib64/libXfixes.so.3 (0x00007fc0bca00000)
        libXcursor.so.1 => /usr/lib64/libXcursor.so.1 (0x00007fc0bc7f5000)
        libXinerama.so.1 => /usr/lib64/libXinerama.so.1 (0x00007fc0bc5f2000)
        libfontconfig.so.1 => /usr/lib64/libfontconfig.so.1 (0x00007fc0bc3bc000)
        libQtNetwork.so.4 => /usr/lib64/libQtNetwork.so.4 (0x00007fc0bc09c000)
        libQtCore.so.4 => /usr/lib64/libQtCore.so.4 (0x00007fc0bbc5d000)
        libgthread-2.0.so.0 => /usr/lib64/libgthread-2.0.so.0 (0x00007fc0bba58000)
        librt.so.1 => /lib64/librt.so.1 (0x00007fc0bb84f000)
        libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007fc0bb58c000)
        libXmu.so.6 => /usr/lib64/libXmu.so.6 (0x00007fc0bb372000)
        libXt.so.6 => /usr/lib64/libXt.so.6 (0x00007fc0bb10c000)
        libXi.so.6 => /usr/lib64/libXi.so.6 (0x00007fc0baf02000)
        libCoin.so.60 => /usr/lib64/libCoin.so.60 (0x00007fc0ba351000)
        libGL.so.1 => /usr/X11R6/lib64/libGL.so.1 (0x00007fc0c0f05000)
        libXext.so.6 => /usr/lib64/libXext.so.6 (0x00007fc0ba13f000)
        libSM.so.6 => /usr/lib64/libSM.so.6 (0x00007fc0b9f36000)
        libICE.so.6 => /usr/lib64/libICE.so.6 (0x00007fc0b9d19000)
        libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007fc0b99dc000)
        libxcb-xlib.so.0 => /usr/lib64/libxcb-xlib.so.0 (0x00007fc0b97da000)
        libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007fc0b95be000)
        libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007fc0b93bb000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fc0b91b7000)
        libFreeCADApp.so.2 => /opt/FreeCAD/lib64/libFreeCADApp.so.2 (0x00007fc0b8e97000)
        libboost_program_options.so.1.40.0 => /usr/lib64/libboost_program_options.so.1.40.0 (0x00007fc0b8c4a000)
        libboost_signals.so.1.40.0 => /usr/lib64/libboost_signals.so.1.40.0 (0x00007fc0b8a33000)
        libFreeCADBase.so.2 => /opt/FreeCAD/lib64/libFreeCADBase.so.2 (0x00007fc0b872e000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fc0b8512000)
        libboost_filesystem.so.1.40.0 => /usr/lib64/libboost_filesystem.so.1.40.0 (0x00007fc0b82fd000)
        libboost_system.so.1.40.0 => /usr/lib64/libboost_system.so.1.40.0 (0x00007fc0b80f9000)
        libz.so.1 => /lib64/libz.so.1 (0x00007fc0b7ee3000)
        libpython2.5.so.1.0 => /usr/lib64/libpython2.5.so.1.0 (0x00007fc0b7b7a000)
        libxerces-c.so.28 => /usr/lib64/libxerces-c.so.28 (0x00007fc0b7572000)
        libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007fc0b7266000)
        libm.so.6 => /lib64/libm.so.6 (0x00007fc0b7010000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fc0b6df9000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fc0b6aa0000)
        libexpat.so.1 => /lib64/libexpat.so.1 (0x00007fc0b6876000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fc0c0ebe000)
        libpcre.so.0 => /usr/lib64/libpcre.so.0 (0x00007fc0b664d000)
        libutil.so.1 => /lib64/libutil.so.1 (0x00007fc0b644a000)
        libicuuc.so.38 => /usr/lib64/libicuuc.so.38 (0x00007fc0b6107000)
        libicudata.so.38 => /usr/lib64/libicudata.so.38 (0x00007fc0b5431000

2010-01-01 01:00

 

FreeCAD.spec (Attachment missing)

dharter

2010-01-01 01:02

reporter   ~0000125

I have uploaded and attached the suse spec file which I modified. The original authors email is not valid.

wmayer

2010-01-01 09:07

administrator   ~0000126

Cool that you got it working now. Maybe it's best to have the packages on the public Suse mirrors so that people can download the packages via their system tools. Do you have a link for me so that I can add a note on our wiki.

I'll close this issue now.

BTW, Happy New Year 2010!

Issue History

Date Modified Username Field Change
2009-12-12 23:50 unauthenticated New Issue
2009-12-13 00:04 unauthenticated Note Added: 0000060
2009-12-13 07:16 Jriegel Note Added: 0000061
2009-12-13 07:16 Jriegel Status new => feedback
2009-12-14 09:06 wmayer Note Added: 0000066
2009-12-21 23:51 unauthenticated Note Added: 0000081
2009-12-22 00:00 dharter Note Added: 0000082
2009-12-22 09:35 wmayer Note Added: 0000084
2009-12-22 10:21 dharter Note Added: 0000085
2009-12-22 11:33 wmayer Note Added: 0000088
2009-12-22 21:47 dharter Note Added: 0000089
2009-12-22 22:12 wmayer Note Added: 0000090
2009-12-22 23:20 dharter Note Added: 0000091
2009-12-23 00:02 dharter Note Added: 0000092
2009-12-23 06:42 dharter Note Added: 0000093
2009-12-23 08:32 wmayer Note Added: 0000094
2009-12-23 12:47 dharter Note Added: 0000095
2009-12-23 13:51 unauthenticated Note Added: 0000096
2009-12-23 14:17 dharter Note Added: 0000097
2009-12-23 15:42 dharter Note Added: 0000098
2009-12-23 22:40 wmayer Note Added: 0000099
2009-12-24 06:04 dharter Note Added: 0000100
2009-12-24 13:27 wmayer Note Added: 0000101
2009-12-24 16:12 dharter Note Added: 0000102
2009-12-25 12:51 wmayer Note Added: 0000103
2009-12-25 21:23 dharter Note Added: 0000104
2009-12-26 09:47 wmayer Note Added: 0000105
2009-12-26 14:24 dharter Note Added: 0000106
2009-12-26 20:28 dharter File Added: config.log
2009-12-26 20:39 dharter Note Added: 0000107
2009-12-28 11:48 wmayer Note Added: 0000108
2009-12-28 21:19 dharter Note Added: 0000109
2009-12-28 22:48 dharter Note Added: 0000110
2009-12-29 08:42 wmayer Note Added: 0000111
2009-12-29 10:42 dharter Note Added: 0000112
2009-12-29 11:02 wmayer Note Added: 0000113
2009-12-29 13:54 dharter Note Added: 0000114
2009-12-29 13:55 dharter Note Edited: 0000114
2009-12-29 14:15 dharter Note Added: 0000115
2009-12-30 10:55 wmayer Note Added: 0000118
2009-12-31 02:07 dharter Note Added: 0000119
2009-12-31 09:10 wmayer Note Added: 0000120
2009-12-31 16:42 dharter Note Added: 0000122
2009-12-31 17:04 dharter Note Added: 0000123
2009-12-31 17:34 dharter Note Edited: 0000123
2010-01-01 00:58 dharter Note Added: 0000124
2010-01-01 01:00 dharter File Added: FreeCAD.spec
2010-01-01 01:02 dharter Note Added: 0000125
2010-01-01 09:07 wmayer Note Added: 0000126
2010-01-01 09:07 wmayer Assigned To => wmayer
2010-01-01 09:07 wmayer Status feedback => closed
2010-01-01 09:07 wmayer Resolution open => no change required
2010-01-10 15:57 wmayer Note Edited: 0000060
2010-01-10 15:58 wmayer Note Edited: 0000060