Repository navigation
cmake failure #71
Description
I normally us scons, now trying cmake. I'm not familiar with cmake.
Usually use:
python3 ~/scons/bootstrap.py --config=force --debug=stacktrace --with-boost-include=$(pwd)/../include --with-boost-lib=$(pwd)/../lib --with-eigen-include=/usr/include/eigen3 --prefix=$(pwd)/../.local install CCFLAGS='-g -O3 -march=native' --boost-python-lib=boost_python3
Now to convert to cmake, I have
At least these 2 problems:
- wrong python include! (2.7, should be 3.5)
- wrong eigen include path
I started with:
cmake -DNDARRAY_SWIG=OFF -DPYTHON_EXECUTABLE=/usr/bin/python3 ..
-- Boost version: 1.60.0
-- Found the following Boost libraries:
-- unit_test_framework
-- Configuring done
-- Generating done
-- Build files have been written to: /home/nbecker/ndarray.new.test/build
[nbecker@nbecker2 build]$ make VERBOSE=1
/usr/bin/cmake -H/home/nbecker/ndarray.new.test -B/home/nbecker/ndarray.new.test/build --check-build-system CMakeFiles/Makefile.cmake 0
/usr/bin/cmake -E cmake_progress_start /home/nbecker/ndarray.new.test/build/CMakeFiles /home/nbecker/ndarray.new.test/build/CMakeFiles/progress.marks
make -f CMakeFiles/Makefile2 all
make[1]: Entering directory '/home/nbecker/ndarray.new.test/build'
make -f include/CMakeFiles/preprocess_includes.dir/build.make include/CMakeFiles/preprocess_includes.dir/depend
make[2]: Entering directory '/home/nbecker/ndarray.new.test/build'
cd /home/nbecker/ndarray.new.test/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /home/nbecker/ndarray.new.test /home/nbecker/ndarray.new.test/include /home/nbecker/ndarray.new.test/build /home/nbecker/ndarray.new.test/build/include /home/nbecker/ndarray.new.test/build/include/CMakeFiles/preprocess_includes.dir/DependInfo.cmake --color=
make[2]: Leaving directory '/home/nbecker/ndarray.new.test/build'
make -f include/CMakeFiles/preprocess_includes.dir/build.make include/CMakeFiles/preprocess_includes.dir/build
make[2]: Entering directory '/home/nbecker/ndarray.new.test/build'
make[2]: Nothing to be done for 'include/CMakeFiles/preprocess_includes.dir/build'.
make[2]: Leaving directory '/home/nbecker/ndarray.new.test/build'
[ 38%] Built target preprocess_includes
make -f tests/CMakeFiles/ndarray-eigen.dir/build.make tests/CMakeFiles/ndarray-eigen.dir/depend
make[2]: Entering directory '/home/nbecker/ndarray.new.test/build'
cd /home/nbecker/ndarray.new.test/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /home/nbecker/ndarray.new.test /home/nbecker/ndarray.new.test/tests /home/nbecker/ndarray.new.test/build /home/nbecker/ndarray.new.test/build/tests /home/nbecker/ndarray.new.test/build/tests/CMakeFiles/ndarray-eigen.dir/DependInfo.cmake --color=
make[2]: Leaving directory '/home/nbecker/ndarray.new.test/build'
make -f tests/CMakeFiles/ndarray-eigen.dir/build.make tests/CMakeFiles/ndarray-eigen.dir/build
make[2]: Entering directory '/home/nbecker/ndarray.new.test/build'
[ 46%] Building CXX object tests/CMakeFiles/ndarray-eigen.dir/ndarray-eigen.cc.o
cd /home/nbecker/ndarray.new.test/build/tests && /usr/lib64/ccache/c++ -I/home/nbecker/ndarray.new.test/include -I/usr/include/python2.7 -I/home/nbecker/.local/lib/python3.5/site-packages/numpy/core/include -I/usr/include/eigen3/include -std=c++11 -o CMakeFiles/ndarray-eigen.dir/ndarray-eigen.cc.o -c /home/nbecker/ndarray.new.test/tests/ndarray-eigen.cc
In file included from /home/nbecker/ndarray.new.test/tests/ndarray-eigen.cc:11:0:
/home/nbecker/ndarray.new.test/include/ndarray/eigen.h:26:22: fatal error: Eigen/Core: No such file or directory
#include "Eigen/Core"
^
compilation terminated.
tests/CMakeFiles/ndarray-eigen.dir/build.make:62: recipe for target 'tests/CMakeFiles/ndarray-eigen.dir/ndarray-eigen.cc.o' failed
make[2]: *** [tests/CMakeFiles/ndarray-eigen.dir/ndarray-eigen.cc.o] Error 1
make[2]: Leaving directory '/home/nbecker/ndarray.new.test/build'
CMakeFiles/Makefile2:146: recipe for target 'tests/CMakeFiles/ndarray-eigen.dir/all' failed
make[1]: *** [tests/CMakeFiles/ndarray-eigen.dir/all] Error 2
make[1]: Leaving directory '/home/nbecker/ndarray.new.test/build'
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
[nbecker@nbecker2 build]$
Activity
hiostreas commentedon Jan 17, 2017
Can you give info about your OS? and the Version of python that you try to build?
nbecker commentedon Jan 17, 2017
This is fedora 25 linux (x86_64)
I just tried again and got a different result
Now build succeeds.
But it looks like only the headers are installed, the library
libboost_numpy.so
is not installed (and I don't think it got built either)