Opened 12 years ago
Last modified 9 months ago
#36408 new defect
mercury @11.01: error: thread-local storage is unsupported for the current target
Reported by: | elvadrias@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.1.2 |
Keywords: | Cc: | ryandesign (Ryan Carsten Schmidt), JadeNB1729@… | |
Port: | mercury |
Description
Installing fails at "staging into destroot" step
These are the last 30 lines of the installation log :
:info:destroot In file included from ./mercury_imp.h:62: :info:destroot ./mercury_engine.h:437:12: error: thread-local storage is unsupported for the current target :info:destroot extern __thread MercuryEngine *MR_thread_engine_base; :info:destroot ^ :info:destroot 1 error generated. :info:destroot gmake[2]: *** [mercury_accurate_gc.o] Error 1 :info:destroot gmake[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_mercury/mercury/work/mercury-compiler-11.01/install_grade_dir.hlc.par.gc/runtime' :info:destroot To clean up from failed install, remove /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_mercury/mercury/work/mercury-compiler-11.01/install_grade_dir.hlc.par.gc :info:destroot gmake[1]: *** [install_grades] Error 1 :info:destroot gmake[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_mercury/mercury/work/mercury-compiler-11.01' :info:destroot make: *** [install] Error 2 :info:destroot make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_mercury/mercury/work/mercury-compiler-11.01' :info:destroot Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_mercury/mercury/work/mercury-compiler-11.01" && /usr/bin/make -w install :info:destroot Exit code: 2 :error:destroot org.macports.destroot for port mercury returned: command execution failed :debug:destroot Error code: CHILDSTATUS 1067 2 :debug:destroot Backtrace: command execution failed while executing "system -nice 0 $fullcmdstring" ("eval" body line 1) invoked from within "eval system $notty $nice \$fullcmdstring" invoked from within "command_exec destroot" (procedure "portdestroot::destroot_main" line 2) invoked from within "$procedure $targetname" :info:destroot Warning: targets not executed for mercury: org.macports.activate org.macports.destroot org.macports.install :notice:destroot Please see the log file for port mercury for details: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_mercury/mercury/main.log
Attachments (3)
Change History (11)
comment:1 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Attachment: | main.log.bz2 added |
---|
elvadrias' log compressed
comment:4 follow-up: 5 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | testing1@… ryandesign@… added |
---|---|
Port: | mercury added |
Summary: | mercury @11.01 error while staging into destroot → mercury @11.01: error: thread-local storage is unsupported for the current target |
Thanks. That's a huge log... 23 MB... I've attached a compressed version of it and deleted the original. It's still not a complete log though: for all phases before destroot it just says "Skipping completed". Could you "sudo port clean mercury", then try again, then attach the new compressed main.log? I'm currently also trying the install on my system (Mountain Lion).
Previously (on Snow Leopard a year ago) I was able to compile mercury but it did not work; see #31300.
A new version of mercury is available. I'll try updating the port.
Note that you don't need to Cc yourself when you are the reporter.
Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Attachment: | main.log.2.bz2 added |
---|
ryandesign's main.log
comment:5 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to ryandesign@…:
Thanks. That's a huge log... 23 MB... I've attached a compressed version of it and deleted the original. It's still not a complete log though: for all phases before destroot it just says "Skipping completed". Could you "sudo port clean mercury", then try again, then attach the new compressed main.log? I'm currently also trying the install on my system (Mountain Lion).
I've attached my complete main.log; I get the same error as you.
comment:6 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to elvadrias@…:
:info:destroot In file included from ./mercury_imp.h:62: :info:destroot ./mercury_engine.h:437:12: error: thread-local storage is unsupported for the current target
The NEWS file for mercury 11.07.2 includes this change:
- Thread local storage now works on Mac OS X when using clang as the C compiler.
So I'm hopeful updating to that version will help.
Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Attachment: | mercury-11.07.2.diff added |
---|
incomplete patch
comment:7 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
I'm attaching a patch to update the port to 11.07.2.
It seems upstream now supports DESTDIR which lets us simplify the port a lot and hopefully thereby fix #31300.
But destroot does not complete for me. It complains:
cp ./libatomic_ops-install/lib/libatomic_ops.a gc.a cp: ./libatomic_ops-install/lib/libatomic_ops.a: No such file or directory
Any ideas?
comment:9 Changed 7 years ago by jmroot (Joshua Root)
Is this still a problem with the current version (14.01.1)?
comment:10 Changed 9 months ago by barracuda156
Should it use TLS-capable compiler for the bootstrap? This does not seem to be necessary, but who knows.
Can you attach the full main.log file please?