[MacPorts] #50311: gmt5: build fails on Mavericks: error: conflicting types for 'dsyev_'

Takeshi Enomoto takeshi at macports.org
Fri Mar 18 21:18:02 PDT 2016


I’m trying to fix the problem reported for gmt5.

gmt5 fails due to the incompatibility of pointer type
on a call to dsyev_ of CLPACK in Accelerate.

The reporter runs Mavericks on an i386 machine
(I didn’t know that i386 is supported).

According to the error message in main.log, int * is passed to long *.

incompatible pointer types passing 'int *' to parameter of type '__CLPK_integer *' (aka 'long *’)

It should be int * because it is 4-byte integer of Fortran.

I suspect the compiler doesn’t compile the source with __LP64__ symbol on i386.
Perhaps is this a problem of Xcode clang?
Would put this clang version to blacklist help?

Comments and help welcome.



Excerpt from /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/Headers/clapack.h:

 #if defined(__LP64__) /* In LP64 match sizes with the 32 bit ABI */
     typedef int     __CLPK_integer;
     typedef long int  __CLPK_integer;
> 2016/01/30 11:43、MacPorts <noreply at macports.org> wrote:
> #50311: gmt5: build fails on Mavericks: error: conflicting types for 'dsyev_'
> ---------------------+-----------------------
>  Reporter:  mp@…    |      Owner:  florian@…
>      Type:  defect  |     Status:  new
>  Priority:  Normal  |  Milestone:
> Component:  ports   |    Version:  2.3.4
> Resolution:          |   Keywords:
>      Port:  gmt5    |
> ---------------------+-----------------------
> Comment (by takeshi@…):
> You are using an i386 machine. GMT tries to call dsyev_ of CLPACK with the
> pointer to int rather than that to long. I looked at clpack.h integer is
> defined to be long int. I believe long is 8 byte on Mac even if it is
> i386. I suspect that it is a problem of Accelerate.framework, not gmt5.
> I'll try to find further info.
> -- 
> Ticket URL: <https://trac.macports.org/ticket/50311#comment:2>
> MacPorts <https://www.macports.org/>
> Ports system for OS X

Takeshi Enomoto
takeshi at macports.org

More information about the macports-dev mailing list