Closed dkdewitt closed 1 year ago
If you definitely compiled memutils with the same compiler, it may be safe to say that this is a compiler bug on OS X that manifests specifically with botan. This library is significantly large and in its 100k+ lines of code it covers many aspects that test suites may not be covering. This being said, I would suggest using an older version like 2.070 or 2.071, or even LDC 1.0.0/.1 while I find a workaround for darwin.
Cool I ran on LDC and it ran good. I'll give 070 and shot and see... Thanks
So idk too much about dub but it looks like here is the what is being ran by dmd
dmd -c -of.dub/build/application-debug-posix.osx-x86_64-dmd_2071-24704D4A7E3E024137147B97F5FF9B76/btan.o -debug -g -w -version=Have_botan -version=Botan -version=CanTest -version=SHA2_32 -version=SHA2_64 -version=MD4 -version=MD5 -version=SHA1 -version=CRC24 -version=PBKDF1 -version=PBKDF2 -version=CTR_BE -version=HMAC -version=POLY1305 -version=EMSA1 -version=EMSA1_BSI -version=EMSA_X931 -version=EMSA_PKCS1 -version=EMSA_PSSR -version=EMSA_RAW -version=EME_OAEP -version=EME_PKCS1v15 -version=PBE_PKCSv20 -version=Self_Tests -version=ECB -version=CBC -version=XTS -version=OFB -version=CFB -version=AEAD_FILTER -version=AEAD_CCM -version=AEAD_EAX -version=AEAD_OCB -version=AEAD_GCM -version=AEAD_CHACHA20_POLY1305 -version=GCM_CLMUL -version=AEAD_SIV -version=RFC6979 -version=RSA -version=RW -version=DLIES -version=DSA -version=ECDSA -version=ElGamal -version=GOST_3410 -version=Curve25519 -version=Nyberg_Rueppel -version=Diffie_Hellman -version=ECDH -version=AES -version=Blowfish -version=Camellia -version=CAST -version=Cascade -version=DES -version=GOST_28147 -version=IDEA -version=KASUMI -version=LION -version=MARS -version=MISTY1 -version=NOEKEON -version=RC2 -version=RC5 -version=RC6 -version=SAFER -version=SEED -version=Serpent -version=TEA -version=Twofish -version=Threefish -version=XTEA -version=Adler32 -version=CRC32 -version=GOST_3411 -version=HAS_160 -version=Keccak -version=MD2 -version=RIPEMD_128 -version=RIPEMD_160 -version=SHA1_x86_64 -version=Skein_512 -version=Tiger -version=Whirlpool -version=ParallelHash -version=Comb4P -version=CBC_MAC -version=CMAC -version=SSL3_MAC -version=ANSI_X919_MAC -version=RC4 -version=ChaCha -version=Salsa20 -version=AES_NI -version=SIMD_SSE2 -version=AES_SSSE3 -version=Serpent_SIMD -version=SIMD_Scalar -version=Noekeon_SIMD -version=XTEA_SIMD -version=IDEA_SSE2 -version=SHA1_SSE2 -version=Engine_ASM -version=Engine_AES_ISA -version=Engine_SIMD -version=Entropy_HRTimer -version=Entropy_Rdrand -version=Entropy_DevRand -version=Entropy_EGD -version=Entropy_UnixProc -version=Entropy_Win32 -version=Entropy_ProcWalk -version=X931_RNG -version=HMAC_DRBG -version=KDF1 -version=KDF2 -version=SSL_V3_PRF -version=TLS_V10_PRF -version=TLS_V12_PRF -version=X942_PRF -version=TLS -version=X509 -version=PUBKEY -version=FPE_FE1 -version=RFC3394 -version=PassHash9 -version=BCrypt -version=SRP6 -version=TSS -version=CryptoBox -version=CryptoBox_PSK -version=ZLib -version=CryptoSafe -version=Have_btan -version=Have_botan_passhash -version=Have_botan_base -version=Have_botan_math -version=Have_memutils -Isource/ -I../../../../.dub/packages/botan-1.12.5/source/ -I../../../../.dub/packages/botan-math-1.0.2/source/ -I../../../../.dub/packages/memutils-0.4.6/memutils/source/ source/app.d -vcolumns
When i run that it compiles fine and the app runs. I see this with dub
Linking...
dmd -of.dub/build/application-debug-posix.osx-x86_64-dmd_2071-24704D4A7E3E024137147B97F5FF9B76/btan .dub/build/application-debug-posix.osx-x86_64-dmd_2071-24704D4A7E3E024137147B97F5FF9B76/btan.o ../../../../.dub/packages/botan-1.12.5/build/libbotan_passhash.a ../../../../.dub/packages/botan-1.12.5/build/libbotan_base.a ../../../../.dub/packages/botan-math-1.0.2/build/libbotan_math.a ../../../../.dub/packages/memutils-0.4.6/memutils/libmemutils.a -L-ldl -g
ld: in ../../../../.dub/packages/botan-1.12.5/build/libbotan_base.a(unique_41f9_3b6.o), in section __TEXT,__textcoal_nt reloc 2: symbol index out of range for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
--- errorlevel 1
FAIL .dub/build/application-debug-posix.osx-x86_64-dmd_2071-24704D4A7E3E024137147B97F5FF9B76/ btan executable
dmd failed with exit code 1.
So I dont know if this is a dub issue then. Homebrew is still installing Dub 0.9.25.
Anyways you know more about dub than me and I hope this info provides some more insight. If you want me to try anything lemme know...
I can confirm that this still exists on OSX 10.12 with DMD 2.072.1. Does anybody have a work-around?
Have you tried a plain build? --build=plain
I use AES256_SSSE3 which appears to be missing from the plain build.
This still happens on DMD 2.074.1 :(
Having trouble using botan on OSX. This my first go w/ botan so I may be missing something but I tried on debian and everything worked fine.
DMD64 D Compiler v2.071.1
DUB version 0.9.25, built on May 24 2016