我需要将“123”更改为c ++中的const 我编码为
的内容ExprManager em;
Rational i = Rational("123",10);
Expr expri = em.mkConst(i);
或
Integer i = Integer("123", 10);
Expr epri = em.mkConst(Rational(i,1));
但我收到了一些错误
架构x86_64的未定义符号: “___gmpq_canonicalize”,引自: ex1-4f9d4d.o中的__gmp_expr< __ mpq_struct [1],__ mpq_struct [1]> :: canonicalize() “___gmpq_clear”,引自: ex1-4f9d4d.o中的__gmp_expr< __ mpq_struct [1],__ mpq_struct [1]> ::〜__gmp_expr() “___gmpz_clear”,引自: ex1-4f9d4d.o中的__gmp_expr< __ mpz_struct [1],__ mpz_struct [1]> ::〜__gmp_expr() “___gmpz_init_set”,引自: __gmp_expr< __ mpq_struct [1],__mpq_struct [1]> :: __ gmp_expr(__ gmp_expr< __ mpz_struct [1],__mpz_struct [1]>常量&安培;, __gmp_expr< __ mpz_struct [1],__mpz_struct [1]>常量&安培)在ex1-4f9d4d.o “___gmpz_init_set_si”,引自: ex1-4f9d4d.o中的__gmp_expr< __ mpz_struct [1],__ mpz_struct [1]> :: init_si(long) ld:找不到架构x86_64的符号
答案 0 :(得分:0)
上述问题是由于缺乏GMP库造成的。 使用" brew install gmp"安装GMP;在Mac上。 使用" -lgmp"编译程序标志
问题解决了。