Il 6/30/2013 6:31 PM, Lewis S ha scritto:
Thanks Marco!
I now get complaints about start_thread_noexcept:
$ g++ -D THREADED multithread.cpp -l boost_system-mt -l boost_thread-mt
it works on my system, with
$ g++ --version
g++ (GCC) 4.5.3
/tmp/ccfP6V1v.o:multithread.cpp:(.text$_ZN5boost6thread12start_threadEv[boost::thread::start_thread()]+0xe):
undefined reference to `boost::thread::start_thread_noexcept()'
collect2: ld returned 1 exit status
Can you (or anyone) tell me how to go from the "undefined reference"
error to the name of the library to be loaded?
$ nm /usr/lib/libboost_thread-mt.dll.a |grep start_thread
00000000 I __imp___ZN5boost6thread12start_threadEv
00000000 T __ZN5boost6thread12start_threadEv
00000000 I __imp___ZN5boost6thread12start_threadERKNS_17thread_attributesE
00000000 T __ZN5boost6thread12start_threadERKNS_17thread_attributesE
Do the -l argument themselves require an order? If so, how do I learn
the required ordering (w/o trial&error)
-l requires an order if one library depends on a following one.
For your case both ways work
g++ -D THREADED multithread.cpp -l boost_thread-mt -l boost_system-mt
as there is no dependency between them
With gratitude,
Lewis
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple