Как построить SQL Cipher Python Binding для Windows
У меня проблемы с созданием привязки Python для шифра SQL на моей машине с Windows. Я уже успешно построил привязку Python для Macintosh. Я хотел бы использовать мой скрипт на Python для Mac и ПК.
Я новичок в Python и не до конца понимаю, почему он не работает, но я начал пытаться отлаживать setup.py
скрипт и обнаружил ошибку в build_extension(self, ext)
метод в строке 147.
Шаги, которые я предпринял, чтобы построить:
- https://github.com/rigglemania/pysqlcipher3
- https://github.com/sqlcipher/sqlcipher
- http://www.jerryrw.com/howtocompile.php
Я клонировал репозитории выше и следовал инструкциям Джерри о том, как собрать sqlcipher. Я взял файлы sqlite3.c и sqlite3.h и поместил их в папку слияния, а затем попытался создать слияние. Я получил ошибку ниже. Я попытался просто построить, и это не удалось с той же ошибкой.
Ошибка:
running build_amalgamation
Builds a C extension using a sqlcipher amalgamation
building 'pysqlcipher3._sqlite3' extension
['path']
Вопросы:
- Можно ли как-нибудь собрать sqlcipher на своем Mac и использовать его для ПК? (перенести файлы с MAC на ПК)?
- Может кто-нибудь помочь мне построить привязку sqlcipher3 python для ПК?
Я новичок в Python, и любая помощь будет оценена.
1 ответ
Смотрите https://github.com/rigglemania/pysqlcipher3
1) Установите бесплатную VS 2015 Community Edition
Примечание. Убедитесь, что выбраны все параметры GCC (VC++, C++ и т. Д.). Если вы не уверены, выберите все варианты.
2) Установлен предварительно скомпилированный бинарный файл OpenSSL (Win32 OpenSSL v1.0.2d или новее) с https: // slproweb.com/products/Win32OpenSSL.html
3) Убедитесь, что переменная среды OPENSSL_CONF правильно установлена в переменных среды. См. Http:// www.computerhope.com/issues/ch000549.htm
Примечание. Это не должен быть корневой путь openssl (например, C:/openssl-Win32), а путь к файлу конфигурации (например, C:/openssl-Win32/bin/openssl.cfg).
4) Скопируйте папку openssl в каталог (C:/OpenSSL-Win32/include/openssl) в каталог включения VC (например: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/include)
Примечание. Убедитесь, что существует следующий путь (../../VC/include/openssl/aes.h).
5) Установите Python 3.5 (32 бит).
Примечание. Если у вас установлен Python 64-битный, вам, возможно, придется удалить его перед установкой Python 32-битной.
6) Используйте объединения SQL Cipher 3 или вы можете скомпилировать последнее объединение SQL Cipher, следуя этому руководству http://www.jerryrw.com/howtocompile.php.
7) Нажмите Пуск, Выполнить, cmd. В приглашении CMD перейдите в папку, в которой вы извлекли этот репозиторий. Запустите "python setup.py build_amalgamation"
8) Запустите "python setup.py install". Протестируйте новую библиотеку, пытаясь расшифровать базу данных.
Примечание. Если расшифровка не удалась, убедитесь, что у вас есть правильные файлы слияния.