Файл с файлом автономного файла 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.
Ответ 5
Похоже, что это не важно для программы:
Нечетная ошибка Visual Studio при выполнении пользовательского учебного видео
Ответ 6
Каталог, указанный в папке "Общие" > "Вывод" и каталог, указанный в пути в файле Linker- > Output, должен совпадать.
Если вы хотите изменить настройки по умолчанию, выполните следующие действия:
Сначала вы настраиваете OutDir в General- > Output Directory. Например.
$(SolutionDir)$(Platform)\$(Configuration)\MyProgram\
Убедитесь, что выходной файл согласован. Например. это будет работать
$(OutDir)\$(TargetName)$(TargetExt)