Compiling libhdbpp-extraction-cpp

Hi,

I am having trouble compiling the C++ extraction library for HDB++: libhdbpp-extraction-cpp. I have cloned https://gitlab.com/tango-controls/hdbpp/libhdbpp-extraction-cpp.git and followed the instructions in the README.

I first get this error when running automake:

$ automake –add-missing
configure.ac:31: error: required file './ltmain.sh' not found


Then, ./configure reports these errors:

./configure: line 19589: AX_SWIG_ENABLE_CXX: command not found
./configure: line 19590: AX_SWIG_MULTI_MODULE_SUPPORT: command not found
./configure: line 19591: AX_SWIG_PYTHON: command not found
./configure: line 19592: SWIG_ENABLE_CXX: command not found
./configure: line 19593: SWIG_PYTHON: command not found
checking for a Python interpreter with version >= 2.6… python
checking for python… /bin/python
checking for python version… 3.6
checking for python platform… linux
checking for python script directory… ${prefix}/lib/python3.6/site-packages
checking for python extension module directory… ${exec_prefix}/lib64/python3.6/site-packages
checking that generated files are newer than configure… done
configure: creating ./config.status
config.status: error: cannot find input file: `Makefile.in'


I am using a CentOS 8 with autoconf-2.69-29 and automake-1.16.1-7.

How do I compile libhdbpp-extraction-cpp?

Thanks,
Andre
Hi,

Sorry for my answer, it might not be the best one to address the problem. I am not so used to autotools, so I made a branch to compile the extractor with cmake (https://gitlab.com/tango-controls/hdbpp/libhdbpp-extraction-cpp/-/tree/cmake_build).

I might have changed the library name, and you might miss some functionalities (there is some python stuff that I don't know what to do with, but it seems it was causing the troubles), but it builds…

It's a bit quick, so here are the instructions to build:
git clone https://gitlab.com/tango-controls/hdbpp/libhdbpp-extraction-cpp.git
cd libhdbpp-extraction-cpp
git checkout cmake_build
mkdir build
cd build
cmake ..
make


Hope it helps,

Cheers,
Damien
Hello Andre, as to ltmain.sh related problem, try executing autoreconf and, if I remember correctly, libtoolize.

To build the hdbpp extraction library, you need swig alongside swig devel libraries. I guess this is related to the second issue you are encountering.

I agree with Damien about autotools not being the best choice these days. I don't like cmake either, though I am not an expert here. On my side, I could put some effort in migrating to meson, with which I've had only positive experiences so far.

Kind regards.

Giacomo
Hi Damien, Giacomo,

Thanks for both your replies. Both solutions work fine. For autotools, libtoolize did the trick. And the CMake branch builds out of the box.

(Sorry about the delay in my response; I have been "off the grid" for quite a while due the pandemic.)

Thanks,
Andre
 
Register or login to create to post a reply.