Недопустимый файл заголовка sql.h, хотя установлен unixODBC
Я нахожусь в современной системе Ubuntu 12.04. У меня есть unixodbc (v2.2.14 из репозиториев ubuntu), MySQL и соответствующие драйверы. Также подключен к действительному DSN. Подтверждено путем выпуска isql DBName UName passwd
.
Я пытаюсь скомпилировать приложение C, которое взаимодействует с базой данных с помощью ODBC. Почти везде я искал, казалось, указывал, что я должен где-то установить "sql.h". A find / -iname sql.h -print
показал, что у меня его нет.
Итак, мой вопрос: где это? Что-то пошло не так с установкой (об ошибках не сообщалось)? И какие шаги вы рекомендуете? Переустановка? Компиляция из исходного кода (последняя версия?)?
Ответы
Ответ 1
Вам нужно установить пакет unixodbc-dev
, чтобы получить файлы заголовков разработки.
sudo apt-get install unixodbc-dev
Пакеты -dev
содержат требуемые файлы заголовков, необходимые для компиляции и сборки программ с использованием этих заголовков для совершения вызовов в библиотеку. Сами файлы библиотеки будут частью обычного пакета i.e. unixodbc
в вашем случае.
Если вы хотите узнать, какой пакет предоставляет определенный файл, вы можете использовать apt-file
:
sudo apt-file update
sudo apt-file find sql.h