opencog / cogserver

Distributed AtomSpace Network Server
Other
16 stars 23 forks source link

make check fails trying to find PyIncludeWrapper.h #26

Closed rekado closed 4 years ago

rekado commented 4 years ago

This was previously reported at #24

As of commit a932b229fa0acd56f07ed0db72e023bb213b2d21 this is still a problem. make check aborts like this:

...
[ 88%] Building CXX object tests/cython/CMakeFiles/PyEvalUTest.dir/PyEvalUTest.cpp.o
cd /tmp/guix-build-cogserver-0-2.a932b22.drv-0/build/tests/cython && /gnu/store/x3jx25cd3q363mr7nbgzrhrv1vza6cf7-gcc-7.4.0/bin/c++  -DCONFDIR=\"/gnu/store/90b5vm87vlwar6w8g3hcmmm9i4md5md5-cogserver-0-2.a932b22/etc\" -DDATADIR=\"/gnu/store/90b5vm87vlwar6w8g3hcmmm9i4md5md5-cogserver-0-2.a932b22/share/opencog\" -DGUILE_SITE_DIR=\"/gnu/store/90b5vm87vlwar6w8g3hcmmm9i4md5md5-cogserver-0-2.a932b22/share/guile/site/2.2/\" -DHAVE_ATOMSPACE -DHAVE_COGUTIL -DHAVE_GUILE -DHAVE_GUILE2 -DHAVE_GUILE_2_2 -DPROJECT_BINARY_DIR=\"/tmp/guix-build-cogserver-0-2.a932b22.drv-0/build\" -DPROJECT_SOURCE_DIR=\"/tmp/guix-build-cogserver-0-2.a932b22.drv-0/source\" -I/gnu/store/1mkkv2caiqbdbbd256c4dirfi4kwsacv-guile-2.2.6/include/guile/2.2 -I/tmp/guix-build-cogserver-0-2.a932b22.drv-0/source -I/gnu/store/f5g4av3mwn7zr81yqr1gn9hpb5d2c4m4-boost-1.70.0/include -I/gnu/store/ifsrj0bbpvq3rayq86nr778y3f50li0n-cogutil-2.0.3-1.b07b41b/include -I/gnu/store/xs9biw1wpwjjp42v5806s1jrzhk76h4c-atomspace-5.0.3-1.86c848d/include -I/tmp/guix-build-cogserver-0-2.a932b22.drv-0/build -I/gnu/store/x5fj048bvqpafb07dpidy36fj7l3qfnx-python-minimal-3.7.4/include/python3.7m -I/tmp/guix-build-cogserver-0-2.a932b22.drv-0/source/tests/cython  -Wall -fPIC -Wno-variadic-macros -fopenmp -std=gnu++11 -O2 -g -DNDEBUG   -o CMakeFiles/PyEvalUTest.dir/PyEvalUTest.cpp.o -c /tmp/guix-build-cogserver-0-2.a932b22.drv-0/build/tests/cython/PyEvalUTest.cpp
In file included from /tmp/guix-build-cogserver-0-2.a932b22.drv-0/build/tests/cython/../../../source/tests/cython/PyEvalUTest.cxxtest:6:0,
                 from /tmp/guix-build-cogserver-0-2.a932b22.drv-0/build/tests/cython/PyEvalUTest.cpp:24:
/tmp/guix-build-cogserver-0-2.a932b22.drv-0/source/opencog/cogserver/modules/python/PyMindAgent.h:13:10: fatal error: opencog/cython/PyIncludeWrapper.h: No such file or directory
 #include <opencog/cython/PyIncludeWrapper.h>
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[3]: *** [tests/cython/CMakeFiles/PyEvalUTest.dir/build.make:70: tests/cython/CMakeFiles/PyEvalUTest.dir/PyEvalUTest.cpp.o] Error 1
make[3]: Leaving directory '/tmp/guix-build-cogserver-0-2.a932b22.drv-0/build'
make[2]: *** [CMakeFiles/Makefile2:856: tests/cython/CMakeFiles/PyEvalUTest.dir/all] Error 2
make[2]: Leaving directory '/tmp/guix-build-cogserver-0-2.a932b22.drv-0/build'
make[1]: *** [CMakeFiles/Makefile2:129: CMakeFiles/tests.dir/rule] Error 2
make[1]: Leaving directory '/tmp/guix-build-cogserver-0-2.a932b22.drv-0/build'
make: *** [Makefile:202: tests] Error 2

Test suite failed, dumping logs.
command "make" "tests" failed with status 2

I'm building in an isolated environment using GNU Guix. The environment contains atomspace, boost, cogutil, gmp, Guile 2.2, cxxtest, Python 3, and pkg-config (in addition to the GCC 7 toolchain).

Python 3 is checked for during the configure phase. I would not include it in the environment if it was possible to configure without it.

linas commented 4 years ago

Dohh, Sorry, OK, I hurriedly mis-read; this commit ec5f3b9590db0f6a085b5d0320f5d3710e0f1635 should fix it; I just pushed it.

linas commented 4 years ago

BTW, where is your guix conf file? Do you want to include it in this repo? If so, just make a pull req.

rekado commented 4 years ago

I added a cogserver package to Guix, so there's no need for a separate file. it's part of the (gnu packages opencog) module. To enter an environment for hacking on cogserver one would run guix environment cogserver with a recent Guix.

Thanks for the fix. With this commit the test target builds fine.