Hmm, 'compilers.allow_arguments_mismatch yes’ had no effect—same failure. I
looked at the compilers group and with it set, and gfortran variant is
selected, chooses ${compilers.gcc_default}. Which in my case was gcc12—which is
already installed.
Mark Brethen
[email protected]
> On Jul 17, 2022, at 6:15 AM, Chris Jones <[email protected]> wrote:
>
>
>
>> On 17 Jul 2022, at 1:59 am, Mark Brethen <[email protected]> wrote:
>>
>> I’ve tested the build with gfortran-mp-12 which fails:
>>
>> :info:build /opt/local/bin/gfortran-mp-12 -Wall -O2 -c gencontelem_n2f.f
>> :info:build gencontelem_n2f.f:595:39:
>> :info:build 184 | call
>> isortii(ialset(istartset(iset)),idummy,
>> :info:build | 2
>> :info:build ......
>> :info:build 595 | call
>> isortii(nodef,iorder,nopes,kflag)
>> :info:build | 1
>> :info:build Error: Rank mismatch between actual argument at (1) and actual
>> argument at (2) (scalar and rank-1)
>> :info:build make: *** [gencontelem_n2f.o] Error 1
>>
>> How is a particular value of gfortran blacklisted, in this case
>> gfortran-mp-12?
>
> As Ken has eluded to, this is not a problem with the compiler, but an issue
> i. The code itself made apparent by stricter checks in recent compilers. You
> will likely run into the same with most recent versions so blacklisting is
> not the fix here.
>
> The option Ken mentioned turns off those checks
>
> https://github.com/macports/macports-ports/blob/8f07e286eac6e7fa7c9bcd282cc461ee945c7c8d/_resources/port1.0/group/compilers-1.0.tcl#L782
>
> <https://github.com/macports/macports-ports/blob/8f07e286eac6e7fa7c9bcd282cc461ee945c7c8d/_resources/port1.0/group/compilers-1.0.tcl#L782>
>
> so is definitely the way forward I would think.
>
> Chris
>
>>
>> Mark Brethen
>> [email protected]
>>
>>
>>
>>> On Jul 6, 2022, at 10:19 PM, Mark Brethen <[email protected]> wrote:
>>>
>>> The Spooles library is written in C language and has multi-threading
>>> subroutines.
>>>
>>> Mark Brethen
>>> [email protected]
>>>
>>>
>>>
>>>> On Jul 6, 2022, at 5:06 PM, Joshua Root <[email protected]> wrote:
>>>>
>>>> On 2022-7-7 07:40 , Mark Brethen wrote:
>>>>> The source is a combination of C and fortran, so a C-compiler with
>>>>> fortran is needed-preferably gcc. The gcc8 build is the only one that
>>>>> does not issue those warnings. But I have successfully run verification
>>>>> test cases packaged with the source against gcc8, gcc9, gcc11 and
>>>>> gfortran builds.
>>>>> The compilers PortGroup sets gfortran by default with these settings:
>>>>> compilers.choose fc cc
>>>>> compilers.setup require_fortran -g95 -clang
>>>>> But it uses clang to compile the C-code. I tried blacklisting clang but
>>>>> then it wants to install clang-14. Choosing a gcc variant uses its
>>>>> associated mp-gfortan compiler.
>>>>
>>>> Yes, +gfortran is there to only give you a fortran compiler (because clang
>>>> doesn't have one). Is there a reason you need the C code to be compiled
>>>> with gcc?
>>>>
>>>> - Josh