[MacPorts] #63678: mdbtools port fails to build on macOS Catalina
MacPorts
noreply at macports.org
Tue Oct 26 22:15:06 UTC 2021
#63678: mdbtools port fails to build on macOS Catalina
-----------------------+--------------------
Reporter: greeneg | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: mdbtools |
-----------------------+--------------------
Comment (by ryandesign):
I have disabled the port's silent rules so that we can see the real
compile commands.
The compilation of file.c looks like:
{{{
/usr/bin/clang [...] -I. -I/opt/local/include -I../../include [...] -c
file.c [...]
}}}
In other words, a system include path `-I/opt/local/include` is
erroneously appearing before a local include path `-I../../include`.
../../include is where mdbtools.h is located which contains the prototype
for `mdb_set_repid_fmt`, but if a user already has mbdtools instaled with
MacPorts then the copy of mdbtools.h in /opt/local/include will be found
first. According to the NEWS file, `mdb_set_repid_fmt` was newly added in
version 1.0.0. Therefore any user upgrading from a previous version to
1.0.0 will encounter this error. The fix is for the developers of mbdtools
to ensure that the include flags for local directories always precede any
system directories. This bug should be reported to the developers of the
software. A workaround until the developers fix it could be to replace
`-I$(prefix}/include` with `-isystem${prefix}/include` in
`configure.cppflags` since `-isystem` paths are checked after all `-I`
paths.
--
Ticket URL: <https://trac.macports.org/ticket/63678#comment:4>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list