Проблемы с SOCI

Я пытаюсь использовать библиотеку SOCI для легкого доступа к MySQL, но я застрял при установке библиотеки.

Что я сделал до сих пор:

  • Сделал проект и скомпилировал его с помощью CMake
  • Связал мой проект с директорией lib / release, созданной после компиляции.
  • Связал мой проект с каталогом lib MySQL C Connector

и вот мои дополнительные каталоги включения:
http://puu.sh/6qGNP.png

Но почему-то, когда я компилирую пример программы, я получаю кучу ошибок компоновщика, таких как:

1> main.obj: ошибка LNK2019: неразрешенный внешний символ «public: virtual __thiscall soci :: details :: standard_into_type :: ~ standard_into_type (void)» (?? 1standard_into_type @ details @ soci @@ UAE @ XZ), на который есть ссылка в функции » public: virtual __thiscall soci :: details :: into_type :: ~ into_type (void) «(?? 1? $ into_type @ H @ details @ soci @@ UAE @ XZ)
1> main.obj: ошибка LNK2001: неразрешенный внешний символ «защищено: виртуальная пустота __thiscall soci :: details :: standard_into_type :: post_fetch (bool, bool)» (? Post_fetch @ standard_into_type @ details @ soci @@ MAEX_N0 @ Z)

Где я все испортил?

0

Решение

Из документации:

Требуемые клиентские библиотеки

Для внутреннего интерфейса SOCI MySQL требуется клиентская библиотека libmysqlclient MySQL.

Обратите внимание, что сама библиотека SOCI зависит также от libdl, поэтому минимальный набор библиотек, необходимый для компиляции базовой клиентской программы:

-lsoci_core -lsoci_mysql -ldl -lmysqlclient

Это всегда работало для меня. Если вы хотите связать их из места сборки, ключ -L с путем к библиотекам нужно будет передать компилятору.

1

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

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

По вопросам рекламы [email protected]