[MacPorts] #63156: ike-scan @1.9_3: configure: error: cannot determine 64-bit integer type

MacPorts noreply at macports.org
Wed Jun 30 07:32:17 UTC 2021


#63156: ike-scan @1.9_3: configure: error: cannot determine 64-bit integer type
-----------------------------+----------------------
 Reporter:  cooljeanius      |      Owner:  (none)
     Type:  defect           |     Status:  new
 Priority:  Normal           |  Milestone:
Component:  ports            |    Version:  2.7.1
 Keywords:  bigsur catalina  |       Port:  ike-scan
-----------------------------+----------------------
 I'm on macOS 11.4 with Xcode 12.5.1:
 {{{
 checking for uint8_t using /usr/bin/clang... yes
 checking for uint16_t using /usr/bin/clang... yes
 checking for uint32_t using /usr/bin/clang... yes
 checking whether long int is 64 bits... no
 checking whether long long int is 64 bits... no
 configure: error: cannot determine 64-bit integer type
 Command failed:  cd
 "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports
 .org_macports_release_tarballs_ports_security_ike-scan/ike-scan/work/ike-
 scan-1.9" && ./configure --prefix=/opt/local --mandir=/opt/local/share/man
 --with-openssl=/opt/local
 Exit code: 1
 Error: Failed to configure ike-scan: consult
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports
 .org_macports_release_tarballs_ports_security_ike-scan/ike-scan/work/ike-
 scan-1.9/config.log
 Error: Failed to configure ike-scan: configure failure: command execution
 failed
 DEBUG: Error code: NONE
 DEBUG: Backtrace: configure failure: command execution failed
 }}}
 `config.log` says:
 {{{
 configure:4675: checking whether long int is 64 bits
 configure:4764: /usr/bin/clang -o conftest -pipe -Os
 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk -arch
 x86_64 -Wall  -I/opt/local/include
 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk
 -L/opt/local/lib -Wl,-headerpad_max_install_names -lgettextlib
 -Wl,-syslibroot,/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk
 -arch x86_64 conftest.c  >&5
 conftest.c:58:1: warning: type specifier missing, defaults to 'int'
 [-Wimplicit-int]
 main() {
 ^
 conftest.c:59:3: error: implicitly declaring library function 'exit' with
 type 'void (int) __attribute__((noreturn))' [-Werror,-Wimplicit-function-
 declaration]
   exit(! does_int64_work());
   ^
 conftest.c:59:3: note: include the header <stdlib.h> or explicitly provide
 a declaration for 'exit'
 1 warning and 1 error generated.
 configure:4767: $? = 1
 configure: program exited with status 1
 configure: failed program was:
 | /* confdefs.h.  */
 |
 | #define PACKAGE_NAME "ike-scan"
 | #define PACKAGE_TARNAME "ike-scan"
 | #define PACKAGE_VERSION "1.9"
 | #define PACKAGE_STRING "ike-scan 1.9"
 | #define PACKAGE_BUGREPORT "ike-scan at nta-monitor.com"
 | #define PACKAGE "ike-scan"
 | #define VERSION "1.9"
 | #define HAVE_SYS_TYPES_H 1
 | #define HAVE_SYS_STAT_H 1
 | #define HAVE_STDLIB_H 1
 | #define HAVE_STRING_H 1
 | #define HAVE_MEMORY_H 1
 | #define HAVE_STRINGS_H 1
 | #define HAVE_INTTYPES_H 1
 | #define HAVE_STDINT_H 1
 | #define HAVE_UNISTD_H 1
 | #define HAVE_INTTYPES_H 1
 | #define HAVE_STDINT_H 1
 | #define HAVE_ARPA_INET_H 1
 | #define HAVE_NETDB_H 1
 | #define HAVE_NETINET_IN_H 1
 | #define HAVE_NETINET_TCP_H 1
 | #define HAVE_SYS_SOCKET_H 1
 | #define HAVE_SYS_TIME_H 1
 | #define HAVE_SYSLOG_H 1
 | #define HAVE_UNISTD_H 1
 | #define HAVE_GETOPT_H 1
 | #define HAVE_SIGNAL_H 1
 | #define HAVE_SYS_STAT_H 1
 | #define HAVE_FCNTL_H 1
 | #define TIME_WITH_SYS_TIME 1
 | /* end confdefs.h.  */
 | typedef long int int64;
 |
 | /*
 |  * These are globals to discourage the compiler from folding all the
 |  * arithmetic tests down to compile-time constants.
 |  */
 | int64 a = 20000001;
 | int64 b = 40000005;
 |
 | int does_int64_work()
 | {
 |   int64 c,d;
 |
 |   if (sizeof(int64) != 8)
 |     return 0;                 /* definitely not the right size */
 |
 |   /* Do perfunctory checks to see if 64-bit arithmetic seems to work */
 |   c = a * b;
 |   d = (c + b) / b;
 |   if (d != a+1)
 |     return 0;
 |   return 1;
 | }
 | main() {
 |   exit(! does_int64_work());
 | }
 configure:4786: result: no
 configure:4803: checking whether long long int is 64 bits
 configure:4892: /usr/bin/clang -o conftest -pipe -Os
 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk -arch
 x86_64 -Wall  -I/opt/local/include
 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk
 -L/opt/local/lib -Wl,-headerpad_max_install_names -lgettextlib
 -Wl,-syslibroot,/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk
 -arch x86_64 conftest.c  >&5
 conftest.c:58:1: warning: type specifier missing, defaults to 'int'
 [-Wimplicit-int]
 main() {
 ^
 conftest.c:59:3: error: implicitly declaring library function 'exit' with
 type 'void (int) __attribute__((noreturn))' [-Werror,-Wimplicit-function-
 declaration]
   exit(! does_int64_work());
   ^
 conftest.c:59:3: note: include the header <stdlib.h> or explicitly provide
 a declaration for 'exit'
 1 warning and 1 error generated.
 configure:4895: $? = 1
 configure: program exited with status 1
 configure: failed program was:
 | /* confdefs.h.  */
 |
 | #define PACKAGE_NAME "ike-scan"
 | #define PACKAGE_TARNAME "ike-scan"
 | #define PACKAGE_VERSION "1.9"
 | #define PACKAGE_STRING "ike-scan 1.9"
 | #define PACKAGE_BUGREPORT "ike-scan at nta-monitor.com"
 | #define PACKAGE "ike-scan"
 | #define VERSION "1.9"
 | #define HAVE_SYS_TYPES_H 1
 | #define HAVE_SYS_STAT_H 1
 | #define HAVE_STDLIB_H 1
 | #define HAVE_STRING_H 1
 | #define HAVE_MEMORY_H 1
 | #define HAVE_STRINGS_H 1
 | #define HAVE_INTTYPES_H 1
 | #define HAVE_STDINT_H 1
 | #define HAVE_UNISTD_H 1
 | #define HAVE_INTTYPES_H 1
 | #define HAVE_STDINT_H 1
 | #define HAVE_ARPA_INET_H 1
 | #define HAVE_NETDB_H 1
 | #define HAVE_NETINET_IN_H 1
 | #define HAVE_NETINET_TCP_H 1
 | #define HAVE_SYS_SOCKET_H 1
 | #define HAVE_SYS_TIME_H 1
 | #define HAVE_SYSLOG_H 1
 | #define HAVE_UNISTD_H 1
 | #define HAVE_GETOPT_H 1
 | #define HAVE_SIGNAL_H 1
 | #define HAVE_SYS_STAT_H 1
 | #define HAVE_FCNTL_H 1
 | #define TIME_WITH_SYS_TIME 1
 | /* end confdefs.h.  */
 | typedef long long int int64;
 |
 | /*
 |  * These are globals to discourage the compiler from folding all the
 |  * arithmetic tests down to compile-time constants.
 |  */
 | int64 a = 20000001;
 | int64 b = 40000005;
 |
 | int does_int64_work()
 | {
 |   int64 c,d;
 |
 |   if (sizeof(int64) != 8)
 |     return 0;                 /* definitely not the right size */
 |
 |   /* Do perfunctory checks to see if 64-bit arithmetic seems to work */
 |   c = a * b;
 |   d = (c + b) / b;
 |   if (d != a+1)
 |     return 0;
 |   return 1;
 | }
 | main() {
 |   exit(! does_int64_work());
 | }
 configure:4914: result: no
 configure:4930: error: cannot determine 64-bit integer type
 }}}
 ...so, IOW, this looks like another issue of `-Werror=implicit-function-
 declaration` being on by default now.

-- 
Ticket URL: <https://trac.macports.org/ticket/63156>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list