[MacPorts] #36172: povray 3.7 fails with thread-local storage not supported
MacPorts
noreply at macports.org
Mon Sep 17 05:27:00 PDT 2012
#36172: povray 3.7 fails with thread-local storage not supported
----------------------------+--------------------------------
Reporter: peyser.alex@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.1.2
Resolution: | Keywords:
Port: povray |
----------------------------+--------------------------------
Comment (by ryandesign@…):
Replying to [ticket:36172 peyser.alex@…]:
> Povray was updated in a recent ticket because of libpng. But I can't
find a version of gcc on osx lion that actually compiles it --- and as far
as I can tell, it may require some version of clang (??? possibly ???).
The log you attached shows that you are on OS X 10.6 Snow Leopard, not
Lion.
> {{{
> :info:build /usr/bin/g++-4.2 -DHAVE_CONFIG_H -I. -I../.. -I../..
-I../../source -I../../source -I../../source/base -I../../unix -I../../vfe
-I../../vfe/unix -I/opt/local/include/SDL -D_GNU_SOURCE=1 -D_THREAD_SAFE
-D_THREAD_SAFE -I/opt/local/include/OpenEXR -I/opt/local/../include
-I/opt/local/../include -I/opt/local/../include -I/opt/local/../include
-I/opt/local/include -pthread -I/opt/local/include -I/usr/include -pipe
-Wno-multichar -Wno-write-strings -fno-enforce-eh-specs -s -O3 -ffast-math
-pipe -O2 -arch x86_64 -D_THREAD_SAFE -MT bbox.o -MD -MP -MF
.deps/bbox.Tpo -c -o bbox.o `test -f 'bounding/bbox.cpp' || echo
'./'`bounding/bbox.cpp
> }}}
The povray port does not specify a compiler, so it uses the default
compiler MacPorts specifies. You appear to have Xcode 3.x, because
MacPorts has chosen to use GCC 4.2 to compile this port.
> {{{
> :info:build make[3]: *** [boundingtask.o] Error 1
> :info:build make[3]: *** Waiting for unfinished jobs....
> :info:build In file included from
../../source/backend/scene/threaddata.h:101,
> :info:build from bounding/bbox.cpp:107:
> :info:build ../../source/backend/support/task.h:187: error: thread-local
storage not supported for this target
> :info:build make[3]: *** [bbox.o] Error 1
> }}}
You should report this problem to the developers of povray; they need to
fix it to be compatible with GCC on OS X. You could point them to
[http://lifecs.likai.org/2010/05/mac-os-x-thread-local-storage.html this
page] which seems to explain the problem. It compiled fine for me on
Mountain Lion with Xcode 4.4 and clang, so presumably clang does now have
an implementation of thread-local storage (and that page does not mention
that).
Replying to [comment:2 peyser.alex@…]:
> Tried with mp-gcc47, mp-gcc46, llvm-gcc42 (I think, since I set port
select gcc before port install)
Most ports including povray deliberately do not use what you set with
"port select gcc". If you want to specify a different compiler, you would
do it like this:
{{{
sudo port clean povray
sudo port install povray configure.compiler=clang
}}}
or:
{{{
sudo port clean povray
sudo port install povray configure.compiler=llvm-gcc42
}}}
--
Ticket URL: <https://trac.macports.org/ticket/36172#comment:3>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list