Boost logo

Boost Users :

Subject: Re: [Boost-users] boost compilation error
From: Dmitry V. Krivenok (krivenok_at_[hidden])
Date: 2009-01-16 06:11:29


Bijay Panda wrote:
> Hi,
> when i try this locate libboost_filesystem i get path like bellow
>
> bijay_at_cmp1:~/boost$ locate libboost_filesystem
> /usr/lib/libboost_filesystem-gcc41-mt-1_34_1.so.1.34.1
> /usr/lib/libboost_filesystem-gcc42-1_34_1.so.1.34.1
> /usr/lib/libboost_filesystem-gcc42-mt-1_34_1.so.1.34.1
> /usr/lib/libboost_filesystem-gcc41-1_34_1.so.1.34.1
> /var/cache/apt/archives/libboost_filesystem-gcc41-mt-1_34_1.so.1.34.1
> /var/cache/apt/archives/libboost_filesystem-gcc42-1_34_1.so.1.34.1
> /var/cache/apt/archives/libboost_filesystem-gcc42-mt-1_34_1.so.1.34.1
> /var/cache/apt/archives/libboost_filesystem-gcc41-1_34_1.so.1.34.1
> bijay_at_cmp1:~/boost$
> then i tried to compile like this
>
> g++ -o second boostThread.cpp -lboost_filesystem
> -L/usr/lib/libboost_filesystem-gcc41-1_34_1.so.1.34.1

The option "-L" specifies the directory containing the library (not the
library itself).
/usr/lib is standard path, so you can omit passing "-L" option.

Try this:
g++ -o second boostThread.cpp -lboost_filesystem-gcc42-1_34_1

I always create symlinks like
/usr/lib/libboost_filesystem.so --->
/usr/lib/libboost_filesystem-gcc42-1_34_1.so
after boost installation.

This results to something like this:

/usr/local/dev/boost-1.37.0/lib/libboost_filesystem.so ->
/usr/local/dev/boost-1.37.0/lib/libboost_filesystem-gcc43.so //
MANUALLY CREATED
/usr/local/dev/boost-1.37.0/lib/libboost_filesystem-gcc43.so ->
libboost_filesystem-gcc43-1_37.so.1.37.0 // AUTOMATICALLY CREATED BY BOOST

This approach allows write Makefiles independent of gcc and boost versions.
Instead of writing -lboost_filesystem-gcc42-1_34_1 you write
-lboost_filesystem.

It's strange that locate didn't find
/usr/lib/libboost_filesystem-gcc42-1_34_1.so
It should be symlink to /usr/lib/libboost_filesystem-gcc42-1_34_1.so.1.34.1

>
> it throws the same error.
>
> /usr/bin/ld: cannot find -lboost_filesystem
> collect2: ld returned 1 exit status
>
> Can u plz help me out.
>
> On Fri, Jan 16, 2009 at 1:14 PM, Dmitry V. Krivenok
> <krivenok_at_[hidden] <mailto:krivenok_at_[hidden]>> wrote:
>
> Bijay Panda wrote:
>
> Hi All,
> I am trying to run boost1.34.1 in ubuntu 7.10.
> Compiling the program like this
>
> g++ -o fst boostThread.cpp -lboost_filesystem
>
> throws error like bellow.
>
> /usr/bin/ld: cannot find -lboost_filesystem
> collect2: ld returned 1 exit status
>
> Can any one please tell me how to get rid of this.
>
>
> g++ can't find shared library libboost_filesystem.so
>
> Provide the path to the library using -L option.
> For example
> g++ -o fst boostThread.cpp -lboost_filesystem
> -L/usr/local/boost-1.34.1/lib
>
> If you don't know where library located try the following commands:
> sudo updatedb
> locate libboost_filesystem.so
>
> On my system this command produces this output:
> krivenok_at_develop2 10:44:55
> ~/dev_builds/boost-trunk/boost/date_time $ locate
> libboost_filesystem.so
> /usr/local/old_dev/boost-1.34.1/lib/libboost_filesystem.so
> /usr/local/dev/boost-1.37.0/lib/libboost_filesystem.so
> /usr/lib/libboost_filesystem.so
> krivenok_at_develop2 10:45:02
>
>
> --
> Thanks & Regards
> Bijay Kumar Panda
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Boost-users mailing list
> Boost-users_at_[hidden] <mailto:Boost-users_at_[hidden]>
> http://lists.boost.org/mailman/listinfo.cgi/boost-users
>
>
>
> --
> Sincerely yours, Dmitry V. Krivenok
> Orange System Company
> Saint-Petersburg, Russia
> work phone: +7 812 332-32-40
> cellular phone: +7 921 576-70-91
> e-mail: krivenok_at_[hidden] <mailto:krivenok_at_[hidden]>
> web: http://www.orangesystem.ru
> skype: krivenok_dmitry
> jabber: krivenok_dmitry_at_[hidden] <mailto:krivenok_dmitry_at_[hidden]>
> icq: 242-526-443
>
>
>
>
> --
> Thanks & Regards
> Bijay Kumar Panda
> Mob-9739591816
> bijaykumar.mail_at_[hidden] <mailto:bijaykumar.mail_at_[hidden]>
> bijaykumar_panda_at_[hidden] <mailto:bijaykumar_panda_at_[hidden]>
>

-- 
Sincerely yours, Dmitry V. Krivenok
Orange System Co., Ltd.
Saint-Petersburg, Russia
work phone: +7 812 332-32-40
cellular phone: +7 921 576-70-91
e-mail: krivenok_at_[hidden]
web: http://www.orangesystem.ru
skype: krivenok_dmitry
jabber: krivenok_dmitry_at_[hidden]
icq: 242-526-443

Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net