2014-10-24 3 views
6

У меня есть следующее сообщение об ошибке на свежих Windows 8 установить с помощью Microsoft Visual Studio Ultimate 2013:cl.exe returing код ошибки D8050

cl : Command line error D8050 : cannot execute 'C:\Program Files (x86)\Microsoft 
Visual Studio 12.0\VC\BIN\amd64\c1xx.dll': failed to get command line into debu 
g records 

Странная вещь, которая пытается собрать в качестве администратора ЦМД работает .. .. Я попытался изменить право собственности на VS12-папку, но ничего не меняет.

cl /Fobin\x64\Release\file.obj /c src\file.cpp 
/TP /nologo /MP /GS /W4 /wd4800 /wd4138 /wd4530 /wd4512 /wd4996 /wd4251 
/wd4661 /wd4505 /WX- /Gd /Zi /Gm- /Zc:wchar_t /errorReport:prompt /Zc:forScope 
/Fplibvideostitch.pch /FS /Fdvc120.pdb /fp:precise /GL /O2 /Oy- /Oi /MD /Ot 
/DWIN32 /D_USE_MATH_DEFINES /D_WINDLL /DNOMINMAX /D_CONSOLE /DNDEBUG 
"/IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include" 
+0

Очень неясный. 64-битный компилятор редко используется, поэтому задается, что вы используете цепочку инструментов необычным способом. Опущение деталей об этом не помогает нам. Имейте в виду, что это может быть проблема доступности с каталогом, где хранятся файлы .obj. Отключить защиту от вредоносных программ. Tinker with/GL, он должен хранить параметры командной строки в отладочных записях, чтобы компоновщик мог перезапустить сервер, когда он применяет оптимизацию PGO. –

+0

Я попытался удалить/GL и другие флаги оптимизации, но это не решило проблему. Я не выбираю этот компилятор, это тот, который был автоматически выбран SCons, но я думаю, что если он работает в консоли администратора, должен быть способ заставить его работать. Попробует исследовать каталог, в котором хранятся файлы obj. – MisterJ

ответ

7

Я имел этот вопрос с чистой окружающей средой, и она была решена (по крайней мере, частично) путем установки переменной окружения TMP.

+0

Может быть вопрос о нобе, но что такое TMP? – MisterJ

+0

Папка TMP установлена ​​для нового пользователя, может быть изменена - https://technet.microsoft.com/en-us/library/cc749104%28v=ws.10%29.aspx?f=255&MSPPError=-2147217396 –

+0

Хорошо, У меня больше нет машины/установки, но я вернусь + соглашусь с надеждой, что это поможет другим;) – MisterJ

3

Я столкнулся с этой ошибкой после того, как я очистил свой диск C (удаленные временные файлы всех видов). Я смог исправить это, переустановив переменные среды для инструментов командной строки Visual C++. Это была моя рекомендация page. Я строил 64 бит.

Запуск cmd как admin.

c:\>cd YourVSInstallDir\VC 
c:\YourVSInstallDir\VC>vcvarsall.bat amd64 
0

TMP была моей проблемой тоже. Я получал тот же код ошибки из cl. Google нашел это решение и, вуаля! Я только начал использовать двоичные файлы из MSVS 2015 Express для рабочего стола на новой системе 8.1. Я запускаю свои C-сборки из Eclipse Mars. Более старый код проекта устанавливал TMP и TEMP в (не существующий) каталог. Как только я их исправил, компилятор cl работал нормально.

+2

должен быть комментарием, или вы должны просто поддержать ответ, который вам помог. – MisterJ

1

У меня были мои %TEMP% и %TMP% vars, указывающие на каталог, содержащий $. Замена его на _ решила проблему для меня.