EMAN2 Compilation Frequent Asked Questions
Q: I am trying to compile''' PyQt4 '''on my Linux, after I type "python configure.py", I got the error "Error: Failed to create ./qtdirs using platform linux-g++. Make sure your compiler is installed correctly and you have a working make on your PATH." How should I do?
A: That means you don't have a working qt4 qmake in your PATH. If you compiled and installed Qt4/x11 to its default path, /usr/local, it will be installed in /usr/local/Trolltech/Qt-4.3.1(if your Qt version is 4.3.1), so you need set your PATH to include /usr/local/Trolltech/Qt-4.3.1/bin, and LD_LIBRARY_PATH to include /usr/local/Trolltech/Qt-4.3.1/lib.
Q: I got compilation error when I try to compile EMAN2 on SUSE 11.0:
* Scanning dependencies of target pyAligner2 [ 80%] Building CXX object libpyEM/CMakeFiles/pyAligner2.dir/libpyAligner2.o In file included from /usr/include/boost/python/class.hpp:29, from /usr/include/boost/python.hpp:18, from /home/gtang/EMAN2/src/eman2/libpyEM/libpyAligner2.cpp:3: /usr/include/boost/python/detail/def_helper.hpp:192: error: declaration of 'typename boost::python::detail::keyword_extract<boost::tuples::tuple<const T1&, const T2&, const T3&, const T4&, boost::python::default_call_policies, boost::python::detail::keywords<0u>, const char*, void (boost::python::detail::not_specified::*)(), boost::tuples::null_type, boost::tuples::null_type> >::result_type boost::python::detail::def_helper<T1, T2, T3, T4>::keywords() const' /usr/include/boost/python/args_fwd.hpp:35: error: changes meaning of 'keywords' from 'struct boost::python::detail::keywords<0u>' make[2]: *** [libpyEM/CMakeFiles/pyAligner2.dir/libpyAligner2.o] Error 1 make[1]: *** [libpyEM/CMakeFiles/pyAligner2.dir/all] Error 2 make: *** [all] Error 2
A: The boost.python 1.34.1 package installed by SUSE 11.0's yast has problem. This has been fixed by later boost-devel package (boost-devel-1.34.1-42.2.i586). Please do a yast update for your SUSE 11.0.