ld64: missing build_dep on perl5

Jeremy Huddleston jeremyhu at macports.org
Mon Apr 23 23:12:24 PDT 2012


On Apr 23, 2012, at 9:59 PM, Jeremy Lavergne <jeremy at lavergne.gotdns.org> wrote:

>> I'm curious why you hit this though, since it seems like the config script should've used /usr/bin/perl if /opt/local/bin/perl wasn't around at build time.
> 
> I suspect when the llvm archive was built, macports' perl was installed. Then I deactivated everything and when install moved on to the subsequent packages, perl was never needed since there wasn't "building of llvm" going on.

This sounds like a possible bug in how base deals with binary packages.  llvm does have a runtime dependency on perl, but it's a bin: dependency.  I'm wondering how we should handle this case.

The Portfile has:
depends_run             bin:perl:perl5 port:llvm_select

If the package was built with perl5 installed, then the llvm-config script will use /opt/local/bin/perl as its interpreter.  If perl5 wasn't installed, then it will use /usr/bin/perl as the interpreter.  This leads to a problem if someone tries to use the /opt/local/bin/perl version without first installing the perl5 port.

Should we:
1) Ensure that if the bin:perl:perl5 dependency is used, we use #!/usr/bin/env perl
2) Ensure that if a binary package is used that all dependencies are satisfied in the same manner
3) Something else I'm not thinking of



More information about the macports-dev mailing list