2015-02-27 2 views
0

Я пытаюсь создать скрипт python, чтобы создать некоторое поколение MakeFile с CMake. Я новичок в Python и просто знаю базовый.Как использовать vcvarsall.bat в Python для NMake

Мой сценарий работает хорошо, но я не могу использовать следующую команду "cmake -DCMAKE_BUILD_TYPE=Debug -G"NMake Makefiles" ..\\..\\graphics", потому что он говорит:

CMake должен быть запущен из командной строки, которая может использовать сл компилятор из командной строки.

Я знаю проблему и обычно использую звонок (C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat), и это работает. Как я могу воспроизвести это на Python?

Вот мой script.py:

from os import * 
from subprocess import * 

path = "C:\\Users\\mea\\Documents\\repos\\corealpi\\cmake\\graphics_nmake" 
chdir(path) 
info = getcwd() 
print(info) 
call("C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\vcvarsall.bat") 
system('cmake -DCMAKE_BUILD_TYPE=Debug -G"NMake Makefiles" ..\\..\\graphics') 
system("pause") 
path = "C:\\Users\\mea\\Documents\\repos\\corealpi\\cmake\\graphics_nmake" 
chdir(path) 
print (getcwd()) 
system('ls') 

Я имел некоторый командный путь, чтобы убедиться, что я под хороший каталог.

Спасибо за помощь.

ответ

0

У вас есть несколько вариантов;

  • Вы можете изменить свой путь системы включать путь, предоставляемый vcvars.bat
  • Вы можете редактировать инициализацию путь вашей оболочки и добавить пути вам нужно

я обычно делаю первый, так что я также могут использовать команды из обычной оболочки CMD Windows.

+0

@AI G Я добавляю 'C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ VC \ bin' к моей системной переменной пути, но кажется, что это не работает в Python и Windows CMD ... – Algorys

+0

Вы перезапустили окно cmd после изменения вашего env? В противном случае, если он не работает с CMD, путь все равно не прав. – AlG

Смежные вопросы