2016-09-21 2 views
0

ich Probleme habe Kompilieren Veracrypt auf El CapitanProbleme kompilieren Veracrypt auf Mac OS X El Capitan 10.11.5

Dies ist der Fehler, den ich bekommen:

../Crypto/Whirlpool.c:511:3: error: unknown token in expression 
       KSH(2, 3, 2, 1, 0, 7) 
       ^
../Crypto/Whirlpool.c:452:2: note: expanded from macro 'KSH' 
     KSH##op(b, [AS_REG_6+2*2048+8*WORD_REG(di)])\ 
     ^
<scratch space>:264:1: note: expanded from here 
KSH2 
^ 
../Crypto/Whirlpool.c:445:2: note: expanded from macro 'KSH2' 
     AS2(movq  [SSE2_workspace+8*a], mm##a) 
     ^
/Users/whatnots/Desktop/veracrypt/src/Crypto/cpu.h:149:23: note: expanded from macro 'AS2' 
    #define AS2(x, y) GNU_AS2(x, y) 
        ^
/Users/whatnots/Desktop/veracrypt/src/Crypto/cpu.h:144:27: note: expanded from macro 'GNU_AS2' 
    #define GNU_AS2(x, y) #x ", " #y ";" NEW_LINE 
         ^
<scratch space>:270:2: note: expanded from here 
"movq [%3+8*1]" 
^ 
<inline asm>:162:7: note: instantiated into assembly here 
movq [%r10+8*1], mm1; 
    ^
fatal error: too many errors emitted, stopping now [-ferror-limit=] 
20 errors generated. 

Hier ist mein gcc Info:

Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 
Apple LLVM version 7.3.0 (clang-703.0.31) 
Target: x86_64-apple-darwin15.5.0 
Thread model: posix 
InstalledDir: /Library/Developer/CommandLineTools/usr/bin 

Dies kompiliert gut auf Ubuntu 16.04. Nicht sicher, was ich tun muss. Ich habe alle erforderliche Software installiert und habe sogar zwei höhere Versionen von gcc ausprobiert.

+0

Basierend auf dem Ort, an dem sich^befindet, ist% r10 ein "unbekanntes Token"? Das scheint nur möglich, wenn Sie (irgendwie) für 32bit kompiliert haben. Oder ist der Caret vielleicht an der falschen Stelle und es ist die mm1, die er nicht erkennt? –

Antwort

0

Der Inline-Code für den Nasm-Assembler ist nicht korrekt erweitert, siehe hierzu auch issue in veracrypt repository. Die Schuldigen befinden sich in cpu.h (Zeilen 259 bis 263 in der Version 1.19). Sie können versuchen, diese mit

#define GNU_AS1(x) #x ";" 
#define GNU_AS2(x, y) #x ", " #y ";" 
#define GNU_AS3(x, y, z) #x ", " #y ", " #z ";" 
#define GNU_ASL(x) "\n\t#x:" 
#define GNU_ASJ(x, y, z) #x " " #y #z ";" 

zu ersetzen, aber es könnte in dem letzten Test für die Verschlüsselung sein, dass Sie einen Fehler für TestPkcs5 bekommen.

Nachtrag 2017-06-08: Der neueste Git Clone von veracrypt kompiliert ohne Probleme, die Inline-Montage in der Whirlpool Hashing-Funktion ist jetzt deaktiviert.

Verwandte Themen