Я просто пытаюсь скомпилировать этот файл helloworld.cpp
#include <iostream>
#include <cvc4/cvc4.h>
using namespace CVC4;
int main() {
ExprManager em;
Expr helloworld = em.mkVar("Hello World!", em.booleanType());
SmtEngine smt(&em);
std::cout << helloworld << " is " << smt.query(helloworld) << std::endl;
return 0;
}
с помощью g++ helloworld.cpp -lcvc4 -o helloworld -lcvc4 -Wno-deprecated
, Но это дает мне эту ошибку
/tmp/cc9SFpL4.o: In function `main':
helloworld.cpp:(.text+0xac): undefined reference to `CVC4::ExprManager::mkVar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, CVC4::Type, unsigned int)'
collect2: error: ld returned 1 exit status
Помогите!
Я установил CVC4
добавив ссылку на репо в /etc/apt/sources.list
а потом звонит sudo apt-get install cvc4 libcvc4-dev libcvc4parser-dev
,
РЕДАКТИРОВАТЬ: я опечатка g++ helloworld.cpp -lcvc4 ...
я использовал g++ helloworld.cpp -o helloworld -lcvc4 -Wno-deprecated
, На самом деле я использовал все комбинации, перестановки.
Похоже, это проблема среды ОП. И r4C9rAyrd6A1, и я смогли скомпилировать пример на наших локальных машинах. Конкретная проблема могла заключаться в том, что компилятор OP хотел -lcvc4
флаг компоновщика после других флагов, например g++ helloworld.cpp -Wno-deprecated -o helloworld -lcvc4
как уже упоминалось в комментариях.
Других решений пока нет …