|
Message-ID: <20190325182326.GA26773@openwall.com> Date: Mon, 25 Mar 2019 19:23:26 +0100 From: Solar Designer <solar@...nwall.com> To: john-users@...ts.openwall.com Cc: Claudio Andre <claudioandre.br@...il.com> Subject: Re: Compiler errors on macOS Mojave 10.14.2 Hi, It looks like we haven't replied to the below? I'm sorry if so! magnum, Claudio - do you have any ideas? Does this look like a bug we should look into and fix? If so, can someone create a GitHub issue, please? It looks like "ar" is somehow creating archives for a wrong architecture. This is puzzling to me because historically "ar" was a very simple archiver and technically not necessarily used for static libraries (and thus wouldn't need to be architecture-aware), although that ended up being its sole use case. Marvin - do you have any update? > ar: creating aes.a > ar: creating ed25519-donna.a > ar: creating secp256k1.a > ld: warning: ignoring file aes/aes.a, file was built for archive which is not the architecture being linked (x86_64): aes/aes.a > ld: warning: ignoring file ed25519-donna/ed25519-donna.a, file was built for archive which is not the architecture being linked (x86_64): ed25519-donna/ed25519-donna.a > ld: warning: ignoring file secp256k1/secp256k1.a, file was built for archive which is not the architecture being linked (x86_64): secp256k1/secp256k1.a > Undefined symbols for architecture x86_64: > "_ed25519_publickey", referenced from: Alexander On Wed, Feb 06, 2019 at 01:18:11PM +0000, Marvin Blumenr??der wrote: > Hello, > hopefully this is the right place to ask my questions.. > I am struggling to compile the latest version of magnum ripper/JohnTheRipper bleeding-jumbo branch on macOS Mojave 10.14.2 > always getting those errors:..file was built for archive which is not the architecture being linked (x86_64).. > > > > > ProductName: Mac OS X > > > ProductVersion: 10.14.2 > > > BuildVersion: 18C54 > > > I did the following: > > > brew install opensslbrew install gcc > git clone git://github.com/magnumripper/JohnTheRipper -b bleeding-jumbo john > > > cd john/src/ > > > export LDFLAGS=-L/usr/local/opt/openssl/lib > > > export CPPFLAGS=-I/usr/local/opt/openssl/include > > > export PKG_CONFIG_PATH=/usr/local/opt/openssl/lib/pkgconfig > > > ./configure CC="gcc-8" > make -s clean && make -sj4 > output of the configure command: > checking build system type... x86_64-apple-darwin18.2.0 > > > checking host system type... x86_64-apple-darwin18.2.0 > > > checking whether to compile using MPI... no > > > checking for gcc... gcc-8 > > > checking whether the C compiler works... yes > > > checking for C compiler default output file name... a.out > > > checking for suffix of executables... > > > checking whether we are cross compiling... no > > > checking for suffix of object files... o > > > checking whether we are using the GNU C compiler... yes > > > checking whether gcc-8 accepts -g... yes > > > checking for gcc-8 option to accept ISO C89... none needed > > > checking whether gcc-8 understands -c and -o together... yes > > > checking whether we are using the GNU C compiler... (cached) yes > > > checking whether gcc-8 accepts -g... (cached) yes > > > checking for gcc-8 option to accept ISO C89... (cached) none needed > > > checking whether gcc-8 understands -c and -o together... (cached) yes > > > checking additional paths... -L/usr/local/lib -I/usr/local/include -I/usr/local/opt/openssl/include > > > checking arg check macro for -m with gcc-8... yes > > > checking arg check macro for -Q with gcc-8... yes > > > checking if gcc-8 supports -funroll-loops... yes > > > checking if gcc-8 supports -Os... yes > > > checking if gcc-8 supports -finline-functions... yes > > > checking if gcc-8 supports -Og... yes > > > checking if gcc-8 supports -Wall... yes > > > checking if gcc-8 supports -Wdeclaration-after-statement... yes > > > checking if gcc-8 supports -Wno-stringop-truncation... yes > > > checking if gcc-8 supports -Wno-format-overflow... yes > > > checking if gcc-8 supports -fno-omit-frame-pointer... yes > > > checking if gcc-8 supports --param allow-store-data-races=0... yes > > > checking if gcc-8 supports -Wno-deprecated-declarations... yes > > > checking if gcc-8 supports -Wformat-extra-args... no > > > checking if gcc-8 supports -Wunused-but-set-variable... yes > > > checking if gcc-8 supports -Qunused-arguments... no > > > checking if gcc-8 supports -std=gnu89... yes > > > checking if gcc-8 supports -Wdate-time... yes > > > checking if gcc-8 supports -m64 w/ linking... yes > > > checking for 32/64 bit... 64-bit > > > checking additional paths (64 bit)... none > > > checking whether ln -s works... yes > > > checking for grep that handles long lines and -e... /usr/bin/grep > > > checking for a sed that does not truncate output... /usr/local/bin/gsed > > > checking for GNU make... make > > > checking whether make sets $(MAKE)... yes > > > checking how to run the C preprocessor... gcc-8 -E > > > checking for a thread-safe mkdir -p... ./install-sh -c -d > > > checking for sort... /usr/bin/sort > > > checking for find... /usr/bin/find > > > checking for perl... /usr/bin/perl > > > checking for ar... ar > > > checking for strip... strip > > > checking for pkg-config... /usr/local/bin/pkg-config > > > checking pkg-config is at least version 0.9.0... yes > > > checking if pkg-config will be used... no > > > checking for egrep... /usr/bin/grep -E > > > checking for ANSI C header files... yes > > > checking for sys/types.h... yes > > > checking for sys/stat.h... yes > > > checking for stdlib.h... yes > > > checking for string.h... yes > > > checking for memory.h... yes > > > checking for strings.h... yes > > > checking for inttypes.h... yes > > > checking for stdint.h... yes > > > checking for unistd.h... yes > > > checking size of short... 2 > > > checking size of int... 4 > > > checking size of long... 8 > > > checking size of long long... 8 > > > checking size of wchar_t... 4 > > > checking size of int *... 8 > > > checking size of void *... 8 > > > checking for extra ASFLAGS... -DUNDERSCORES -DBSD -DALIGN_LOG > > > checking for X32 ABI... no > > > checking special compiler flags... Intel x86 > > > checking whether OS X 'as' needs -q option... no > > > configure: Testing build host's native CPU features > > > checking for Hyperthreading... maybe > > > checking for MMX... yes > > > checking for SSE2... yes > > > checking for SSSE3... yes > > > checking for SSE4.1... yes > > > checking for SSE4.2... yes > > > checking for AVX... yes > > > checking for XOP... no > > > checking for AVX2... yes > > > checking for AVX512F... no > > > checking for arch.h alternative... x86-64.h > > > checking for byte ordering according to target triple... little > > > checking supplied paths for OpenSSL... > > > checking additional paths for OpenSSL... none > > > checking openssl/opensslv.h usability... yes > > > checking openssl/opensslv.h presence... yes > > > checking for openssl/opensslv.h... yes > > > checking for SSL_CTX_new in -lssl... yes > > > checking for MD5_Update in -lcrypto... yes > > > checking for sqrt in -lm... yes > > > checking for deflate in -lz... yes > > > checking for library containing crypt... none required > > > checking gmp.h usability... yes > > > checking gmp.h presence... yes > > > checking for gmp.h... yes > > > checking for __gmpz_init in -lgmp... yes > > > checking skey.h usability... no > > > checking skey.h presence... no > > > checking for skey.h... no > > > checking for S/Key... using our own code > > > checking bzlib.h usability... yes > > > checking bzlib.h presence... yes > > > checking for bzlib.h... yes > > > checking for main in -lbz2... yes > > > checking for main in -lkernel32... no > > > checking for dlopen in -ldl... yes > > > checking intrin.h usability... no > > > checking intrin.h presence... no > > > checking for intrin.h... no > > > checking openssl/cmac.h usability... yes > > > checking openssl/cmac.h presence... yes > > > checking for openssl/cmac.h... yes > > > checking librexgen/version.h usability... no > > > checking librexgen/version.h presence... no > > > checking for librexgen/version.h... no > > > checking pcap.h usability... yes > > > checking pcap.h presence... yes > > > checking for pcap.h... yes > > > checking for pcap_compile in -lpcap... yes > > > checking for pcap.h... (cached) yes > > > checking for pcap_compile in -lwpcap... no > > > checking whether time.h and sys/time.h may both be included... yes > > > checking whether string.h and strings.h may both be included... yes > > > checking for SHA256... yes > > > checking for WHIRLPOOL... yes > > > checking for RIPEMD160... yes > > > checking for AES_encrypt... yes > > > checking for DSA_get0_pqg... no > > > checking for gcc-8 option to support OpenMP... -fopenmp > > > checking additional paths for OpenCL... none > > > checking if compiler needs -Werror to reject unknown flags... no > > > checking whether pthreads work with -pthread... yes > > > checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE > > > checking if more special flags are required for pthreads... -D_THREAD_SAFE > > > checking for PTHREAD_PRIO_INHERIT... yes > > > checking whether we are using the Microsoft C compiler... no > > > checking CL/cl.h usability... no > > > checking CL/cl.h presence... no > > > checking for CL/cl.h... no > > > checking OpenCL/cl.h usability... yes > > > checking OpenCL/cl.h presence... yes > > > checking for OpenCL/cl.h... yes > > > checking windows.h usability... no > > > checking windows.h presence... no > > > checking for windows.h... no > > > checking for OpenCL library... -Wl,-framework,OpenCL > > > checking arpa/inet.h usability... yes > > > checking arpa/inet.h presence... yes > > > checking for arpa/inet.h... yes > > > checking crypt.h usability... no > > > checking crypt.h presence... no > > > checking for crypt.h... no > > > checking dirent.h usability... yes > > > checking dirent.h presence... yes > > > checking for dirent.h... yes > > > checking fcntl.h usability... yes > > > checking fcntl.h presence... yes > > > checking for fcntl.h... yes > > > checking limits.h usability... yes > > > checking limits.h presence... yes > > > checking for limits.h... yes > > > checking locale.h usability... yes > > > checking locale.h presence... yes > > > checking for locale.h... yes > > > checking malloc.h usability... no > > > checking malloc.h presence... no > > > checking for malloc.h... no > > > checking net/ethernet.h usability... yes > > > checking net/ethernet.h presence... yes > > > checking for net/ethernet.h... yes > > > checking netdb.h usability... yes > > > checking netdb.h presence... yes > > > checking for netdb.h... yes > > > checking netinet/in.h usability... yes > > > checking netinet/in.h presence... yes > > > checking for netinet/in.h... yes > > > checking netinet/in_systm.h usability... yes > > > checking netinet/in_systm.h presence... yes > > > checking for netinet/in_systm.h... yes > > > checking for string.h... (cached) yes > > > checking for strings.h... (cached) yes > > > checking sys/ethernet.h usability... no > > > checking sys/ethernet.h presence... no > > > checking for sys/ethernet.h... no > > > checking sys/file.h usability... yes > > > checking sys/file.h presence... yes > > > checking for sys/file.h... yes > > > checking sys/param.h usability... yes > > > checking sys/param.h presence... yes > > > checking for sys/param.h... yes > > > checking sys/socket.h usability... yes > > > checking sys/socket.h presence... yes > > > checking for sys/socket.h... yes > > > checking sys/time.h usability... yes > > > checking sys/time.h presence... yes > > > checking for sys/time.h... yes > > > checking sys/times.h usability... yes > > > checking sys/times.h presence... yes > > > checking for sys/times.h... yes > > > checking for sys/types.h... (cached) yes > > > checking termios.h usability... yes > > > checking termios.h presence... yes > > > checking for termios.h... yes > > > checking for unistd.h... (cached) yes > > > checking unixlib/local.h usability... no > > > checking unixlib/local.h presence... no > > > checking for unixlib/local.h... no > > > checking for windows.h... (cached) no > > > checking for net/if.h... yes > > > checking for net/if_arp.h... yes > > > checking for netinet/if_ether.h... yes > > > checking for netinet/ip.h... yes > > > checking for stdbool.h that conforms to C99... yes > > > checking for _Bool... yes > > > checking for inline... inline > > > checking for int32_t... yes > > > checking for int64_t... yes > > > checking for off_t... yes > > > checking for size_t... yes > > > checking for ssize_t... yes > > > checking for uint16_t... yes > > > checking for uint32_t... yes > > > checking for uint64_t... yes > > > checking for uint8_t... yes > > > checking for ptrdiff_t... yes > > > checking for int128... no > > > checking for __int128... yes > > > checking for __int128_t... yes > > > checking for error_at_line... no > > > checking for pid_t... yes > > > checking vfork.h usability... no > > > checking vfork.h presence... no > > > checking for vfork.h... no > > > checking for fork... yes > > > checking for vfork... yes > > > checking for working fork... yes > > > checking for working vfork... (cached) yes > > > checking for fseek64... no > > > checking for fseeko... yes > > > checking for fseeko64... no > > > checking for _fseeki64... no > > > checking for lseek64... no > > > checking for lseek... yes > > > checking for ftell64... no > > > checking for ftello... yes > > > checking for ftello64... no > > > checking for _ftelli64... no > > > checking for fopen64... no > > > checking for _fopen64... no > > > checking for memmem... yes > > > checking for mmap... yes > > > checking for sleep... yes > > > checking for setenv... yes > > > checking for putenv... yes > > > checking for strcasecmp... yes > > > checking for strncasecmp... yes > > > checking for stricmp... no > > > checking for strcmpi... no > > > checking for _stricmp... no > > > checking for _strcmpi... no > > > checking for strnicmp... no > > > checking for strncmpi... no > > > checking for _strnicmp... no > > > checking for _strncmpi... no > > > checking for strnlen... yes > > > checking for strlwr... no > > > checking for strupr... no > > > checking for strrev... no > > > checking for atoll... yes > > > checking for _atoi64... no > > > checking for snprintf... yes > > > checking for sprintf_s... no > > > checking for strcasestr... yes > > > checking for clGetKernelArgInfo... yes > > > checking for posix_memalign... yes > > > checking for yasm that supports "--prefix=_ -f macho64"... > > > checking for OS-specific feature macros needed... none > > > checking size of size_t... 8 > > > checking size of off_t... 8 > > > configure: Fuzz check disabled > > > configure: Fuzzing (using libFuzzer) check disabled > > > configure: creating *_plug.c and OpenCL object rules > > > configure: creating Makefile dependencies > > > configure: creating ./john_build_rule.h > > > configure: creating ./config.status > > > config.status: creating Makefile > > > config.status: creating aes/Makefile > > > config.status: creating aes/aesni/Makefile > > > config.status: creating aes/openssl/Makefile > > > config.status: creating secp256k1/Makefile > > > config.status: creating ed25519-donna/Makefile > > > config.status: creating escrypt/Makefile > > > config.status: creating autoconfig.h > > > config.status: linking x86-64.h to arch.h > > > config.status: executing default commands > > > configure: creating ./fmt_externs.h > > > configure: creating ./fmt_registers.h > > > > > > > > > Configured for building John the Ripper jumbo: > > > > > > > > > Target CPU ................................. x86_64 AVX2, 64-bit LE > > > AES-NI support ............................. depends on OpenSSL > > > Target OS .................................. darwin18.2.0 > > > Cross compiling ............................ no > > > Legacy arch header ......................... x86-64.h > > > > > > > > > Optional libraries/features found: > > > Memory map (share/page large files) ........ yes > > > Fork support ............................... yes > > > OpenMP support ............................. yes (not for fast formats) > > > OpenCL support ............................. yes > > > Generic crypt(3) format .................... yes > > > libgmp (PRINCE mode and faster SRP formats) yes > > > 128-bit integer (faster PRINCE mode) ....... yes > > > libz (pkzip and some other formats) ........ yes > > > libbz2 (gpg2john extra decompression logic) yes > > > libpcap (vncpcap2john and SIPdump) ......... yes > > > librexgen (regex cracking mode) ............ no > > > OpenMPI support (default disabled) ......... no > > > ZTEX USB-FPGA module 1.15y support ......... no > > > > > > > > > Install missing libraries to get any needed features that were omitted. > > > > > > > > > Configure finished. Now "make -s clean && make -sj4" to compile. > > > Output of the make command: > Now Running the Unit Tests > > > > > > > > > **** Performing unit tests for functions from [misc.c] **** > > > test 1 _nontest_gen_fgetl_files - Performed 3 tests 0.55 seconds used > > > test 2 test_fgetl - Performed 18003 tests 4.68 seconds used > > > test 3 test_fgetll - Performed 18003 tests 0.50 seconds used > > > test 4 test_strncpy_pad - Performed 27 tests 0.00 seconds used > > > test 5 test_strnfcpy - Performed 27 tests 0.00 seconds used > > > test 6 test_strnzcpy - Performed 27 tests 0.00 seconds used > > > test 7 test_strnzcpylwr - Performed 27 tests 0.00 seconds used > > > test 8 test_strnzcpyn - Performed 27 tests 0.00 seconds used > > > test 9 test_strnzcpylwrn - Performed 27 tests 0.00 seconds used > > > test 10 test_strnzcat - Performed 523264 tests 0.19 seconds used > > > test 11 test_strnzcatn - Performed 2745 tests 0.00 seconds used > > > test 12 test_strtokm - Performed 48 tests 0.00 seconds used > > > test 13 test_atou - Performed 200010 tests 0.04 seconds used > > > test 14 test_jtr_itoa - Performed 8400420 tests 0.69 seconds used > > > test 15 test_jtr_utoa - Performed 8400420 tests 0.80 seconds used > > > test 16 test_jtr_lltoa - Performed 8400420 tests 0.69 seconds used > > > test 17 test_jtr_ulltoa - Performed 8400420 tests 1.18 seconds used > > > > > > > > > **** Performing unit tests for functions from [common.c] **** > > > test 18 test_ishex - Performed 122790 tests 0.02 seconds used > > > test 19 test_ishex_oddOK - Performed 122790 tests 0.02 seconds used > > > test 20 test_ishexuc - Performed 122790 tests 0.02 seconds used > > > test 21 test_ishexlc - Performed 122790 tests 0.02 seconds used > > > test 22 test_ishexuc_oddOK - Performed 122790 tests 0.02 seconds used > > > test 23 test_ishexlc_oddOK - Performed 122790 tests 0.02 seconds used > > > test 24 test_ishexn - Performed 479980 tests 0.17 seconds used > > > test 25 test_ishexucn - Performed 479980 tests 0.08 seconds used > > > test 26 test_ishexlcn - Performed 479980 tests 0.08 seconds used > > > test 27 test_hexlen - Performed 469728 tests 0.06 seconds used > > > test 28 test_hexlenl - Performed 237888 tests 0.03 seconds used > > > test 29 test_hexlenu - Performed 237888 tests 0.03 seconds used > > > test 30 test_isdec - Performed 1131077 tests 0.10 seconds used > > > test 31 test_isdec_negok - Performed 2179654 tests 0.20 seconds used > > > test 32 test_isdecu - Performed 2245190 tests 0.20 seconds used > > > > > > > > > **** Performing unit tests for functions from [sha2.c] **** > > > test 33 test_sha224 - Performed 129 tests 0.08 seconds used > > > test 34 test_sha256 - Performed 780 tests 0.13 seconds used > > > test 35 test_sha384 - Performed 908 tests 0.15 seconds used > > > test 36 test_sha512 - Performed 908 tests 0.15 seconds used > > > Performed testing on 36 total functions. > > > Total time taken : 10.88 > > > > > > > > > ar: creating aes.a > > > ar: creating ed25519-donna.a > > > ar: creating secp256k1.a > > > ld: warning: ignoring file aes/aes.a, file was built for archive which is not the architecture being linked (x86_64): aes/aes.a > > > ld: warning: ignoring file ed25519-donna/ed25519-donna.a, file was built for archive which is not the architecture being linked (x86_64): ed25519-donna/ed25519-donna.a > > > ld: warning: ignoring file secp256k1/secp256k1.a, file was built for archive which is not the architecture being linked (x86_64): secp256k1/secp256k1.a > > > Undefined symbols for architecture x86_64: > > > "_ed25519_publickey", referenced from: > > > _crypt_all._omp_fn.0 in tezos_fmt_plug.o > > > _crypt_all._omp_fn.0 in opencl_tezos_fmt_plug.o > > > "_get_AES_dec192_CBC", referenced from: > > > _init in o5logon_fmt_plug.o > > > "_get_AES_enc192_CBC", referenced from: > > > _init in o5logon_fmt_plug.o > > > "_get_AES_type_string", referenced from: > > > _init in o5logon_fmt_plug.o > > > "_secp256k1_context_create", referenced from: > > > _crypt_all._omp_fn.0 in bitshares_fmt_plug.o > > > _get_salt in electrum_fmt_plug.o > > > _crypt_all._omp_fn.0 in electrum_fmt_plug.o > > > _crypt_all._omp_fn.0 in opencl_electrum_modern_fmt_plug.o > > > _get_salt in opencl_electrum_modern_fmt_plug.o > > > "_secp256k1_context_destroy", referenced from: > > > _crypt_all._omp_fn.0 in bitshares_fmt_plug.o > > > _get_salt in electrum_fmt_plug.o > > > _crypt_all._omp_fn.0 in electrum_fmt_plug.o > > > _crypt_all._omp_fn.0 in opencl_electrum_modern_fmt_plug.o > > > _get_salt in opencl_electrum_modern_fmt_plug.o > > > "_secp256k1_ec_pubkey_parse", referenced from: > > > _crypt_all._omp_fn.0 in bitshares_fmt_plug.o > > > _get_salt in electrum_fmt_plug.o > > > _get_salt in opencl_electrum_modern_fmt_plug.o > > > "_secp256k1_ec_pubkey_serialize", referenced from: > > > _crypt_all._omp_fn.0 in bitshares_fmt_plug.o > > > "_secp256k1_ec_pubkey_tweak_mul", referenced from: > > > _crypt_all._omp_fn.0 in bitshares_fmt_plug.o > > > "_secp256k1_mul", referenced from: > > > _crypt_all._omp_fn.0 in electrum_fmt_plug.o > > > _crypt_all._omp_fn.0 in opencl_electrum_modern_fmt_plug.o > > > ld: symbol(s) not found for architecture x86_64 > > > collect2: error: ld returned 1 exit status > > > make[1]: *** [../run/john] Error 1 > > > make: *** [default] Error 2 > > > I really hope someone can tell me what I am doing wrong, thanks!Marvin
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.