Problem with Octave while doing "port upgrade outdated"

Ryan Schmidt ryandesign at
Fri Dec 20 01:38:28 PST 2013

On Dec 19, 2013, at 15:00, Jerry wrote:

> On Dec 19, 2013, at 1:40 AM, Ryan Schmidt wrote:
>> MacPorts should not be supplying -arch flags to compilers like fortran that do not understand them.
>> MacPorts bases its decision on whether -arch flags are supported on the value of configure.compiler. However ports like octave that use the new fortran recipe introduced somewhat recently do not set configure.compiler, thus we have a problem.
>> Setting configure.compiler in these ports is not the solution; the fortran recipe was introduced as a way to use a fortran compiler that did not involve changing the C/C++ compilers, since we do not want to change the C/C++ compilers on Mavericks or later, since changing the C++ compiler would introduce a different C++ library and mixing two different C++ libraries causes problems.
>> This needs to be filed in the issue tracker, if it’s not already there. I’m not sure what the solution is. Maybe MacPorts base needs to become smarter about when to use -arch flags, basing the decision on each individual compiler executable, rather than assuming the entire collection of compilers will be changed simultaneously.
> I forgot to mention that I'm using OS X 10.8.5.

The aforementioned fortran recipe was (I think) introduced to help Mavericks, but regardless of why it was introduced, it is now in use in portfiles, and the same portfiles are used on all OS versions.

> This sounds like a serious problem. Does this mean that anyone who updates Octave (or Fortran) will have this problem?

I don’t know how far the problem reaches.

I did see in your output that you’re using gcc45. Any particular reason? The default is now gcc48; you could try that instead. That may help; parts of gcc have gained support for -arch flags in recent versions.

More information about the macports-users mailing list