Форум сайта python.su
Python 3.3.3, Windows 7 32 bit.
В общем, пытаюсь собрать PyCurl. Руководствуюсь вот этим - http://curl.haxx.se/mail/curlpython-2009-11/0010.html
С горем пополам добрался до финишной прямой: “Then change to the pycurl directory and run
python setup_win32_ssl_2.py –curl-dir=..\curl-7.19.7 –openssl-dir=..\openssl-0.9.8k –zlib-dir=..\zlib-1.2.3 bdist_msi
substitution you…”
И тут, собственно, начались проблемы:
d:\pycurl\pycurl-master>python setup_win32_ssl.py bdist_msi
Using curl directory: d:\pycurl\curl-7.34.0
using openssl directory: d:\pycurl\openssl-1.0.1f
using zlib directory: d:\pycurl\zlib-1.2.8
running bdist_msi
running build
running build_py
running build_ext
building ‘pycurl’ extension
error: Unable to find vcvarsall.bat
Но на компьютере этот файл есть: C:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat
Куда и что надо прописать чтоб его “заметили”?
Находил решение этой проблемы через MinGW. Поставил его, но и тут не всё ладно:
D:\pycurl\pycurl-master>python setup_win32_ssl.py build –compiler=mingw32
Using curl directory: d:\pycurl\curl-7.34.0
using openssl directory: d:\pycurl\openssl-1.0.1f
using zlib directory: d:\pycurl\zlib-1.2.8
running build
running build_py
running build_ext
building ‘pycurl’ extension
C:\MinGW\bin\gcc.exe -mdll -O -Wall -DHAVE_CURL_GNUTLS=1 -DHAVE_CURL_SSL=1 -DHAV
E_CURL_OPENSSL=1 -Id:\pycurl\curl-7.34.0\include -IC:\Python33\include -IC:\Pyth
on33\include -c src\pycurl.c -o build\temp.win32-3.3\Release\src\pycurl.o -O2 -G
F -WX
gcc: error: unrecognized command line option ‘-GF’
gcc: error: unrecognized command line option ‘-WX’
error: command ‘gcc’ failed with exit status 1
Может кто-то толкнёт в нужном направлении?
Решение, которое мне помогло
Отредактировано pj (Окт. 23, 2014 23:16:53)
Офлайн
Офлайн
sanodinВсё это я затеял ради Grab. И с места по ссылке выше я уже качал PyCurl, но там чего-то не хватало (zlib, gzip, не помню чего, голова уже квадратная). Нашел мануал подробный и решил собрать, ну и вот я тут.
http://www.lfd.uci.edu/~gohlke/pythonlibs/
Отредактировано pj (Янв. 11, 2014 17:56:34)
Офлайн
ошибку покажите, чего не хватало
а так с грабом надо установить pycurl-ssl
и grab вроде под вторую ветку
https://bitbucket.org/lorien/grab/issue/61/grab-python-3
читайте
Отредактировано sanodin (Янв. 11, 2014 18:16:27)
Офлайн
Python 3.3.3 (v3.3.3:c3896275c0f6, Nov 18 2013, 21:18:40) [MSC v.1600 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>> from grab import Grab >>> g = Grab(log_file='out.html') >>> g.go('yandex.ru') Traceback (most recent call last): File "<pyshell#2>", line 1, in <module> g.go('yandex.ru') File "C:\Python33\lib\site-packages\grab-0.4.13-py3.3.egg\grab\base.py", line 356, in go return self.request(url=url, **kwargs) File "C:\Python33\lib\site-packages\grab-0.4.13-py3.3.egg\grab\base.py", line 431, in request self.prepare_request(**kwargs) File "C:\Python33\lib\site-packages\grab-0.4.13-py3.3.egg\grab\base.py", line 384, in prepare_request self.transport.process_config(self) File "C:\Python33\lib\site-packages\grab-0.4.13-py3.3.egg\grab\transport\curl.py", line 350, in process_config raise error.GrabMisuseError('You can not use gzip encoding because '\ grab.error.GrabMisuseError: You can not use gzip encoding because pycurl was built without zlib support >>>
и grab вроде под вторую веткуЯ всё это читал, и ещё на эту тему попал
https://bitbucket.org/lorien/grab/issue/61/grab-python-3
читайте
Отредактировано pj (Янв. 11, 2014 18:37:13)
Офлайн
vcvarsall.bat
путь к нему можно указать в патч, но думаю, можно установить Microsoft Visual Studio другой версии, если этой версии не собирает
я сам когда то собирал и сталкивался с такой проблемой, просто версию другую ставил (Visual Studio 2010 например) и все
Отредактировано sanodin (Янв. 11, 2014 19:26:48)
Офлайн
sanodinПопробовал 2010-ю студию, посыпались ошибки:
vcvarsall.batпуть к нему можно указать в патч, но думаю, можно установить Microsoft Visual Studio другой версии, если этой версии не собираетя сам когда то собирал и сталкивался с такой проблемой, просто версию другую ставил (Visual Studio 2010 например) и все
d:\pycurl\pycurl-master>python setup_win32_ssl.py bdist_msi Using curl directory: d:\pycurl\curl-7.34.0 using openssl directory: d:\pycurl\openssl-1.0.1f using zlib directory: d:\pycurl\zlib-1.2.8 running bdist_msi running build running build_py running build_ext building 'pycurl' extension C:\Program Files\Microsoft Visual Studio 10.0\VC\BIN\cl.exe /c /nologo /Ox /MD / W3 /GS- /DNDEBUG -DHAVE_CURL_GNUTLS=1 -DHAVE_CURL_SSL=1 -DHAVE_CURL_OPENSSL=1 -I d:\pycurl\curl-7.34.0\include -IC:\Python33\include -IC:\Python33\include /Tcsrc \pycurl.c /Fobuild\temp.win32-3.3\Release\src\pycurl.obj -O2 -GF -WX pycurl.c src\pycurl.c(224) : error C2275: size_t: недопустимое использование этого типа в качестве выражения c:\program files\microsoft visual studio 10.0\vc\include\codeanalysis\so urceannotations.h(29): см. объявление "size_t" src\pycurl.c(224) : error C2146: синтаксическая ошибка: отсутствие ";" перед иде нтификатором "csize" src\pycurl.c(224) : error C2065: csize: необъявленный идентификатор src\pycurl.c(225) : error C2065: csize: необъявленный идентификатор src\pycurl.c(231) : error C2143: синтаксическая ошибка: отсутствие ";" перед "ти п" src\pycurl.c(234) : error C2065: cstr: необъявленный идентификатор src\pycurl.c(234) : warning C4047: функция: "char *" отличается по уровням косве нного обращения от "int" src\pycurl.c(234) : warning C4024: wcstombs: различные типы для формального и фа ктического параметров 1 src\pycurl.c(234) : error C2065: csize: необъявленный идентификатор src\pycurl.c(235) : error C2065: cstr: необъявленный идентификатор src\pycurl.c(235) : warning C4047: =: "char *" отличается по уровням косвенного обращения от "int" src\pycurl.c(237) : error C2065: csize: необъявленный идентификатор src\pycurl.c(1864) : error C2143: синтаксическая ошибка: отсутствие ";" перед "т ип" src\pycurl.c(1865) : error C2065: PyIOBase_Type: необъявленный идентификатор src\pycurl.c(3231) : error C2275: PyObject: недопустимое использование этого тип а в качестве выражения c:\python33\include\object.h(109): см. объявление "PyObject" src\pycurl.c(3231) : error C2065: v: необъявленный идентификатор src\pycurl.c(3232) : error C2065: v: необъявленный идентификатор src\pycurl.c(3234) : error C2065: v: необъявленный идентификатор src\pycurl.c(3235) : warning C4047: =: "int" отличается по уровням косвенного об ращения от "PyObject *" src\pycurl.c(3236) : error C2065: v: необъявленный идентификатор src\pycurl.c(3239) : error C2065: v: необъявленный идентификатор src\pycurl.c(3239) : warning C4047: return: "PyObject *" отличается по уровням к освенного обращения от "int" src\pycurl.c(3259) : error C2275: PyObject: недопустимое использование этого тип а в качестве выражения c:\python33\include\object.h(109): см. объявление "PyObject" src\pycurl.c(3259) : error C2065: v: необъявленный идентификатор src\pycurl.c(3260) : error C2065: v: необъявленный идентификатор src\pycurl.c(3262) : error C2065: v: необъявленный идентификатор src\pycurl.c(3263) : warning C4047: =: "int" отличается по уровням косвенного об ращения от "PyObject *" src\pycurl.c(3264) : error C2065: v: необъявленный идентификатор src\pycurl.c(3267) : error C2065: v: необъявленный идентификатор src\pycurl.c(3267) : warning C4047: return: "PyObject *" отличается по уровням к освенного обращения от "int" error: command '"C:\Program Files\Microsoft Visual Studio 10.0\VC\BIN\cl.exe"' f ailed with exit status 2 d:\pycurl\pycurl-master>
Офлайн
думаю в данном случае не надо путь указывать, сборка сыпется по другим причинам
Офлайн
sanodinА что если вернуть 2008-ю студию, и попробовать “путь к нему указать в патч”. В 2008-ой он только .bat файл не видел, а тут ему что-то всё не нравится.
думаю в данном случае не надо путь указывать, сборка сыпется по другим причинам
Офлайн
путь в патч указывается в свойствах системы-дополнительные параметры системы-дополнительно-переменные среды
http://svirchoff.ru/%D1%80%D0%B0%D0%B7%D0%BD%D0%BE%D0%B5/%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-unable-to-find-vcvarsall-bat/
Отредактировано sanodin (Янв. 11, 2014 22:23:12)
Офлайн