Как сделать #include <mysql.h> работой?

Я разрабатываю проект с открытым исходным кодом из источника,

и это должно включать <mysql.h>:

#if USE_MYSQL
#include <mysql.h>
#endif

и отчеты компилятора:

mysql.h no such file or directory

MySQL является еще одним большим проектом с открытым исходным кодом, что я должен сделать, чтобы заставить его работать?

5
задан symfony 25 March 2010 в 14:13
поделиться

3 ответа

Это будет полностью зависеть от ваших методов сборки, независимо от того, используется ли IDE, такая как Visual Studio, Eclipse и т. д., или если вы используете оболочку сценарии и командные строки в * nix.

Вам нужно будет убедиться, что этот файл (mysql.h) существует в вашем пути 'include'.

Например, в Visual Studio вы должны войти в:

Свойства проекта -> Свойства конфигурации -> C / C ++ -> Общие -> Дополнительные каталоги включения

И включить каталог, в который у вас есть 'mysql .h 'сохранен.

Затем для свойств компоновщика повторите эти шаги и включите соответствующий путь к файлу DLL / LIB в дополнительные каталоги библиотек.

Это будет сильно отличаться в зависимости от вашей среды, поэтому для точного пошагового описания потребуется дополнительная информация. -шаги. Но это должно объяснить реальную проблему.

6
ответ дан 18 December 2019 в 10:43
поделиться

Вы пытались указать в инструкции include полный путь к файлу?

1
ответ дан 18 December 2019 в 10:43
поделиться
#include  "path-spec"
#include  <path-spec>

Обе формы синтаксиса приводят к замене этой директивы всем содержимым указанного включаемого файла. Разница между этими двумя формами заключается в порядке поиска препроцессором заголовочных файлов при неполном указании пути.

#include "path-spec" предписывает препроцессору искать включаемые файлы в том же каталоге файла, который содержит оператор #include, а затем в каталогах всех файлов, которые включают (#include) этот файл. Затем препроцессор ищет по пути, указанному опцией компилятора /I, а затем по путям, указанным переменной окружения INCLUDE.

#include предписывает препроцессору искать включаемые файлы сначала по пути, указанному опцией компилятора /I, затем, при компиляции из командной строки, по пути, указанному переменной окружения INCLUDE.

Я не знаю, какой компилятор вы используете, но может потребоваться добавить ваши include и libs к компиляции:

g++ bla.cpp -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient_r
1
ответ дан 18 December 2019 в 10:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: