установка/сборка pymssql в Mac OS 10.6 (python 2.6)

Как указано в README и здесь http://code.google.com/p/pymssql/wiki/Compilation, я установил Cython (v0.14.1), FreeTDS (v0.82 с использованием MacPorts), и у меня уже установлен XCode с gcc.

Я столкнулся с ошибками сборки во время python setup.py install: много undeclared name not builtin: с такими вещами, как strlen, PyMem_Malloc, PyMem_Free, PY_LONG_LONG, а также несколько ___ is deprecated, use 'cpython'

Google нашел мне эту тему http://groups.google.com/group/cython-users/browse_thread/thread/468bb80480ede699/dc8267a4274c2413, где кто-то устраняет первую ошибку (изменено на from libc.string cimport strlen, strcpy с from stdlib cimport strlen, strcpy.)

Теперь я получаю: _mssql.pyx:650:34: Cannot convert Python object to 'const_char *'

Вот файл, из которого исходят эти проблемы: http://code.google.com/p/pymssql/source/browse/tags/1.9.908/_mssql.pyx

Мой вопрос:

Если я неправильно подготовил свою систему к pymssql, что я сделал не так?

or

Если файл _mssql.pyx использует устаревший импорт, как мне его исправить?


person rennat    schedule 03.03.2011    source источник
comment
Строка 650: dbValue[0] = ‹BYTE *›‹DBBIT *›intValue. После проверки определения они не являются объектом Python или константным символом. Можете ли вы подтвердить, что у вас тоже есть эта линия на 650?   -  person tito    schedule 03.03.2011
comment
Упс привязал к транку версию файла, собираю из тега 1.9.908. Я обновил ссылку.   -  person rennat    schedule 03.03.2011


Ответы (3)


Пробовали собрать 1.9.909 из багажника? У меня он строится чисто, чего не делал .908.

К сожалению, я получаю ошибки импорта, даже если есть успешная сборка и установка: Сборка pymssql в OS X

person kermatt    schedule 18.06.2011

У меня установлен pip, поэтому я получил Cython, используя:

pip install Cython

Я зашел на www.freetds.org и получил команду cvs для загрузки последнего исходного кода (Руководство пользователя, затем "Что собирать: пакеты, архивы и репозиторий CVS"). Чтобы собрать его, игнорируйте инструкции на веб-сайте и посмотрите на файл INSTALL.CVS в корне только что загруженного репозитория. Когда вы запускаете ./autogen.sh, используйте:

./autogen.sh --with-tdsver=7.0

autogen.sh создаст сценарий настройки, после чего сценарий настройки получит переключатель. Вам нужно использовать 7.0 для Python для работы с TDS и MS SQL. После autogen.sh вы делаете «make», а затем «sudo make install».

Теперь вам нужен архив pymssql. Распакуйте его и запустите:

python setup.py config
python setup.py build
sudo python setup.py install

это должно сделать это.

person Darrell    schedule 21.04.2011

Эта вилка компилируется как шарм:

https://github.com/blackbass1988/pymssql-macos-lion

person Drewes    schedule 23.10.2012