Skip to content

Release package 3.0.12 cannot be compiled with -DWITH_PYTHON=1 #32

@cyrilbouvier

Description

@cyrilbouvier

I downloaded the .tar.gz package from https://github.com/SimonRohou/tubex-lib/releases/tag/v3.0.12
I wanted to compiled it with the python bindings. My cmake commands was:

cmake -DCMAKE_INSTALL_PREFIX=/nfs/work/contredo/software/tubex/3.0.12/ibex/2.8.9/gaol/none -DWITH_PYTHON=1 ..

There was several problems:

  1. Cmake was unable to find the correct Tubex version (because the tubex directory is not a git repo, the cmake command version_from_git failed, but it did not prevent cmake to continue). See the start of the cmake output below. [ This error also appears without -DWITH_PYTHON=1 ]

  2. The cmake command failed with the error

CMake Error at python/CMakeLists.txt:5 (add_subdirectory):
  The source directory

    /nfs/work/contredo/src/tubex-lib-3.0.13/python/pybind11

  does not contain a CMakeLists.txt file.

I was able to fix this by downloading the pybind11 source code into the directory (the problem is that the submodule is not added into the .tar.gz archive).
This error does not appears if I remove -DWITH_PYTHON=1.

  1. With the fix from 2, the cmake command successfully finished (see the output below). But the make command failed with the error
[ 74%] Building CXX object python/CMakeFiles/tube.dir/src/core/arithmetic/tubex_py_arithmetic.cpp.o
[ 75%] Building CXX object python/CMakeFiles/tube.dir/src/core/cn/tubex_py_ContractorNetwork.cpp.o
/nfs/work/contredo/src/tubex-lib-3.0.12/python/src/core/cn/tubex_py_ContractorNetwork.cpp:21:10: fatal error: tubex_py_ContractorNetwork_docs.h: No such file or directory
 #include "tubex_py_ContractorNetwork_docs.h"
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

This error does not appears if I remove -DWITH_PYTHON=1.

Cmake output:

-- Found Git: /usr/bin/git (found version "1.8.3.1") 
CMake Warning at scripts/CMakeModules/version_from_git.cmake:66 (message):
  [MunkeiVersionFromGit] Failed to execute Git: fatal: Not a git repository
  (or any parent up to mount point /nfs)

  Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
Call Stack (most recent call first):
  CMakeLists.txt:9 (version_from_git)


-- The CXX compiler identification is GNU 7.5.0
-- Check for working CXX compiler: /trinity/shared/apps/cv-standard/gcc/7.5.0/bin/c++
-- Check for working CXX compiler: /trinity/shared/apps/cv-standard/gcc/7.5.0/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Full project version is 
-- Configuring build for tubex-lib 
-- Configuring tubex-lib in DEBUG mode as none was specified.
-- Running on system Linux-3.10.0-514.10.2.el7.x86_64 with processor x86_64
-- Using CMake 3.6.0
-- C++ compiler: GNU 7.5.0
-- Will build static libraries
-- Found IBEX version 2.8.9
-- Found Doxygen: /usr/bin/doxygen (found version "1.8.5") 
-- Failed to find sphinx-build executable (missing:  SPHINX_EXECUTABLE) 
-- Sphinx not found, not able to generate/install the manual.
-- Found PythonInterp: /trinity/shared/apps/local/Python/3.8.2/bin/python3.8 (found version "3.8.2") 
-- Found PythonLibs: /trinity/shared/apps/local/Python/3.8.2/lib/libpython3.8.a
-- pybind11 v2.5.dev1
-- /!\ Run "make api" for generating Doxygen doc, then "cmake .." again, before "make"
-- Generating docstrings from doxygen files...
-- /!\ Enable to build doc files (generate XML Doxygen files first)
-- Performing Test HAS_FLTO
-- Performing Test HAS_FLTO - Success
-- LTO enabled
-- Configuring done
-- Generating done
-- Build files have been written to: /nfs/work/contredo/src/tubex-lib-3.0.12/build-ibex-2.8.9-gaol-none

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions