我无法在Windows桌面上编译GMP库(适用于c或c++)

nwsw7zdq  于 2023-10-16  发布在  Windows
关注(0)|答案(1)|浏览(361)

我需要一个Windows C++项目的GMP。
我使用CygWin作为bash和编译器。GMP建议CygWin(和Mingw),所以技术上应该这样做。
我的错误发生在我“制作”项目之后,

  1. autoconf
  2. ./configure --prefix "Some_Path_to_build"
  3. make

错误是

  1. libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -D__GMP_WITHIN_GMP -I.. -DOPERATION_fib_table -O2 -pedantic -fomit-frame-pointer -m64 -mtune=znver1 -march=znver1 -c fib_table.c -o fib_table.o
  2. In file included from fib_table.c:4:
  3. ../gmp-impl.h:146:10: fatal error: ../gmp-mparam.h: Invalid argument
  4. #include "gmp-mparam.h"
  5. ^~~~~~~~~~~~~~
  6. compilation terminated.
  7. make[2]: *** [Makefile:492: fib_table.lo] Error 1
  8. make[2]: Leaving directory '/cygdrive/d/SDK/gmp-6.2.1/mpn'
  9. make[1]: *** [Makefile:997: all-recursive] Error 1
  10. make[1]: Leaving directory '/cygdrive/d/SDK/gmp-6.2.1'
  11. make: *** [Makefile:787: all] Error 2

我在VS Code中打开gmp-impl.h文件,它实际上说:找不到头,如果我悬停在#include <gmp-mparam.h>部分.就像如果你inlcude一个头,这是不是在任何默认的包括目录。但是我(双重)检查了它,标题在正确的目录中。
我在Linux(Ubuntu)上用相同的命令编译了它多次,它工作得很好。

编辑

我今天才发现,这个头文件肯定有问题。我可以打开gmp-mparam.h,但它是空的,当我试图编辑它或保存它,我抛出一个未知的错误。

ffvjumwh

ffvjumwh1#

我在电脑上也遇到了这个错误。我认为是软符号链接导致了这个错误。然而,在将所有符号链接替换为真实文件后,我遇到了另一个问题。make命令卡在此命令上。

  1. /bin/sh ../libtool --tag=CC --mode=link gcc -O2 -pedantic -fomit-frame-pointer -m64 -mtune=k8 -march=k8 -o libmpn.la fib_table.lo mp_bases.lo invert_limb_table.lo add.lo add_1.lo add_n.lo sub.lo sub_1.lo sub_n.lo cnd_add_n.lo cnd_sub_n.lo cnd_swap.lo neg.lo com.lo mul_1.lo addmul_1.lo submul_1.lo add_err1_n.lo add_err2_n.lo add_err3_n.lo sub_err1_n.lo sub_err2_n.lo sub_err3_n.lo lshift.lo rshift.lo dive_1.lo diveby3.lo divis.lo divrem.lo divrem_1.lo divrem_2.lo fib2_ui.lo fib2m.lo mod_1.lo mod_34lsub1.lo mode1o.lo pre_mod_1.lo dump.lo mod_1_1.lo mod_1_2.lo mod_1_3.lo mod_1_4.lo lshiftc.lo mul.lo mul_fft.lo mul_n.lo sqr.lo mul_basecase.lo sqr_basecase.lo nussbaumer_mul.lo mulmid_basecase.lo toom42_mulmid.lo mulmid_n.lo mulmid.lo random.lo random2.lo pow_1.lo rootrem.lo sqrtrem.lo sizeinbase.lo get_str.lo set_str.lo compute_powtab.lo scan0.lo scan1.lo popcount.lo hamdist.lo cmp.lo zero_p.lo perfsqr.lo perfpow.lo strongfibo.lo gcd_11.lo gcd_22.lo gcd_1.lo gcd.lo gcdext_1.lo gcdext.lo gcd_subdiv_step.lo gcdext_lehmer.lo div_q.lo tdiv_qr.lo jacbase.lo jacobi_2.lo jacobi.lo get_d.lo matrix22_mul.lo matrix22_mul1_inverse_vector.lo hgcd_matrix.lo hgcd2.lo hgcd_step.lo hgcd_reduce.lo hgcd.lo hgcd_appr.lo hgcd2_jacobi.lo hgcd_jacobi.lo mullo_n.lo mullo_basecase.lo sqrlo.lo sqrlo_basecase.lo toom22_mul.lo toom32_mul.lo toom42_mul.lo toom52_mul.lo toom62_mul.lo toom33_mul.lo toom43_mul.lo toom53_mul.lo toom54_mul.lo toom63_mul.lo toom44_mul.lo toom6h_mul.lo toom6_sqr.lo toom8h_mul.lo toom8_sqr.lo toom_couple_handling.lo toom2_sqr.lo toom3_sqr.lo toom4_sqr.lo toom_eval_dgr3_pm1.lo toom_eval_dgr3_pm2.lo toom_eval_pm1.lo toom_eval_pm2.lo toom_eval_pm2exp.lo toom_eval_pm2rexp.lo toom_interpolate_5pts.lo toom_interpolate_6pts.lo toom_interpolate_7pts.lo toom_interpolate_8pts.lo toom_interpolate_12pts.lo toom_interpolate_16pts.lo invertappr.lo invert.lo binvert.lo mulmod_bnm1.lo sqrmod_bnm1.lo mulmod_bknp1.lo div_qr_1.lo div_qr_1n_pi1.lo div_qr_2.lo div_qr_2n_pi1.lo div_qr_2u_pi1.lo sbpi1_div_q.lo sbpi1_div_qr.lo sbpi1_divappr_q.lo dcpi1_div_q.lo dcpi1_div_qr.lo dcpi1_divappr_q.lo mu_div_qr.lo mu_divappr_q.lo mu_div_q.lo bdiv_q_1.lo sbpi1_bdiv_q.lo sbpi1_bdiv_qr.lo sbpi1_bdiv_r.lo dcpi1_bdiv_q.lo dcpi1_bdiv_qr.lo mu_bdiv_q.lo mu_bdiv_qr.lo bdiv_q.lo bdiv_qr.lo broot.lo brootinv.lo bsqrt.lo bsqrtinv.lo divexact.lo bdiv_dbm1c.lo redc_1.lo redc_2.lo redc_n.lo powm.lo powlo.lo sec_powm.lo sec_mul.lo sec_sqr.lo sec_div_qr.lo sec_div_r.lo sec_pi1_div_qr.lo sec_pi1_div_r.lo sec_add_1.lo sec_sub_1.lo sec_invert.lo trialdiv.lo remove.lo and_n.lo andn_n.lo nand_n.lo ior_n.lo iorn_n.lo nior_n.lo xor_n.lo xnor_n.lo copyi.lo copyd.lo zero.lo sec_tabselect.lo comb_tables.lo invert_limb.lo sqr_diag_addlsh1.lo mul_2.lo addmul_2.lo addlsh1_n.lo sublsh1_n.lo rsblsh1_n.lo rsh1add_n.lo rsh1sub_n.lo addlsh2_n.lo rsblsh2_n.lo addlsh_n.lo rsblsh_n.lo add_n_sub_n.lo addaddmul_1msb0.lo

相关问题