Build GMP auf 64-Bit-Windows

8

Ich habe die Anweisungen in der "GMP-Installationsanweisung für Windows-Plattform" befolgt. Ich könnte eine 32-Bit-Version von GMP erstellen, die für Visual Studio verwendet werden kann.

%Vor%

Dann habe ich mingw_w64 und msys auf einem anderen Rechner installiert (auf dem 64bit Windows läuft) und die Befehle erneut ausführen.

./ configure wurde ohne Probleme ausgeführt. Wenn ich "make" starte, bekomme ich Folgendes:

%Vor%

Wenn ich stattdessen "gmake" verwendet habe, wurde der folgende Fehler angezeigt.

%Vor%

Ich bin nicht vertraut mit C ++ make. Muss ich irgendein Flag angeben, um mingw_w64 zu benachrichtigen, dass ich für 64bit baue? Danke.

    
franziga 17.01.2011, 08:44
quelle

4 Antworten

4

Ich habe Folgendes versucht. Die Bibliothek kann erfolgreich erstellt werden.

%Vor%     
franziga 19.01.2011, 02:29
quelle
7

Für mich wurde gmp erfolgreich für x86 gebaut, und ich hatte Probleme beim Aufbau von x64. Das Problem war im Folgenden:

In mpn \ fib_table.c:

%Vor%

während in gmp.h:

%Vor%

fib_table.c wird vom Programm gen-fix.exe erzeugt und dieses Werkzeug wird von make generiert.

Wenn also versucht wird, x64-Build nach dem Erstellen von x86 (wie mir) zu bauen, reicht es nicht aus, zuerst "make clean" auszuführen. Löschen Sie alle "gen - *. Exe" -Dateien im gmp root-Ordner nach dem Ausführen von "make clean", diese Dateien werden von make neu erstellt. gmp x64 wurde danach erfolgreich für mich erstellt.

Getestet auf gmp 6.0.0.

    
capocannoniere 11.07.2014 06:08
quelle
4

Siehe Ссылка und notieren Sie sich diesen Absatz;

  

GMP kann jedoch nicht hoch bereitstellen   Leistung 64-Bit-Bibliotheken auf   Windows, weil sein 64-Bit-Assembler   Code ist nicht mit Windows x64 kompatibel   Aufrufkonventionen. Das bedeutet, dass   64-Bit-GMP-Bibliotheken auf Windows sind   sehr langsam im Vergleich zu MPIR,   Das hat ausgezeichnete 64-Bit-Assembler   Unterstützung.

Sie deaktivieren entweder die Assembly mit ./configure --disable-assembly oder verwenden MPIR .

    
ismail 17.01.2011 15:36
quelle
1

Vielleicht möchten Sie einen Blick auf MPIR werfen. Es ist eine Abzweigung von GMP, die Visual Studio nativ unterstützt.

    
casevh 17.01.2011 15:31
quelle

Tags und Links