|
13.11.2016, 23:35
|
#1
|
Разработчик
Регистрация: 08.08.2011
Сообщений: 505
Написано 191 полезных сообщений (для 369 пользователей)
|
Пляски с MinGW
Когда-то давно, когда я был студентом, мы с ребятами снимали квартиру и был у нас один "бородатый кодер" (в кавычках потому что бородатый по менталитету, а на деле длинноволосый металлюга, который кодил на С++). Ну так вот, сколько его помню, он каждый вечер боролся с MinGW и матерился, а потом залипал в Пайнкиллер до утра.
Только сейчас начал понимать, о чем он говорил, тк надо скомпиллить c MinGW openCL библиотеку для питона. Вторые сутки уже пляшу. Млять, ошибка за ошибкой!
Делал всё как в хелпе. https://wiki.tiker.net/PyOpenCL/Installation/Windows
Windows 10 64 bit, Python 3.4, PyOpenCL/Git Master, MingWPy, Nvidia CUDA 7.5
Не видит MSVC++ 10. Я уже штук 20 разных пакетов и SDK установил с msvc. Что ему надо?
Лог:
C:\pyopencl>python setup.py build_ext --compiler=mingw32
---------------------------------------------------------------------------
Sorry, your build failed. Try rerunning configure.py with different options.
---------------------------------------------------------------------------
Traceback (most recent call last):
File "C:\Python34\lib\site-packages\setuptools\msvc9_support.py", line 52, in query_vcvarsall
return unpatched['query_vcvarsall'](version, *args, **kwargs)
File "C:\Python34\lib\distutils\msvc9compiler.py", line 259, in query_vcvarsall
raise DistutilsPlatformError("Unable to find vcvarsall.bat")
distutils.errors.DistutilsPlatformError: Unable to find vcvarsall.bat
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 152, in save_modules
yield saved
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 193, in setup_context
yield
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 237, in run_setup
DirectorySandbox(setup_dir).run(runner)
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 267, in run
return func()
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 236, in runner
_execfile(setup_script, ns)
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 46, in _execfile
exec(code, globals, locals)
File "C:\Users\home\AppData\Local\Temp\easy_install-ipm6w33j\cffi-1.9.1\setup.py", line 98, in <module>
check_git_submodules()
File "C:\Users\home\AppData\Local\Temp\easy_install-ipm6w33j\cffi-1.9.1\setup.py", line 76, in uses_msvc
"CL_USE_SHIPPED_EXT", True,
File "C:\Python34\lib\distutils\command\config.py", line 227, in try_compile
self._compile(body, headers, include_dirs, lang)
File "C:\Python34\lib\distutils\command\config.py", line 133, in _compile
self.compiler.compile([src], include_dirs=include_dirs)
File "C:\Python34\lib\distutils\msvc9compiler.py", line 460, in compile
self.initialize()
File "C:\Python34\lib\distutils\msvc9compiler.py", line 371, in initialize
vc_env = query_vcvarsall(VERSION, plat_spec)
File "C:\Python34\lib\site-packages\setuptools\msvc9_support.py", line 62, in query_vcvarsall
raise distutils.errors.DistutilsPlatformError(message)
distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 10.0 is required (Unable to find vcvarsall.bat).
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "setup.py", line 247, in <module>
main()
File "setup.py", line 243, in main
zip_safe=False)
File "C:\pyopencl\aksetup_helper.py", line 21, in setup
setup(*args, **kwargs)
File "C:\Python34\lib\distutils\core.py", line 108, in setup
_setup_distribution = dist = klass(attrs)
File "C:\Python34\lib\site-packages\setuptools\dist.py", line 268, in __init__
self.fetch_build_eggs(attrs['setup_requires'])
File "C:\Python34\lib\site-packages\setuptools\dist.py", line 313, in fetch_build_eggs
replace_conflicting=True,
File "C:\Python34\lib\site-packages\pkg_resources\__init__.py", line 836, in resolve
dist = best[req.key] = env.best_match(req, ws, installer)
File "C:\Python34\lib\site-packages\pkg_resources\__init__.py", line 1081, in best_match
return self.obtain(req, installer)
File "C:\Python34\lib\site-packages\pkg_resources\__init__.py", line 1093, in obtain
return installer(requirement)
File "C:\Python34\lib\site-packages\setuptools\dist.py", line 380, in fetch_build_egg
return cmd.easy_install(req)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 629, in easy_install
return self.install_item(spec, dist.location, tmpdir, deps)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 659, in install_item
dists = self.install_eggs(spec, download, tmpdir)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 842, in install_eggs
return self.build_and_install(setup_script, setup_base)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 1070, in build_and_install
self.run_setup(setup_script, setup_base, args)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 1056, in run_setup
run_setup(setup_script, args)
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 240, in run_setup
raise
File "C:\Python34\lib\contextlib.py", line 77, in __exit__
self.gen.throw(type, value, traceback)
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 193, in setup_context
yield
File "C:\Python34\lib\contextlib.py", line 77, in __exit__
self.gen.throw(type, value, traceback)
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 164, in save_modules
saved_exc.resume()
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 139, in resume
compat.reraise(type, exc, self._tb)
File "C:\Python34\lib\site-packages\setuptools\compat.py", line 65, in reraise
raise value.with_traceback(tb)
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 152, in save_modules
yield saved
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 193, in setup_context
yield
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 237, in run_setup
DirectorySandbox(setup_dir).run(runner)
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 267, in run
return func()
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 236, in runner
_execfile(setup_script, ns)
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 46, in _execfile
exec(code, globals, locals)
File "C:\Users\home\AppData\Local\Temp\easy_install-ipm6w33j\cffi-1.9.1\setup.py", line 98, in <module>
check_git_submodules()
File "C:\Users\home\AppData\Local\Temp\easy_install-ipm6w33j\cffi-1.9.1\setup.py", line 76, in uses_msvc
"CL_USE_SHIPPED_EXT", True,
File "C:\Python34\lib\distutils\command\config.py", line 227, in try_compile
self._compile(body, headers, include_dirs, lang)
File "C:\Python34\lib\distutils\command\config.py", line 133, in _compile
self.compiler.compile([src], include_dirs=include_dirs)
File "C:\Python34\lib\distutils\msvc9compiler.py", line 460, in compile
self.initialize()
File "C:\Python34\lib\distutils\msvc9compiler.py", line 371, in initialize
vc_env = query_vcvarsall(VERSION, plat_spec)
File "C:\Python34\lib\site-packages\setuptools\msvc9_support.py", line 62, in query_vcvarsall
raise distutils.errors.DistutilsPlatformError(message)
distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 10.0 is required (Unable to find vcvarsall.bat).
|
|
(Offline)
|
|
14.11.2016, 00:06
|
#2
|
Дэвелопер
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений (для 1,540 пользователей)
|
Ответ: Пляски с MinGW
Один вопрос: зачем нужна MSVC++ 10, когда ты компилишь через mingw? mingw же самодостаточный кросс-компилятор.
__________________
|
(Offline)
|
|
14.11.2016, 00:36
|
#3
|
Разработчик
Регистрация: 08.08.2011
Сообщений: 505
Написано 191 полезных сообщений (для 369 пользователей)
|
Ответ: Пляски с MinGW
А я не знаю, зачем она в каждой строке пишет, что msvc не найден. Microsoft Visual C++ 10.0 is required (Unable to find vcvarsall.bat). Гуглил, перепробовал все способы на первой странице поиска. Может винду переустановить. Если не поможет, придется Win 7 ставить, там уже готовый инсталлятор есть. Жаль, жесткий GPT, придется полностью всё перепиливать. Я вот не понимаю, зачем эти пакеты выкладывают для самостоятельной сборки? Что так сложно написать инсталлятор со скриптом, который определит по реестру, куда установлена CUDA, куда установлен питон? Для линукса еще понятно, но для винды то зачем эта сборка самостоятельная.
|
(Offline)
|
|
14.11.2016, 00:50
|
#4
|
Дэвелопер
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений (для 1,540 пользователей)
|
Ответ: Пляски с MinGW
Поставь студию 2010, делов то. Пиратку качаешь и радуешься
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
14.11.2016, 00:53
|
#5
|
Разработчик
Регистрация: 08.08.2011
Сообщений: 505
Написано 191 полезных сообщений (для 369 пользователей)
|
Ответ: Пляски с MinGW
Попробую студию поставить, только позавчера снес.
|
(Offline)
|
|
14.11.2016, 01:04
|
#6
|
Чудо-кот
Регистрация: 22.02.2011
Сообщений: 901
Написано 480 полезных сообщений (для 1,471 пользователей)
|
Ответ: Пляски с MinGW
MingWPy в PATH прописан?
|
(Offline)
|
|
14.11.2016, 01:54
|
#7
|
Разработчик
Регистрация: 08.08.2011
Сообщений: 505
Написано 191 полезных сообщений (для 369 пользователей)
|
Ответ: Пляски с MinGW
Нет, а как его правильно прописать? Попробовал так:
Имя: mingw32; Значение: C:\Python34\share\mingwpy
То же самое
Имя: mingw32; Значение: C:\Python34\share\mingwpy\bin
Аналогично
|
(Offline)
|
|
14.11.2016, 10:31
|
#8
|
Элита
Регистрация: 21.01.2010
Адрес: Россия, Рязанская область, г.Михайлов
Сообщений: 2,067
Написано 1,185 полезных сообщений (для 2,828 пользователей)
|
Ответ: Пляски с MinGW
Сообщение от DarkInside
Нет, а как его правильно прописать? Попробовал так:
Имя: mingw32; Значение: C:\Python34\share\mingwpy
То же самое
Имя: mingw32; Значение: C:\Python34\share\mingwpy\bin
Аналогично
|
А если в конец переменной с именем "PATH" дописать? Емнип это должно именно так работать, собственно это Nerd и написал.
__________________
Main PC:
Intel Core i5 4260U 1.44 GHz + LPDDR3 1x4096 1600 MHz + Intel HD Graphics 5000.
Asus Ёжик T101-MT:
Intel Atom N-570 1.66 Ghz + DDR2 2x1024 800 Mhz + Intel GMA 3150 128 Mb DDR2
Скачать Doom 2D: Remake v0.3.8a
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
14.11.2016, 14:24
|
#9
|
Разработчик
Регистрация: 08.08.2011
Сообщений: 505
Написано 191 полезных сообщений (для 369 пользователей)
|
Ответ: Пляски с MinGW
Не, не помогло. Я просто подумал про системную переменную почему-то, раз там указывается компиллер=mingw32, а его нет в системных переменных. Пойду копаться в правилах сборки модулей для питона. Колеса еще какие-то нашел для этого пакета (файл с расширением .whl), только как ими пользоваться хз. Сам то язык простой, открыл хелп и начал писать, а вот окружение...
Всё оказалось проще... pip install pyopencl-2016.2+cl21-cp34-cp34m-win32.whl
Последний раз редактировалось DarkInside, 14.11.2016 в 15:31.
|
(Offline)
|
|
17.11.2016, 16:53
|
#10
|
ПроЭктировщик
Регистрация: 01.01.2016
Сообщений: 144
Написано 74 полезных сообщений (для 164 пользователей)
|
Ответ: Пляски с MinGW
хе-хе...
|
(Offline)
|
|
Эти 3 пользователя(ей) сказали Спасибо mingw за это полезное сообщение:
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 03:16.
|