g ++ — не могу скомпилировать код с CVC4 C ++ API

Я просто пытаюсь скомпилировать этот файл 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, На самом деле я использовал все комбинации, перестановки.

0

Решение

Похоже, это проблема среды ОП. И r4C9rAyrd6A1, и я смогли скомпилировать пример на наших локальных машинах. Конкретная проблема могла заключаться в том, что компилятор OP хотел -lcvc4 флаг компоновщика после других флагов, например g++ helloworld.cpp -Wno-deprecated -o helloworld -lcvc4 как уже упоминалось в комментариях.

2

Другие решения

Других решений пока нет …