On May 5, 2008, at 3:17 AM, Sisyphus wrote:
----- Original Message ----- From: "Edward Peschko" <[EMAIL PROTECTED]>. .Can't load _Inline/lib/auto/aab_p_6230/aab_p_6230.so' for module aab_p_6230: lib/libipworksssl.so.6: Undefined symbol "pthread_mutex_lock" atIf you reckon that you won't actually need the genuine pthread_mutex_lock, you could just code one up yourself and put it (eg) at the beginning of your C/C++ code:void pthread_mutex_lock() {}I've had success resolving undefined symbols using hacks like that in the past (though I've not actually tried it with Inline).Other than that, I guess you'll have to find the library that defines the symbol "pthread_mutex_lock" and specifically link that library in.
That library would be libpthread. The issue with defining a bogus mutex lock is that eventually you'll hit that concurrent access that corrupts your memory and causes very weird action at a distance issues. I recommend linking with -lpthread and sparing yourself the headache :) These days on linux the pthread library is frequently in / lib/. You can inspect the symbols via "nm /lib/libpthread.so.<version>".
That being said, I would have expected the -pthread or -pthreads option in gcc to take care of that for you. What version of gcc and OS are you using?
For what it's worth, I wrote a simple CORBA client library that used threads internally and created C wrappers for embedding it into perl. It worked out fine, but I did have to link to the appropriate threading library to get it working.
-- J. Another hour, another mile, one more year Your older self may whisper in your ear The effort is illusion But later hold you in their arms with the gratitude Of a person who lived without regret.
PGP.sig
Description: This is a digitally signed message part