Tôi đã làm theo hướng dẫn trên "GMP Install Instruction for Windows Platform". Tôi có thể xây dựng một phiên bản 32bit của GMP có thể được sử dụng cho Visual Studio.Xây dựng GMP trên 64bit Windows
./configure --prefix=${gmp-install} --disable-static --enable-shared
make
make install
Sau đó, tôi đã cài đặt mingw_w64 và msys trên máy khác (đang chạy Windows 64 bit) và chạy lại lệnh.
./configure được chạy mà không gặp bất kỳ sự cố nào. Tuy nhiên, khi tôi chạy "làm", tôi nhận được những điều sau đây.
m4 -DHAVE_CONFIG_H -D__GMP_WITHIN_GMP -DOPERATION_add_n -DDLL_EXPORT -DPIC add_n.asm >tmp-add_n.s
gcc -std=gnu99 -c -DHAVE_CONFIG_H -I. -I.. -D__GMP_WITHIN_GMP -I.. -DOPERATION_add_n -O2 -pedantic -fomit-frame-pointer -mno-cygwin tmp-add_n.s -DDLL_EXPORT -DPIC -o .libs/add_n.o
tmp-add_n.s: Assembler messages:
tmp-add_n.s:84: Error: operand type mismatch for `push'
tmp-add_n.s:85: Error: operand type mismatch for `push'
tmp-add_n.s:86: Error: operand type mismatch for `push'
tmp-add_n.s:107: Error: operand type mismatch for `jmp'
tmp-add_n.s:114: Error: operand type mismatch for `pop'
tmp-add_n.s:115: Error: operand type mismatch for `pop'
tmp-add_n.s:116: Error: operand type mismatch for `pop'
make[2]: *** [add_n.lo] Error 1
make[2]: Leaving directory `/d/Temp/gmp-5.0.1/mpn'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/d/Temp/gmp-5.0.1'
make: *** [all] Error 2
Nếu tôi sử dụng "gmake" thay vào đó, lỗi sau được hiển thị.
m4 gcc -DHAVE_CONFIG_H -D__GMP_WITHIN_GMP -DOPERATION_add_n -DDLL_EXPORT -DPIC add_n.asm >tmp-add_n.s
m4: gcc: No such file or directory
gmake[2]: *** [add_n.lo] Error 1
gmake[2]: Leaving directory `d:/Temp/gmp-5.0.1/mpn'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `d:/Temp/gmp-5.0.1'
gmake: *** [all] Error 2
Tôi không quen với C++. Tôi có cần phải chỉ định bất kỳ cờ nào để thông báo cho mingw_w64 rằng tôi đang xây dựng cho 64bit không? Cảm ơn.
NB: Vì [GMP 5.1.0] (http://gmplib.org/list-archives/gmp-announce/2012-December/000036.html) "Hiệu suất trong ABI 64 bit của M $ Windows được cải thiện rất nhiều nhờ hỗ trợ lắp ráp hoàn chỉnh. " (bao nhiêu vì vậy tôi không biết). –