Ошибка subprocess.py: Ninja не собирается из исходного кода в Windows 8

Я пытался собрать Ninja из исходников. Я сделал:

$ git clone git://github.com/martine/ninja.git && cd ninja
$ git checkout release

Затем в командной строке Visual Studio я запустил configure.py с Python:

$ C:\Python27\python.exe configure.py --bootstrap

Но здесь я получаю следующую ошибку:

C:\ninja>C:\Python27\python.exe configure.py --bootstrap
bootstrapping ninja...
Traceback (most recent call last):
  File "configure.py", line 320, in <module>
    if platform.msvc_needs_fs():
  File "configure.py", line 84, in msvc_needs_fs
    stderr=subprocess.PIPE)
  File "C:\Python27\Lib\subprocess.py", line 390, in __init__
    errread, errwrite)
  File "C:\Python27\Lib\subprocess.py", line 640, in _execute_chi
    startupinfo)
WindowsError: [Error 2] The system cannot find the file specified

Прочитав этот ответ, я добавил shell=True ко всем вхождениям call() и check_call() в configure.py. Но это все равно не помогает.

Есть идеи, что делать?


person Rohan Saxena    schedule 05.06.2017    source источник


Ответы (1)


Рассматривая код, о котором идет речь, пытается запустить cl, который является частью Microsoft Visual C++.

У вас установлен MSVC и в вашем PATH? т.е. работает ли просто запуск cl в командной строке?

person AKX    schedule 05.06.2017
comment
Просто запуск cl в командной строке не работает, хотя у меня установлен Microsoft Visual C++. - person Rohan Saxena; 05.06.2017
comment
Так что это, вероятно, означает, что это не на PATH. См. msdn.microsoft.com/en-us/library/f2ccy3wt.aspx :) - person AKX; 05.06.2017
comment
Я перерыл весь диск C:\, но не смог найти путь к Microsoft Visual C++. Однако я вижу его в списке установленных приложений (в «Программы и компоненты» на панели управления). - person Rohan Saxena; 05.06.2017