#52002 closed defect (fixed)
lilypond build fails due to missing reference to libc++ on some Darwin systems - fix attached — at Version 4
Reported by: | kenneth.f.cunningham@… | Owned by: | snc@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.3.4 |
Keywords: | Cc: | ryandesign@… | |
Port: | lilypond |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
Lily pond fails to build on Snow Leopard with the LibcxxOnOlderSystems upgrade, due to missing reference to libc++. Failed build log attached. Fix Portfile diff also attached, that add reference to libc++ on Darwin Mountain Lion and lower with configure.cxx_stdlib=libc++
Change History (6)
Changed 8 years ago by kenneth.f.cunningham@…
Attachment: | main.log.zip added |
---|
Changed 8 years ago by kenneth.f.cunningham@…
Attachment: | change-lilypond-libcxx.diff added |
---|
Portfile fix to add libc++ reference (diff)
comment:1 Changed 8 years ago by larryv (Lawrence Velázquez)
Cc: | snc@… removed |
---|---|
Owner: | changed from macports-tickets@… to snc@… |
The check seems overzealous. Why bother with version? Just add the flag always.
platform darwin { if {${configure.cxx_stdlib} eq "libc++"} { configure.ldflags-append "-lc++" } }
comment:2 Changed 8 years ago by kenneth.f.cunningham@…
Thanks.Yes, more general version certainly fine with me, if there's no trouble with adding the reference to systems when not really needed -- was trying to be specific (perhaps overly careful). Presumably this additional library reference is not needed on platforms above mountain lion. Wasn't sure if adding it would cause trouble there. -- K
comment:3 Changed 8 years ago by nerdling (Jeremy Lavergne)
Resolution: | → fixed |
---|---|
Status: | new → closed |
Patched in r151452.
comment:4 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added |
---|---|
Description: | modified (diff) |
Can anyone explain why -lc++
is used here instead of the more usual -stdlib=libc++
?
Indeed, does this need to be specific to darwin or libc++? Why not just:
configure.ldflags-append -stdlib=${configure.cxx_stdlib}
Has anyone reported this problem to the developers of lilypond so they can fix it in their sources? MacPorts sets -stdlib=whatever
in CXXFLAGS, lilypond just seems to be neglecting to use the CXXFLAGS variable when linking C++ code.
Failed build log of original build attempt.