SOLVED error: Could not link against boost_program_options !


#1

Hello I am trying to build synfig from source.

I cloned synfig from github.
Then I followed the instructions on: http://wiki.synfig.org/wiki/Dev:Build_Instructions
I was just going through typing in the lines of code one by one. Then I got to where I had to type in

./configure

for synfig-core (at this point I’d already typed ‘./configure’ in once for ETL, it worked fine then.)

it gave me this:

I tried doing:

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

but it still didnt work

thankyou for your help c:


#2

first i think that you should follow those instructions in order to setup the build : How to Build Synfig Studio in Ubuntu Karmic Koala 9.10
and also have a look to this thread also to well configure boostlibs: Boost lib >= 1.53
read to entire discussion development from both links…

under what system are you trying to build ?

Nota : Wiki development pages really needs some update !


#3

oh sorry I should’ve provided, that info.

I’m on linux mint 16 64 bit
and I’ll have a look at those links you sent me

thankyou


#4

okay so this is what I figured I had to do from the two links you sent me.
first I cloned synfig from guthub.
then I downloaded boost_1_55_0 and extracted it to /opt.
then I compiled it by running the commands:

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

then I created the build.sh file inside the synfig folder that was created when I cloned synfig from guthub.

[code]#!/bin/sh
cd synfig
CPUS=4
prefix=$(pwd)/install
export PKG_CONFIG_PATH="$prefix/lib/pkgconfig"
export PATH=$(pwd)/synfig-core/src/tool/.libs:$PATH
export CXX="/usr/bin/ccache /usr/bin/g++"

cd ETL &&
autoreconf --install --force &&
./configure --prefix $prefix &&
make install &&

cd …/synfig-core &&
libtoolize --ltdl --copy --force &&
autoreconf --install --force &&
./configure --prefix $prefix &&
make -j $CPUS install &&

cd …/synfig-studio &&
autoreconf --install --force &&
./configure --prefix $prefix &&
make -j $CPUS install[/code]

that is what was in the build.sh file

I then changed:

./configure --prefix $prefix &&

to

./configure --with-boost=/opt/boost_1_55_0 &&

but it still doesnt work.

I still get this error:

thankyou again


#5

Did you install it as well?:

./b2 install

Make sure that /opt/boost_1_55_0/include/ and /opt/boost_1_55_0/lib/ both exist and have the expected content (ie. headers and library files).

Only synfig-core needs the Boost library, did you add it to all three?


#6

maybe that’s where the problem come from, you must keep “–prefix $prefix”

(part of my fault, my summary was not very clear, i have rewrited it)


#7

okay, so I got rid of the first problem.

I had forgotten to type the

./b2 install

and when I looked for the include and lib folders they didnt exist, so I copied and pasted them from my /usr/local folder on my harddrive, and pasted them into my opt/boost_1_55_0 folder.

now it works fine until it spits out this error.

I have no idea what it means, tried googling but still to no avail.
any help would be appreciated thankyou


#8

there is typo, which is fixed in the master branch. Just pull the master to your local repository will work.

you can take a look at github.com/synfig/synfig/pull/127


#9

okay, thankyou that fixed that problem, except now I get the error:

at this point it has changed directory to synfig-studio

I googled it a bit and it said to ‘touch’ makefile.in.in so I added:

touch makefile.in.in

before:

make -j -t $CPUS install

I also tried putting it before:

./configure

with both I still get the error, I’m stuck as to what to do next.

Thankyou for your help


#10

it seems there is some of dependents missed. please make sure all necessary packages are installed.

In fact there is a automation build script can help you to check. It is available in synfig/autobuild. go to this dir and

$sh synfigstudio-linux-build.sh

#11

You have to execute bootstrap.sh before .configure synfig studio.
-G


#12

oh my god yes it’s done!!
this has consumed my life for the lst 2 days c:

the

synfigstudio-linux-build.sh

I dont think did anything, it said that nothing had been changed

running ./bootstrap before ./configure didn’t fix my problem, however it may have helped it.

what I ended up having to do was add intltoolize --force --copy && before ./configure --with-boost=/opt/boost_1_55_0 --enable-optimization=0 --prefix $prefix --enable-debug &&

found from this thread: [url][Success] 1 April Merge / 0.64pre on ubuntu12.04 like]

and now it all works.

I hope to be an active dev. for synfig in the future

thankyou all once again.


#13

welcome aboard :wink:

Please, could you had “Solved” in the initial post title ?


#14

Please notice what does bootstrap.h do:

github.com/synfig/synfig/blob/m … otstrap.sh

-G