Opened 7 years ago
Last modified 7 years ago
#54364 closed defect
p5.24-io-socket-ssl: failed to build on Snow Leopard (with libc++) — at Version 2
Reported by: | rlhamil | Owned by: | |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | snowleopard LibcxxOnOlderSystems | Cc: | rlhamil, dbevans (David B. Evans), mojca (Mojca Miklavec) |
Port: | p5.24-io-socket-ssl |
Description (last modified by mojca (Mojca Miklavec))
:info:configure dyld: Symbol not found: _perl_tsa_mutex_lock :info:configure Referenced from: /opt/local/lib/perl5/vendor_perl/5.24/darwin-thread-multi-2level/auto/Net/SSLeay/SSLeay.bundle :info:configure Expected in: flat namespace :info:configure sh: line 1: 68230 Trace/BPT trap /opt/local/bin/perl5.24 Makefile.PL INSTALLDIRS=vendor CC="/opt/local/bin/clang-mp-3.7" LD="/opt/local/bin/clang-mp-3.7"
Workaround: re-install perl5.24
with +universal
, works then. When built correctly, symbol is defined in
/opt/local/lib/perl5/5.24/darwin-thread-multi-2level/CORE/libperl.dylib
Change History (3)
Changed 7 years ago by rlhamil
Attachment: | main.log-p5.24-io-socket-ssl.txt added |
---|
comment:1 Changed 7 years ago by rlhamil
Cc: | rlhamil added |
---|
comment:2 Changed 7 years ago by mojca (Mojca Miklavec)
Cc: | dbevans mojca added |
---|---|
Description: | modified (diff) |
Keywords: | snowleopard LibcxxOnOlderSystems added |
Summary: | p5.24-io-socket-ssl failed to build on Snow Leopard → p5.24-io-socket-ssl: failed to build on Snow Leopard (with libc++) |
Version: | 2.4.1 |
Note: See
TracTickets for help on using
tickets.
I'm not sure if my theory is correct, but I strongly suspect there's a problem in (lack of) flags to set the stdlib.
Perl devs pointed me to:
Maybe the perl PortGroup could always set the stdlib in the
PERL_MM_OPT
andPERL_MB_OPT
environmental variables. Untested theory.I fail to understand why exactly the universal build would fix the issue, but it could be that one module is not installed as i386 and then the package being built would link against perl5.24 rather than against another existing
p5.24-*
module and this would work (since perl was built with the right flags).The
mutex
keyword smells like C++11 in any case.