7

I am building this DNP3 program and when I follow the build instructions ./configure does not make a make file. When I run it I get the following output:

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for style of include used by make... GNU
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking for boostlib >= 1.43... yes
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking whether the Boost::Date_Time library is available... yes
configure: error: Could not find a version of the library!

I think the last line may be causing the problem, but I have no idea what "the library" is. I installed boost with "sudo apt-get install libboost-all-dev" so I don't think that's it, but I have no idea.

Kyle Coulombe
  • 71
  • 1
  • 2
  • maybe the configure script is bad, this is sadly a common cuse of errors; you may look at the configure script to identify the line thet report the problem and try to undrstand why it fails (sometimes looks for a file in the wrong place) – OznOg Oct 31 '18 at 18:13

6 Answers6

12

The other answer almost worked for me. Try this, which is more likely if you're on a 64-bit machine:

./configure --with-boost-libdir=/usr/lib/x86_64-linux-gnu/

(worked on Ubuntu 14.04)

thejoelpatrol
  • 174
  • 1
  • 7
  • Well, I think it goes without saying that in a 64 bit system for the `--with-boost-libdir` flag you specify the `/usr/lib/x86_64-linux-gnu/` folder. – Joey Apr 23 '19 at 23:47
6

I solved by adding the library path with "--with-boost-libdir" to "configure". The path depends on the CPU architecture. For raspberry pi 3, for example, the command is:

./configure --with-boost-libdir=/usr/lib/arm-linux-gnueabihf/
Mario Di Ture
  • 61
  • 1
  • 1
2

None of the presented directories by the other answers didn't work for me even though I had this /usr/lib/x86_64-linux-gnu/ directory with its files inside.

So I managed to fix it by installing all the relevant dependencies: sudo apt-get install libboost-all-dev

I've been sticking with the error while trying to config bitcoin core BTW.

SReza S
  • 151
  • 1
  • 9
0

I was able to get around it using the following change for ./configure command:

./configure --with-boost-libdir=/usr/lib/i386-linux-gnu/
Kris
  • 363
  • 3
  • 11
0

For openSUSE Tumbleweed, you should install the libboost-x1_77_0-devel packages along with their dependencies, where x is: system, filesystem, test, and any other ones that are required (you'll see what more is required by the error message)

siya
  • 73
  • 7
0

[solved]I was able to fix this by installing libboost-all-dev on Ubuntu 22.04 by runningsudo apt-get install libboost-all-dev since the Boost version required(in my case) is >1.64

nmurgor
  • 402
  • 4
  • 8