wuguangjun wrote:
> When I build boost_1_38, I use 'configure -prefix=/usr' command to put boost files in /usr/ directory.
> I compile Lintel a paser for cello99, a error occurs: the information is as follows:
> /usr/include/boost-1_38/boost/thread/tss.hpp:82: undefined reference to 'boost::detail::get_tss_data(void const*)'
>
> Is it a bug for boost or some other causes? Would anyone help me?
>
I believe that DataSeries and Lintel use CMake for building, right?
It sounds like it isn't linking to the Boost.Thread library.
What is the linker command line?
In Christ,
Steven Watanabe
_______________________________________________
Boost-users mailing list
Boost...@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users
wuguangjun wrote:
> Thank you for your reply, Lintel and DateSeries really use CMake for building. I re-install CentOS5.3 and all the other needed tools, the error occured again, so I think there must be something wrong. The installing process and error messages are as follow:
>
> [boost]
> ./configure -prefix=/usr -with-icu
> make make install
>
> The result is 2 objects failed and 8 objects skip. I cant find the building log so I cant offer you the detail information.
>
There are only a few errors so you can run make again
to find out what failed. Alternately, you can check that the Boost.Thread
library is present in /usr/lib.
> [Lintel]
> Linking CXX executable pthread
> CMakeFiles/pthread.dir/pthread.o: In function `boost::thread_specific_ptr<double>::get() const':
> /usr/include/boost-1_38/boost/thread/tss.hpp:82: undefined reference to `boost::detail::get_tss_data(void const*)'
> CMakeFiles/pthread.dir/pthread.o: In function `boost::thread_specific_ptr<double>::reset(double*)':
> /usr/include/boost-1_38/boost/thread/tss.hpp:103: undefined reference to `boost::detail::set_tss_data(void const*, boost::shared_ptr<boost::detail::tss_cleanup_function>, void*, bool)'
> CMakeFiles/pthread.dir/pthread.o: In function `boost::thread_specific_ptr<double>::get() const':
> /usr/include/boost-1_38/boost/thread/tss.hpp:82: undefined reference to `boost::detail::get_tss_data(void const*)'
>
> In the CMakeList.txt for the library:
>
> IF(THREADS_ENABLED)
> LINTEL_SIMPLE_TEST(pthread)
> TARGET_LINK_LIBRARIES(pthread LintelPThread)
> ENDIF(THREADS_ENABLED)
>
> So I think the command is just "-lpthread" .
> I don't know if these information is enough for you.
>
It should also be linking to libboost_thread-...
If there is nothing that looks like it could be
the Boost.Thread library in CMakeLists.txt,
I suggest that you take this up with HP.
In Christ,
Steven Watanabe