Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Deluge is a BitTorrent Client. I am trying to build it from source, since I don't have privilege to install it as root.

I am using python setup.py build. But, it failed following message, why?

copying deluge/ui/web/themes/images/gray/slider/slider-v-thumb.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/gray/slider
copying deluge/ui/web/themes/images/gray/slider/slider-thumb.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/gray/slider
copying deluge/ui/web/themes/images/gray/panel/top-bottom.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/gray/panel
copying deluge/ui/web/themes/images/gray/tabs/tab-strip-bg.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/gray/tabs
copying deluge/ui/web/themes/images/yourtheme/window/right-corners.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/yourtheme/window
copying deluge/ui/web/themes/images/yourtheme/window/left-corners.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/yourtheme/window
copying deluge/ui/web/themes/images/yourtheme/window/left-right.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/yourtheme/window
copying deluge/ui/web/themes/images/yourtheme/window/top-bottom.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/yourtheme/window
creating build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/yourtheme/slider
copying deluge/ui/web/themes/images/yourtheme/slider/slider-v-thumb.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/yourtheme/slider
copying deluge/ui/web/themes/images/yourtheme/slider/slider-thumb.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/yourtheme/slider
copying deluge/ui/web/themes/images/yourtheme/slider/slider-bg.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/yourtheme/slider
copying deluge/ui/web/themes/images/yourtheme/slider/slider-v-bg.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/yourtheme/slider
copying deluge/ui/web/themes/images/yourtheme/panel/top-bottom.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/yourtheme/panel
copying deluge/ui/web/themes/images/yourtheme/grid/hmenu-lock.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/yourtheme/grid
copying deluge/ui/web/themes/images/yourtheme/grid/hmenu-unlock.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/yourtheme/grid
copying deluge/ui/web/themes/images/yourtheme/tabs/tab-strip-bg.png -> build/lib.linux-x86_64-2.4/deluge/ui/web/themes/images/yourtheme/tabs
running build_ext
building 'libtorrent' extension
gcc -pthread -shared -L/usr/lib64 -L/opt/local/lib -lboost_filesystem -lboost_date_time -lboost_iostreams -lboost_python -lboost_thread -lpthread -lssl -lz -o build/lib.linux-x86_64-2.4/deluge/libtorrent.so
/usr/bin/ld: cannot find -lboost_filesystem
collect2: ld returned 1 exit status
error: command 'gcc' failed with exit status 1
[mirror@innov deluge-1.3.5]$ echo $?
1

Edit 1: gcc version and os information

$(which gcc) --version
gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-52)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


cat /etc/issue
CentOS release 5.7 (Final)
Kernel \r on an \m

Edit 2: boost is referenced by setup.py in deluge

114     if OS == "linux":
115         if os.path.exists(os.path.join(sysconfig.get_config_vars()['LIBDIR'], \
116             'libboost_filesystem-mt.so')):
117             boost_filesystem = "boost_filesystem-mt"
118         elif os.path.exists(os.path.join(sysconfig.get_config_vars()['LIBDIR'], \
119             'libboost_filesystem.so')):
120             boost_filesystem = "boost_filesystem"
121         if os.path.exists(os.path.join(sysconfig.get_config_vars()['LIBDIR'], \
122             'libboost_date_time-mt.so')):
123             boost_date_time = "boost_date_time-mt"
124         elif os.path.exists(os.path.join(sysconfig.get_config_vars()['LIBDIR'], \
125             'libboost_date_time.so')):
126             boost_date_time = "boost_date_time"
127         if os.path.exists(os.path.join(sysconfig.get_config_vars()['LIBDIR'], \
128             'libboost_thread-mt.so')):
129             boost_thread = "boost_thread-mt"
130         elif os.path.exists(os.path.join(sysconfig.get_config_vars()['LIBDIR'], \
131             'libboost_thread.so')):
132             boost_thread = "boost_thread"
133
134         if 'boost_filesystem' not in vars():
135             boost_filesystem = "boost_filesystem-mt"
136         if 'boost_date_time' not in vars():
137             boost_date_time = "boost_date_time-mt"
138         if 'boost_thread' not in vars():
139             boost_thread = "boost_thread-mt"
140
141     elif OS == "freebsd":
142         boost_filesystem = "boost_filesystem"
143         boost_date_time = "boost_date_time"
144         boost_thread = "boost_thread"
145     else:
146         boost_filesystem = "boost_filesystem-mt"
147         boost_date_time = "boost_date_time-mt"
148         boost_thread = "boost_thread-mt"
149
150     librariestype = [boost_filesystem, boost_date_time,
151             boost_thread, 'z', 'pthread', 'ssl', 'crypto']
share|improve this question
    
hi can you tell us what operating system you are using and also run, $(which gcc) --version and please post the results in your question. You could also try just re-installing gcc. –  AlanTuring Oct 15 '12 at 18:40
    
@AlanTuring see edit 1:) is this problem of gcc? –  hugemeow Oct 15 '12 at 19:21

1 Answer 1

Your answer lies in the error message:

/usr/bin/ld: cannot find -lboost_filesystem
collect2: ld returned 1 exit status
error: command 'gcc' failed with exit status 1

Specifically this line: /usr/bin/ld: cannot find -lboost_filesystem. The linker was not able to resolve one of the dependencies. Its looking for the boost_filesystem library and was not able to find it. You will need to ensure that Boost is installed, and perhaps configure the build to point to a local install of boost if you have to install it locally.

share|improve this answer
    
how to install boost, if i am not root? do i have to build boost from source and install it to my home directory? is there any methods with which i don't need to build from source when i am not root? –  hugemeow Oct 15 '12 at 19:35
1  
Check out the boost docs: boost.org/doc/libs/1_51_0/more/getting_started/… Specifically look at section 5 on using the boost binaries. –  heavyd Oct 15 '12 at 19:58

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.