[MacPorts] #61564: libelf @0.8.13.2 fails to configure on BigSur 11.0.1
MacPorts
noreply at macports.org
Thu Nov 19 17:14:05 UTC 2020
#61564: libelf @0.8.13.2 fails to configure on BigSur 11.0.1
--------------------+--------------------
Reporter: ugr | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.6.4
Keywords: | Port: libelf
--------------------+--------------------
This bug also breaks depended ports like avrdude.
{{{
:info:configure Executing: cd
"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_libelf/libelf/work/libelf-0.8.13"
&& ./configure$
:debug:configure system: cd
"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_libelf/libelf/work/libelf-0.8.13"
&& ./configure -$
:info:configure creating cache ./config.cache
:info:configure checking whether make sets ${MAKE}... yes
:info:configure checking for gcc... /usr/bin/clang
:info:configure checking whether the C compiler (/usr/bin/clang -pipe -Os
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk -arch
x86_64 -L/opt/local/lib -Wl,-headerpad_max_install_nam$
:info:configure checking whether the C compiler (/usr/bin/clang -pipe -Os
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk -arch
x86_64 -L/opt/local/lib -Wl,-headerpad_max_install_nam$
:info:configure checking whether we are using GNU C... yes
:info:configure checking whether /usr/bin/clang accepts -g... yes
:info:configure checking how to run the C preprocessor... /usr/bin/clang
-E
:info:configure checking for a BSD compatible install... /usr/bin/install
-c
:info:configure checking for ranlib... ranlib
:info:configure checking whether ln -s works... yes
:info:configure checking for ANSI C header files... no
:info:configure checking for unistd.h... yes
:info:configure checking for stdint.h... yes
:info:configure checking for fcntl.h... yes
:info:configure checking for elf.h... no
:info:configure checking for sys/elf.h... no
:info:configure checking for link.h... no
:info:configure checking for sys/link.h... no
:info:configure checking if /usr/bin/clang can compile elf.h... no
:info:configure checking for ar.h... yes
:info:configure checking for libelf.h... no
:info:configure checking for nlist.h... yes
:info:configure checking for gelf.h... no
:info:configure checking whether to install <libelf.h>, <nlist.h> and
<gelf.h>... no
:info:configure checking for working const... yes
:info:configure checking for off_t... yes
:info:configure checking for size_t... yes
:info:configure checking size of short... 0
:info:configure checking size of int... 0
:info:configure checking size of long... 0
:info:configure checking size of long long... 0
:info:configure checking size of __int64... 0
:info:configure checking for 64-bit integer... no
:info:configure checking for 32-bit integer... no
:info:configure configure: error: neither int nor long is 32-bit
:info:configure Command failed: cd
"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_libelf/libelf/work/libelf-0.8.13"
&& ./conf$
}}}
Error reasons from
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_libelf/libelf/work/libelf-0.8.13/config.log:
{{{
configure:1060: /usr/bin/clang -E -I/opt/local/include
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk
conftest.c >/dev/null 2>conftest.out
configure:1127: /usr/bin/clang -o conftest -pipe -Os
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk -arch
x86_64 -I/opt/local/include
-isysroot/Library/Developer/CommandLineTools/SD$
configure:1122:67: error: implicitly declaring library function 'exit'
with type 'void (int) __attribute__((noreturn))' [-Werror,-Wimplicit-
function-declaration]
if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
^
configure:1122:67: note: include the header <stdlib.h> or explicitly
provide a declaration for 'exit'
1 error generated.
1 error generated.
configure: failed program was:
#line 1116 "configure"
#include "confdefs.h"
#include <ctype.h>
#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
int main () { int i; for (i = 0; i < 256; i++)
if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
exit (0); }
}}}
{{{
configure:1410: checking for off_t
configure:1443: checking for size_t
configure:1477: checking size of short
configure:1496: /usr/bin/clang -o conftest -pipe -Os
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk -arch
x86_64 -I/opt/local/include
-isysroot/Library/Developer/CommandLineTools/SD$
configure:1487:1: warning: type specifier missing, defaults to 'int'
[-Wimplicit-int]
main()
^
configure:1490:11: error: implicitly declaring library function 'exit'
with type 'void (int) __attribute__((noreturn))' [-Werror,-Wimplicit-
function-declaration]
if (!f) exit(1);
^
configure:1490:11: note: include the header <stdlib.h> or explicitly
provide a declaration for 'exit'
configure:1491:22: warning: format specifies type 'int' but the argument
has type 'unsigned long' [-Wformat]
fprintf(f, "%d\n", sizeof(short));
~~ ^~~~~~~~~~~~~
%lu
2 warnings and 1 error generated.
configure: failed program was:
#line 1485 "configure"
#include "confdefs.h"
#include <stdio.h>
main()
{
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
fprintf(f, "%d\n", sizeof(short));
exit(0);
}
}}}
It seems that the default include files in BigSur changed so that
functions from stdlib.h are not automatically included by stdio.h anymore.
I think the configure tests can be fixed by simply adding #include
<stdlib.h> (but i don't know how to change/patch a port...).
--
Ticket URL: <https://trac.macports.org/ticket/61564>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list