Boost lib >= 1.53


#1

In order to build synfig (core) you need boost libs >= 1.53 since Merge pull request #105 from genete/dynamics

  • Odeint : Solving ordinary differential equations.
  • Author(s) : Karsten Ahnert and Mario Mulansky
  • First Release : 1.53.0

On debian wheezy, i have tried to update boost from jessie repository without success and actually, i can’t build ! …

/ EDIT / few days later … done ! , thank’s to g’ to be there next to this forum …
Solved (in my case) by

  • a commit (so if you are here, you should already have the correct things somewhere in configure.ac)
  • ./configure –with-boost=/opt/boost_1_55_0 --enable-optimization=0 --prefix $prefix --enable-debug && (for synfig-core build)
  • export LD_LIBRARY_PATH=/opt/boost_1_55_0/lib:$LD_LIBRARY_PATH (in ~/bash.rc for example)
    / END EDIT /

SOLVED error: Could not link against boost_program_options !
SOLVED error: Could not link against boost_program_options !
#2

I think that you don’t need the packages, just download the sources and add them to your build environment:

boost.org/doc/libs/1_55_0/mo … iants.html

-G


#3

i have installed boost 1.55 from sources using (from boost install doc)

./bootstrap.sh --prefix=/opt/boost_1_55_0
./b2

in my Synfig/build-debug.sh i have added --with-boost option :

./configure --with-boost=/opt/boost_1_55_0 --enable-optimization=0 --prefix $prefix --enable-debug &&

and so i have

....
checking for boostlib >= 1.32.0... yes
checking whether the Boost::Program_Options library is available... yes
checking for exit in -lboost_program_options... yes
.....
$BOOST_CPPFLAGS ------------------> '-I/opt/boost_1_55_0/include'
$BOOST_LDFLAGS -------------------> '-L/opt/boost_1_55_0/lib'
....

but still headers are not found !

valuenode_dynamic.cpp:37:56: fatal error: boost/numeric/odeint/integrate/integrate.hpp: No such file or directory

any idea ?

note : after multiple attempt i have also uninstalled boost 1.49 form the package
build-debug.sh.txt (677 Bytes)
buildfailboost.txt (49.8 KB)


#4

Please rebuild all using latest master.
-G


#5

i knew you will answer that … :wink:

sorry to insist, same result with last master.

checking for boostlib >= 1.53.0... yes

look like something is “missing” around BOOST_CPPFLAGS BOOST_LDFLAGS usage ?


#6

In OSX (formerly the build system is similar) it works just out of the box. I don’t have time not to fiddle with Linux but I insist: You don’t need to build anything because the libraries are just headers.

I hope that Konstantin can help you on this.
-G


#7

yep, the flags where not added to SYNFIG_LIBS/SYNFIG_CFLAGS in configure.ac … i will send a commit.

github.com/synfig/synfig/pull/108


#8

Good to know that you fixed it yourself. Lesson learned! :wink:
-G


#9

yep… glad to did it

i stilll have something rare (i need to look at) but i can build all binaries (and see a dinamics smiley ! !!) at least

Making install in images make[1]: entrant dans le répertoire « /home/haricot/Sources/Synfig/synfig/synfig-studio/images » export commit_id=`git log --no-color -1 | head -n 1 | cut -f 2 -d ' ' | cut -c -6` && \ export commit_date=`git show --pretty=format:%ci HEAD | head -c 10` && \ export branch=`git branch -a --no-color --contains HEAD | sed -e s/\*\ // | sed -e s/\(no\ branch\)// | tr '\n' ' ' | tr -s ' ' | sed s/^' '//` && \ export branch=`echo $branch | egrep origin/master > /dev/null && echo master || echo $branch | cut -d ' ' -f 1 | sed -e 's/.*\///'` && \ sed "s|%branch%|$branch|" splash_screen_development.sif.in | sed "s|%commit_date%|$commit_date|" | sed "s|%commit_id%|$commit_id|" | sed "s|synfig_icon.sif#|./synfig_icon.sif#|" > splash_screen_development.sif synfig -q splash_screen_development.sif -o splash_screen.png --time 0 synfig: error while loading shared libraries: libboost_program_options.so.1.55.0: cannot open shared object file: No such file or directory


#10

That’s for program options not for odeint. Maybe there is needed something additional in boost program options that yes needs to be a binary library (not simply a header). It is possible that program options has been broken (and so the CLI complains).
Still the path to libraries looks not full fixed. But the path to headers is right now.
-G


#11

(last?) yep,
i have solved that by setting LD_LIBRARY_PATH (can be done in ~/.bashrc for example)

export LD_LIBRARY_PATH=/opt/boost_1_55_0/lib:$LD_LIBRARY_PATH

#12

... checking for boostlib >= 1.53.0... yes checking whether the Boost::Program_Options library is available... no configure: error: ** You need to install Boost program-options library ...

get an error as well. no idea at the moment, it did work without any issue yesterday, but today i reinstalled my archlinux box (vmware), then i have the boost related issue. :frowning:


#13

can you paste result of :

$ locate libboost | grep program_options

#14

thanks.

My fault, I remember my laptop was power off due to the buttery empty when my compiling just started and it cased the file system of my archlinux (virtual machine) is broken somehow, it is not easy to find out because the system still works as normal. But after that, the boost and boost-libs were broken as well. After reinstalled them by enable “force” option, it works again.