Nowe posty

Autor Wątek: Jak skonfigurować KDevelop do współpracy z lpqxx i cmake?  (Przeczytany 4282 razy)

smukwij

  • Gość
Witam,

Jestem nowym użytkownikiem Linuxa i spotkał mnie taki o to problem...
Potrzebuję się dowiedzieć, jak skonfigurować CMAKE żeby mi projekt budował KDevelop...
Mam projekt, który się składa z jednego pliku main.cpp.
Umię go skompilować z linii komend takim czymś:
g++ -I /usr/local/include/pqxx/ -L /usr/local/lib/ -I /usr/local/pgsql/include/ -L /usr/local/pgsql/lib/ main.cpp -lpqxx  -lpq
ale nie moge podpiąć tego pod KDevelopa. Mam cały czas takie błędy:

CMakeFiles/TestBoost.dir/main.cpp.o: In function `main':
/home/piotrek/projects/TestBoost/main.cpp:12: undefined reference to `pqxx::connection_base::dbname()'
/home/piotrek/projects/TestBoost/main.cpp:15: undefined reference to `pqxx::transaction_base::exec(std::basic_string, std::allocator > const&, std::basic_string, std::allocator > const&)'
/home/piotrek/projects/TestBoost/main.cpp:17: undefined reference to `pqxx::result::size() const'
/home/piotrek/projects/TestBoost/main.cpp:18: undefined reference to `pqxx::result::begin() const'
/home/piotrek/projects/TestBoost/main.cpp:22: undefined reference to `pqxx::tuple::operator[](int) const'
/home/piotrek/projects/TestBoost/main.cpp:22: undefined reference to `pqxx::field::c_str() const'
/home/piotrek/projects/TestBoost/main.cpp:26: undefined reference to `pqxx::transaction_base::exec(std::basic_string, std::allocator > const&, std::basic_string, std::allocator > const&)'
/home/piotrek/projects/TestBoost/main.cpp:29: undefined reference to `pqxx::transaction_base::commit()'
CMakeFiles/TestBoost.dir/main.cpp.o: In function `const_result_iterator':
itd.
Teraz nie wiem, czy mam konfiguracje zmieniać w KDevelop czy też mam ją zmieniać z pliku CMakeLists.txt.  Jeżeli w pliku, to jak mam to ustawić aby była radość?

Pozdrawiam,
smukwij

smukwij

  • Gość
Jak skonfigurować KDevelop do współpracy z lpqxx i cmake?
« Odpowiedź #1 dnia: 2011-10-25, 15:49:48 »
Szukałem, czytałem, próbowałem i znalazłem:)

Dla zainteresowanych.

W pliku CMakeLists.txt trzeba dodać takie dwie linijki:
target_link_libraries(nazwa_projektu pqxx pq)
link_directories(/usr/local/lib /usr/local/pgsql/lib)

Może się komuś to przyda:).

Pozdrawiam