Richard Shaw wrote on 04/14/2018 04:38 AM:
I've posted to upstreams mailing list but have not as of yet gotten a response. I've run into the following error trying to build the latest version of FreeCAD which requires python-pycxx but Rawhide now has 7.0.3 and the bundled version appears to be 6.2.8. I'm used to undefined references indicating that a library is missing at the linker stage, but in the case of python-pycxx, it's a copylib. There is no library to link to and it seems to be picking up the source and headers at the correct location so I'm at a loss... [ 24%] Linking CXX shared library ../../lib/libFreeCADBase.so cd /builddir/build/BUILD/FreeCAD-0.17/build/src/Base && /usr/bin/cmake -E cmake_link_script CMakeFiles/FreeCADBase.dir/link.txt --verbose=1 /usr/bin/c++ -fPIC -Wall -Wextra -Wno-write-strings -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -mcet -fcf-protection -std=c++11 -D_OCC64 -Wl,--no-undefined -shared -Wl,-soname,libFreeCADBase.so -o ../../lib/libFreeCADBase.so CMakeFiles/FreeCADBase.dir/usr/src/CXX/cxxextensions.c.o CMakeFiles/FreeCADBase.dir/usr/src/CXX/cxx_extensions.cxx.o CMakeFiles/FreeCADBase.dir/usr/src/CXX/cxxsupport.cxx.o CMakeFiles/FreeCADBase.dir/usr/src/CXX/IndirectPythonInterface.cxx.o CMakeFiles/FreeCADBase.dir/Axis.cpp.o CMakeFiles/FreeCADBase.dir/AxisPyImp.cpp.o CMakeFiles/FreeCADBase.dir/Base64.cpp.o
<snip> CMakeFiles/FreeCADBase.dir/PyTools.c.o
CMakeFiles/FreeCADBase.dir/PreCompiled.cpp.o -lpython2.7 -lxerces-c -lboost_filesystem -lboost_program_options -lboost_regex -lboost_signals -lboost_system -lboost_thread -lboost_chrono -lboost_date_time -lboost_atomic -lz -lQtCore -lutil -ldl -lzipios BUILDSTDERR: CMakeFiles/FreeCADBase.dir/usr/src/CXX/cxx_extensions.cxx.o: In function `Py::Object::validate()': BUILDSTDERR: /usr/src/CXX/Python2/cxx_extensions.cxx:122: undefined reference to `Py::ifPyErrorThrowCxxException()' BUILDSTDERR: CMakeFiles/FreeCADBase.dir/usr/src/CXX/cxx_extensions.cxx.o: In function `Py::PythonExtensionBase::callOnSelf(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Py::Object const&, Py::Object const&, Py::Object const&, Py::Object const&, Py::Object const&, Py::Object const&, Py::Object const&, Py::Object const&, Py::Object const&)': BUILDSTDERR: /usr/include/CXX/Python2/Objects.hxx:2450: undefined reference to `Py::ifPyErrorThrowCxxException()' BUILDSTDERR: /usr/include/CXX/Python2/Objects.hxx:2426: undefined reference to `Py::ifPyErrorThrowCxxException()' BUILDSTDERR: /usr/include/CXX/Python2/Objects.hxx:2426: undefined reference to `Py::ifPyErrorThrowCxxException()' BUILDSTDERR: /usr/include/CXX/Python2/Objects.hxx:2426: undefined reference to `Py::ifPyErrorThrowCxxException()' BUILDSTDERR: CMakeFiles/FreeCADBase.dir/usr/src/CXX/cxx_extensions.cxx.o:/usr/include/CXX/Python2/Objects.hxx:2426: more undefined references to `Py::ifPyErrorThrowCxxException()' follow BUILDSTDERR: collect2: error: ld returned 1 exit status Thanks, Richard
Py::ifPyErrorThrowCxxException() is defined in /usr/src/CXX/Python2/cxx_exceptions.cxx , so you have to also compile and link this file. Regards, Mamoru _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx