Согласно странице драйверов unixODBC (прямо из 90-х), я должен загрузить драйверы SQLite3 с: http://www.ch-werner.de/sqliteodbc
Инструкции по сборке sqliteodbc
из исходного кода, предоставленного на этой странице, доступны здесь: http://www.ch-werner.de/sqliteodbc/html/index.html
Согласно этой странице, мы должны распаковать источник в каталог, а затем выполнить следующие команды:
1) ./configure
2) make
3) make install
Однако, когда я запускаю ./configure
в каталоге, я получаю следующую ошибку:
configure: error: No usable SQLite header/library on this system
Что мне делать?
Для контакта с configure: error: No usable SQLite header/library on this system
, каждый имеет к:
sudo apt-get install libsqlite3-dev
Вы могли бы все еще получить следующую ошибку после того, как Вы делаете так:
configure: error: ODBC header files and/or libraries not found
В этом случае сделайте:
sudo apt-get install unixodbc-dev unixodbc-bin unixodbc
У Вас могли бы уже быть некоторые пакеты, перечисленные там, но если Вы получаете ошибку, Вы отсутствуете unixodbc-dev
.
Хорошо, теперь Вы должны:
1) ./configure && make
без проблем
2) вместо make install
проверьте инструкции здесь для приобретения знаний всех о checkinstall
: Я установил программу путем получения ее исходного кода, и затем выполнение 'sudo делает установку'; как сделать 'склонным - добираются', знают об этом?
Теперь, читая далее в [инструкции], предусмотренные sqliteodbc
драйвер, мы имеем к:
1) настроить odbcinst.ini
правильно
Откройтесь odbcinst.ini
в редакторе (Вам, вероятно, будут нужны способности суперпользователя, и необходимо будет знать, где файл - обычно это находится в / и т.д., таким образом, мы можем сделать: sudo gedit /etc/odbcinst.ini
), и добавьте следующее:
[SQLite3]
Description=SQLite ODBC Driver
Driver=/usr/local/lib/libsqlite3odbc.so
Setup=/usr/local/lib/libsqlite3odbc.so
Threading=4
Настроить Description
с любой строкой Вы хотели бы, но удостоверились бы Driver
и Setup
имейте правильные пути к *.so
если установкой sqliteodbc
драйвер. Чтобы к фигуре / подтверждают который *.so
были обеспечены: также grep
или просто откройтесь /usr/local/lib/
и выезд, который *.so
файлы Вы имеете. Например, согласно примеру в инструкции, необходимо указать на /usr/local/lib/libsqliteodbc.so
, но я только имел /usr/local/lib/libsqlite3odbc.so
. Если у Вас есть оба, Вы могли бы сделать две записи как так:
[SQLite3]
Description=SQLite ODBC Driver
Driver=/usr/local/lib/libsqlite3odbc.so
Setup=/usr/local/lib/libsqlite3odbc.so
Threading=2
[SQLite]
Description=SQLite ODBC Driver
Driver=/usr/local/lib/libsqliteodbc.so
Setup=/usr/local/lib/libsqliteodbc.so
Threading=2
Кроме того, удостоверьтесь, что Вы выбираете некоторое достойное значение для поточной обработки. Например, если у Вас есть 8 ядер, возможно Threading=4
будет иметь смысл.
Ради шага 2 я собираюсь настроить вещи как:
[MYGOOFYSQLITE3DRIVERTAG]
Description=SQLite ODBC Driver
Driver=/usr/local/lib/libsqlite3odbc.so
Setup=/usr/local/lib/libsqlite3odbc.so
Threading=2
2) дополнительный: установите DNS в ~/.odbc.ini
---просто следуйте инструкциям, но обратите внимание, что можно также использовать DNS меньше SQLite/3. Например, использование pyodbc
и Python:
import pyodbc
connection_string = "Driver=MYGOOFYSQLITE3DRIVERTAG;Database=/path/to/database.db"
connection = pyodbc.connect(connection_string)
Отметьте это Driver
ключ, я упомянул тег, я подал драйвер odbcinst.ini
. Возможно, Вы хотите быть глупыми, возможно, Вы не делаете - дело в том, что ключ зависит от того, что Вы настраиваете, или что некоторая другая программа автоматически настраивала, поэтому если необходимо знать то, чем называют Драйвер, ищите его в odbcinst.ini
.
Более подробная информация относительно того, что может войти в строку подключения, может быть найдена в инструкциях для sqliteodbc
драйвер, который мы упомянули прежде.
GRUB_DEFAULT="gnulinux-advanced-6fefb013-568e-483b-befe-6a84f0ce102e>gnulinux-4.4.0-64-generic-advanced-6fefb013-568e-483b-befe-6a84f0ce102e"
? На основе моегоmenuentry
список, что Вы предлагаете, чтобы я использовал? – boardrider 8 March 2017 в 21:21