Как я могу получить точную командную строку компилятора из Visual Studio? - PullRequest
11 голосов
/ 30 октября 2009

Мне нужно перенести сборку DLL из сборки в Visual Studio в другую систему сборки. Решение DLL не было сделано мной, и у него есть много модифицированных переключателей командной строки и т. Д. Я скопировал параметры компилятора / компоновщика из Visual Studio

Свойства проекта -> Свойства конфигурации -> C / C ++ -> Командная строка Свойства проекта -> Свойства конфигурации -> Линкер -> Командная строка

Однако, когда я собираю DLL из другого моего инструмента сборки (и я также пробовал простой пакетный файл), DLL немного отличается по размеру и иногда вызывает сбой при использовании DLL (которая была создана Vis Studio не делает).

Итак, мой вопрос:

  1. Есть ли лучший способ увидеть точную командную строку, чем на странице свойств vis studio?

  2. Делает ли Vis Studio какое-то безумное волшебство помимо того, что происходит в командной строке (надеюсь, ответом будет нет!): -)

1 Ответ

9 голосов
/ 30 октября 2009

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

Один из способов увидеть все, что происходит, - посмотреть журнал сборки. В конце сборки в представлении «Вывод» вы должны увидеть строку вроде:

Журнал сборки был сохранен в «пути к файлу».

Удерживая клавишу Ctrl, щелкните путь к файлу в окне вывода, и он загрузит файл журнала, и вы должны увидеть все командные строки для каждого файла.

Обновление:

Этот ответ был для Visual Studio 2008. Вы больше не получаете ссылку в окне вывода в новых версиях Visual Studio. Вместо этого вам нужно перейти в каталог сборки вашего проекта, чтобы увидеть файл журнала. Смотрите здесь:

https://msdn.microsoft.com/en-us/library/jj651643.aspx

На самом деле эта ссылка немного неверна. Файл журнала имеет расширение .log, а не .txt.

...