compilers on Lion
Werner LEMBERG
wl at gnu.org
Sat Sep 8 21:31:57 UTC 2018
> As Chris mentioned, ports use a compiler of their choosing, not of
> yours.
Yeah, it takes time to let this paradigm change sink in. :-)
> In fact, it takes the unusual and not-recommended step of completely
> discarding MacPorts base's list of preferred compilers and
> substituting its own list, which begins with MacPorts gcc6, so
> that's the compiler it will use. Probably gcc6 was the latest
> stable version when that list was last updated, so it would be
> reasonable to add gcc7 and gcc8 to the list.
Yes. I will do this.
> The best solution would be to fix lilypond so that it builds with
> clang, but that's something to be discussed with the developers of
> lilypond.
I'm listening :-) Unfortunately, my C++ capabilities are quite
limited, and normally we do cross-compilation to create a lilypond
binary for the Mac. Since our personal resources are very limited,
there isn't a high priority to make lilypond compile with clang – of
course we gladly accept patches.
Fortunately, macports provides guile 1.8.8, since guile 2.2.x doesn't
reliably work with lilypond (and vice versa). This is becoming a very
serious issue since most GNU/Linux distributions have already dropped
1.8.8 or will do so in the very near future...
>> * I'm missing the ability to say
>>
>> port select --set emacs emacs23 .
>
> If you install the emacs port, it will install /opt/local/bin/emacs;
> assuming /opt/local/bin precedes /usr/bin in your PATH, as it will
> by default after you install MacPorts, the emacs port's emacs binary
> will be used instead of Lion's older emacs binary.
Ah, I missed to type `hash -r'; I thought that, similar to gcc,
macports doesn't provide an `emacs' alias. Now everything works fine.
>> * It's impossible to guess the difference between the `emacs' and
>> `emacs-app' port from the output of `port info'. [...]
>
> Please file bug reports against those ports if changes are needed.
Will do.
>> *Four* compilers are necessary for poppler?
>
> I agree this is highly undesirable. It seems to me like it should
> be possible to significantly reduce that list, but I have not
> analyzed the problem in depth.
I think one part of the problem is that `libomp' is a separate
package. Since recent versions of clang include it, the artificial
splitting automatically introduces `clang-3.7' as a dependency,
regardless which clang version gets installed...
> Certainly, I think we have bugs in our compiler selection process.
> Especially on systems older than OS X Mavericks, while installing
> ports, you may see warnings to the effect that all compilers were
> blacklisted, but the build succeeds anyway.
Until now I haven't experienced this – but I guess I will see that
soon...
> An overhaul of the MacPorts base compiler selection process was
> proposed here:
>
> https://github.com/macports/macports-base/pull/88
>
> You might try recompiling MacPorts base from that PR to see if its
> new compiler selection process results in any improvements for this
> problem.
Looks interesting. Hopefully, I find some time to test it!
>> * Where can I get a concise and up-to-date description of
>> portfiles? `portfiles.7' seems to be heavily out of date...
>
> What would you like to know?
A list of all available variables/keywords, with a description.
> If portfile.7 or the guide are out of date (and I have no doubt they
> are), let us know in what ways (by filing bug reports) so that
> someone can fix them, or you can fork our repositories, make the
> needed changes and send pull requests.
Will try to file reports.
Werner
More information about the macports-users
mailing list