[MacPorts] #36172: povray 3.7 fails with thread-local storage not supported
#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 Keywords: | Port: ---------------------------+-------------------------------- 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 ???). :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 :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 -- Ticket URL: <https://trac.macports.org/ticket/36172> MacPorts <http://www.macports.org/> Ports system for Mac OS
#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 | ----------------------------+-------------------------------- Changes (by ciserlohn@…): * port: => povray Old description:
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 ???).
: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 :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
New description: 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 ???). {{{ :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 :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 ]]] -- Comment: Please try a clean build and attach the log if it fails: {{{ $ sudo port clean povray $ sudo port selfupdate $ sudo port -d install povray }}} In the future please remember to use [wiki:WikiFormatting] and fill in the port field. -- Ticket URL: <https://trac.macports.org/ticket/36172#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#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 peyser.alex@…): Tried with mp-gcc47, mp-gcc46, llvm-gcc42 (I think, since I set port select gcc before port install) -- Ticket URL: <https://trac.macports.org/ticket/36172#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#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
#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 peyser.alex@…):
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).
From the mailing lists, they've known about it for several years and have decided that that's not going to happen (fixing it to work on old gcc's). So apparently the resolution is that this port will only work with Xcode > 4, unless anyone happens to know a variety of gcc or clang from earlier versions where thread local variables have crept in. Clang-3.1 from macports fails here as well, using configure.compiler and configure.cxx. -- Ticket URL: <https://trac.macports.org/ticket/36172#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#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@…): Ok. Then you could install the clang-3.2 port and compile with: {{{ sudo port clean povray sudo port install povray configure.compiler=macports-clang-3.2 }}} If that works, we can modify the port accordingly. -- Ticket URL: <https://trac.macports.org/ticket/36172#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS
#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 peyser.alex@…): Replying to [comment:6 ryandesign@…]:
Ok. Then you could install the clang-3.2 port and compile with:
{{{ sudo port clean povray sudo port install povray configure.compiler=macports-clang-3.2 }}}
I'll try when Ticket #36042 is resolved.... -- Ticket URL: <https://trac.macports.org/ticket/36172#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#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 | ----------------------------+-------------------------------- Description changed by ryandesign@…: Old description:
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 ???).
{{{ :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 :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 ]]]
New description: 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 ???). {{{ :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 :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 }}} -- -- Ticket URL: <https://trac.macports.org/ticket/36172#comment:9> MacPorts <http://www.macports.org/> Ports system for Mac OS
#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 peyser.alex@…): Well, clang-3.2 got fixed --- but it appears to be an osx 10.6 issue, not merely a compiler issue, so regardless povray won't compile or run on <10.7. A virtualbox (or shelling out cash) seems to be the engineering solution. -- Ticket URL: <https://trac.macports.org/ticket/36172#comment:10> MacPorts <http://www.macports.org/> Ports system for Mac OS
#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 | ----------------------------+-------------------------------- Changes (by ryandesign@…): * cc: betrussell23@… (added) Comment: Has duplicate #36338. -- Ticket URL: <https://trac.macports.org/ticket/36172#comment:11> MacPorts <http://www.macports.org/> Ports system for Mac OS
#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 | ----------------------------+-------------------------------- Changes (by ryandesign@…): * cc: jumasoal@… (added) Comment: Has duplicate #36940. jeremyhu emailed me a suggestion for how this might be fixed but I haven't looked into it yet: On Oct 6, 2012, at 16:40, Jeremy Huddleston Sequoia wrote:
My guess is that povray is not searching for tls properly. I had to fixup pixman and X.org for similar incorrect autoconf logic.
Take a look at: http://cgit.freedesktop.org/xorg/xserver/tree/m4/xorg-tls.m4
-- Ticket URL: <https://trac.macports.org/ticket/36172#comment:12> MacPorts <http://www.macports.org/> Ports system for Mac OS
#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 macosx12345@…): See #36940 for a quick and dirty fix that allows compiling the port under Mac OS 10.6. It does probably not address the problem in a satisfying way as suggested above. -- Ticket URL: <https://trac.macports.org/ticket/36172#comment:14> MacPorts <http://www.macports.org/> Ports system for Mac OS
#36172: povray 3.7 fails with thread-local storage not supported ----------------------------+-------------------------------- Reporter: peyser.alex@… | Owner: macports-tickets@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: wontfix | Keywords: Port: povray | ----------------------------+-------------------------------- Changes (by ryandesign@…): * status: new => closed * resolution: => wontfix Comment: povray 3.7.0.RC7 still has the same problem and won't compile on Snow Leopard. It's not our problem to fix. If you want it fixed, talk to the developers of povray. -- Ticket URL: <https://trac.macports.org/ticket/36172#comment:16> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts