graphics/graphviz fails to install
freebsd-questions at herveybayaustralia.com.au
Thu Dec 30 14:34:56 UTC 2010
I'm following pr 147290, and I'm trying to fix it. I'm not sure how
OpenEXR got involved but it is, and I need some help figuring out posix
threads. I know I've bitten off way more than I can probably chew, but I
will anyway :) I swallowed whole a medium mandarin when I was ten, so
I'm used to it.
The output where it failed:
if test "x" = "x"; then if test -x /usr/local/bin/dot; then if test -x
/sbin/ldconfig; then /sbin/ldconfig 2>/dev/null; fi; /usr/local/bin/dot
-c; else /usr/local/bin/dot_static -c; fi; fi
terminate called after throwing an instance of 'Iex::EinvalExc'
what(): Cannot lock mutex (Invalid argument).
gmake: *** [install-exec-hook] Abort trap: 6 (core dumped)
Based on the info in the pr and looking at IlmThreadPool.cpp, it seems
that thread is locked in preparation for its destruction. It can't lock
and so it has a bitch about it and throws something.
Why I think along these lines is as I've read in the pr (someone more
experienced than me debugged this far) the program fails at the
lock(threadMutex) function and doesn't even run the finish() which shuts
them down nicely (as I see it). According to IlmThreadPool.cpp finish()
signals the threads to stop and waits for them. But if it can't lock and
finish() doesn't run then SHTF and it complains.
Am I way off track? Or am I clear as mud? I think I'm struggling to find
why it won't lock... One thought that crossed my mind is that the thread
and/or mutex doesn't exist at this point- hence the invalid argument.
I read wikipedia on posix threads, and I know that doesn't even come
close to what I facing here; I need to learn somehow though :)
More information about the freebsd-questions