Файл с файлом автономного файла Linker не соответствует целевому пути?

Я пытаюсь скомпилировать .DLL для приложения, называемого диаграммой sierra.

Вот предупреждение, которое я получаю, что мне нужно исправить, поэтому все указывает на выходное значение компоновщика:

предупреждение MSB8012: TargetPath (C:\SierraChart\VCProject\Release\SCStudies.dll) не соответствует Linker OutputFile стоимость имущества (С:\sierrachart\Data\SCStudies.dll). Это может привести к созданию вашего проекта неправильно. Чтобы исправить это, пожалуйста убедитесь, что $(OutDir), $(TargetName) и $(TargetExt) значения свойств соответствуют значению указанных в % (Link.OutputFile). C:\Program Files (X86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets

Любые идеи?

Ответ 1

Я считаю, что это предупреждение появляется при обновлении проекта С++ до VS2010. Руководство по обновлению проекта Visual Studio 2010 С++ описывает некоторые из предостережений, возникших во время обновления. Если вам неудобно изменять настройки проекта, то сохранение старой версии Visual Studio может работать для вас.

Чтобы изменить %(Link.OutputFile), откройте свойства проекта. Перейдите в "Свойства конфигурации" → "Линкера" → "Общие". Вы можете установить выходной файл $(OutDir)\SCStudies.dll, который должен позаботиться о вашей проблеме. Возможно, вам придется повторить изменение для каждой конфигурации/вкуса, которую вы будете создавать (Debug/x86, Release/x86, Debug/Itanium и т.д.).

Ответ 2

На основе этого ответа.

Я изменил следующее свойство:

Linker → General → Output File to "$ (OutDir) $(Имя_целевого_объект) $(TargetExt)"

Это предотвратило появление предупреждения, и результат был сгенерирован успешно.

Ответ 3

Первоначальная конфигурация была установлена ​​следующим образом:

Свойства → Linker → Общие: $(OutDir)\"<'name fileA>".exe

Программа пытается запустить "<'name_project>". exe и как результат ошибки Связано.

Вам нужно установить конфигурацию как:

Свойства → Linker → Общие: $(OutDir)\"<'project name>".exe

Ответ 4

Другое исправление, о котором другие не упоминали, заключается в том, что по умолчанию TargetExt имеет значение .exe, а для моих отладочных сборников я изменил его на _d.exe, вместо этого вы должны делать это в пути TargetName.

Ответ 6

Каталог, указанный в папке "Общие" > "Вывод" и каталог, указанный в пути в файле Linker- > Output, должен совпадать.

Если вы хотите изменить настройки по умолчанию, выполните следующие действия: Сначала вы настраиваете OutDir в General- > Output Directory. Например.

$(SolutionDir)$(Platform)\$(Configuration)\MyProgram\

Убедитесь, что выходной файл согласован. Например. это будет работать

$(OutDir)\$(TargetName)$(TargetExt)