Я поискал в Интернете и не нашел ничего похожего на мою проблему.
Я создал пустой проект C ++ и добавил main.cpp с возвратом, и я не могу заставить его построить. Вот сообщение, которое я получаю:
1>------ Build started: Project: Project1, Configuration: Debug Win32 ------
1>LINK : fatal error LNK1158: cannot run 'rc.exe'
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Есть ли где-нибудь в VS2012, где я могу указать, где найти этот исполняемый файл? Я установил Windows 7 SDK, и у меня есть этот исполняемый файл по адресу:
C:\Program Files\Microsoft SDKs\Windows\v7.0\Bin
Я пришел из Code :: Blocks и без проблем использую mingw-gcc, но в последнее время мне нужен VS для управляемых реализаций, поэтому я надеюсь, что у кого-то есть идея.
visual-studio-2012
Patrick.SE
источник
источник
Ответы:
Нашел это в Google ... Я предполагаю, что в вашем случае вы скопируете
rc.exe
иrcdll.dll
тудаvisual studio 2012\vc\bin
или где бы вы его ни установили:Часть 2: ИСПРАВИТЬ ССЫЛКУ:
fatal error LNK1158: cannot run ‘rc.exe’
Добавьте это в переменные среды PATH:
Скопируйте эти файлы:
Из
к
Или я также обнаружил это:
Microsoft упустила несколько вещей из своего пакета MSVT. Поскольку никто не знает, были ли они исключены по ошибке или по лицензионным причинам, никто из MSVC не слишком заинтересован в их выдаче. Несколько поисковых запросов в Google обнаруживают несколько хитрых источников. К счастью, Microsoft наконец поумнела и решила эту и многие другие проблемы.
http://msdn.microsoft.com/vstudio/express/support/faq/default.aspx#pricing
http://msdn.microsoft.com/vstudio/express/support/install/
Существует большое количество недостающих файлов MSVT, но отсутствующих файлов SDK нет.
и это: у
меня была та же проблема, которую я решил, сделав это:
Теперь я могу без ошибок создавать и связывать файлы ресурсов.
источник
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64
и выполняю команды:copy "C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\x64\rc.exe"
иcopy "C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\x64\rcdll.dll"
чтобы исправить это в Visual Studio 2015Мы столкнулись с этой проблемой в наших сборках CMake / Visual Studio 2015 после установки VS2017 на компьютер. Правильным решением в нашем случае является указание версии Window Kit (8.1) в командной строке Visual Studio - в противном случае вы получите комплект Windows 10 по умолчанию, который не включает rc.exe в каталог bin.
например, меню Пуск-> Visual Studio 2015-> VS2015 x64 Командная строка собственных инструментов
Обратите внимание на опцию 8.1 на конце
источник
call C:\\(....)\vcvarsall.bat" amd64 8.1
иstart cmake-gui
, работает как шармСудя по тому, что я обнаружил, если у вас ОС Windows 7, следующие шаги помогут решить проблему:
1) перейдите в C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v7.1A \ Bin
2) затем скопируйте RC.exe и RcDll из этого файла
3) перейдите в C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ VC \ bin и вставьте в него два файла, которые вы скопировали.
У меня была такая же проблема, и вышеприведенное решение не сработало. Мое решение было получено из него, и оно сработало для меня, если вышеперечисленные не работают, вы можете попробовать это.
источник
это
rc.exe
ошибка может возникнуть, если версии компилятора Visual C ++ и Windows 10 SDK не соответствуют одному и тому же году Visual Studio. В общем, решение состоит в том, чтобы убедиться, что в вашей системе есть и вы используете в компиляции VC ++ и Windows SDK для того года Visual Studio, который вы используете.Например, если у вас есть Visual Studio 2017 или 2019, и вы установили Build Tools 2015, не выбрав установку собственного пакета SDK для Windows 2015 (установка по умолчанию не устанавливает его!), И пытаетесь использовать его для компиляции, вы можете столкнуться с Эта проблема.
В моем случае у меня уже была Visual Studio 2017. Когда я пытался использовать Build Tools 2015 для компиляции библиотеки python (или, возможно, любой программы), возникла та же ошибка «rc.exe». Я читал, что компилятор VS2015 14.0 C ++ может дать сбой, если попытается использовать Windows 10 SDK из Visual Studio 2017.
Я удалил Build Tools 2015 и переустановил его, на этот раз как выборочную установку, выбрав для установки как Visual C ++, так и компоненты SDK для Windows 10. Это устранило проблему.
ОБНОВЛЕНИЕ: я только что снова посмотрел на Build Tools 2015, и, по-видимому, больше нет варианта пользовательской установки. В таком случае установка Visual Studio 2015 с компонентами C ++ и Windows SDK также должна работать.
источник
В моем случае у меня была ошибка смешивания и совпадения между проектами, созданными в VS2015 и VS2017. В моем файле .vcxproj есть раздел под названием PropertyGroup Label = "Globals">. У меня был раздел для TargetPlatformVersion = 10.0.15063.0. Когда я удалил TargetPlatformVersion, проблема была решена.
Извините, я не могу скопировать и вставить блок сюда, но формат кодирования stackoverflows не позволял этого.
источник
Я использую Windows 7 x64 и Visual Studio 2017 . Я получаю эту ошибку при попытке скомпилировать скрипт Cython. Вот как я решил: скопировал и вставил rc.exe и rcdll.dll из:
в
источник
C:\Program Files (x86)\Windows Kits\8.1\bin\x64
версии попробуйтеC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64
.C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x64
чтобыC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64
исправить невозможность сборки Visual Studio из-за ошибки rc.exeВот мой почти аналогичный случай: у
меня есть рабочий проект VC2010 под Win7 32bit. Я делаю чистую установку VC2013 под Win8.1 64bit После успешного преобразования моего проекта из VC2010 в VC2013 во время 1-й компиляции возникает следующая ошибка:
Завершено создание кода
ССЫЛКА: фатальная ошибка LNK1158: не удается запустить 'rc.exe'
Решение 1:
Удалить целая строка «<ExecutablePath Condition =» ... »> ... </ExecutablePath>» в элементе «<PropertyGroup>» в файле NameOfYourSolution.vcxproj в блокноте перед запуском VC2013
Решение 2.
Скопируйте только два файла: rc.exe и rcdll.dll из «c: \ Program Files (x86) \ Windows Kits \ 8.1 \ bin \ x86 \» в «c: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ VC \ bin \», и компиляция будет успешный !!
Примечание:
a) Нет необходимости касаться какой-либо переменной PATH или других переменных среды Windows или VC.
б) «Набор инструментов платформы» (Страницы свойств проекта -> Свойства конфигурации -> Общие) будет автоматически установлен на «Visual Studio 2013 (v120)» (не меняйте его на «Visual Studio 2010», чтобы продолжить разработку проекта. в рамках концепции VC2013)
источник
В моем случае ошибка возникла из-за неправильной настройки в vcxproj. Vcxproj был от третьего лица, поэтому я не уверен, как он попал в такое состояние.
В частности, для одной из комбинаций платформа / профиль папка платформы отсутствовала в папке bin Windows SDK:
правильно, где
было неверно. Возможно, потребуется прокрутить поля кода до конца, чтобы увидеть разницу.
Также обратите внимание, что по какой-то странной причине $ (WindowsSdkDir) bin \ x64; у меня НЕ работал. Пытался выяснить, почему, когда rc.exe определенно существует в этой папке, но я сдался.
На мой взгляд, решения из предыдущих плакатов, которые включают копирование rc.exe повсюду, неверны, потому что ваш проект не будет работать на чужой машине. Если вы правильно исправите пути в проекте, он должен работать на любой машине с правильной установкой Windows SDK.
источник
Я использую Windows 10 x64 и Visual Studio 2017. Я скопировал и вставил rc.exe и rcdll.dll из:
в
он работает с: (qt creator 5.7.1)
источник
Возможно, это немного устарело. Но если копирование rc.exe и exdll.dll не сработало, есть вероятность, что Windows SDK не установлен должным образом, даже если папка Windows SDK существует. Вы можете обновить sdk для win 8 на следующей странице: http://msdn.microsoft.com/en-US/windows/hardware/hh852363 После переустановки sdk проблема будет решена. Также убедитесь, что набор инструментов платформы установлен правильно.
источник
Я недавно столкнулся с этой проблемой. У меня установлены VS 2015 и VS 2017, установлены комплекты Windows 8.1 и 10.
Командная строка из VS 2017 работает нормально, rc.exe виден. В VS 2015 это не так. На самом деле сценарий vcvarsall.bat из VS 2015 добавляет путь к комплекту Windows 10 в переменную PATH, но добавляет немного неправильный путь. Добавляет путь к
в то время как фактический путь
Похоже, что обновление комплекта Windows 10 (или установка VS 2017) привело к этой проблеме.
Решение простое: просто создайте символические ссылки в папке «C: \ Program Files (x86) \ Windows Kits \ 10 \ bin», указывающие на соответствующие папки в основной папке, например, символическую ссылку «x86» для папки «10.0». .17763.0 \ x86 "," x64 "вместо" 10.0.17763.0 \ x64 "и т. Д.
источник
У меня была такая же проблема на VS 2013, и я смог исправить ее, изменив
Platform Toolset
.Вы можете найти его в общих настройках проекта.
Например, переключение
Platform Toolset
на VS 2010 заставит VS использовать Windows \ v7.0A SDK.Вы можете проверить, какой путь к SDK используется, добавив его в событие предварительной сборки:
источник
Я использую Windows 7 с VS 2013 (обновление 3) и Intel Parallel Studio XE Composer Edition для Fortran Windows (обновление 5). Из коробки у меня была такая же проблема.
Как только я исправил проблему с отсутствующим rc.exe, у меня возникла другая проблема. В компоновщике отсутствует kernel32.lib.
Я исправил обе проблемы, обновив параметры Intel Composer (TOOLS-> Options ...-> Intel Composer XE-> Visual Fortran-> Compilers).
Для вкладки Win32 я добавил:
Исполняемые файлы: C: \ Program Files (x86) \ Windows Kits \ 8.0 \ bin \ x86; (непосредственно перед $ (PATH))
Библиотеки: C: \ Program Files (x86) \ Windows Kits \ 8.0 \ Lib \ win8 \ um \ x86; (в конце)
Для вкладки x64 я добавил:
Исполняемые файлы: C: \ Program Files (x86) \ Windows Kits \ 8.0 \ bin \ x64; (непосредственно перед $ (PATH))
Библиотеки: C: \ Program Files (x86) \ Windows Kits \ 8.0 \ Lib \ win8 \ um \ x64;(в конце)
Обновить...
Мне также не хватало некоторых файлов заголовков SDK (winver.h и winapifamily.h). Я добавил следующее в ту же область TOOLS-> Options ....
Для вкладок win32 и x64
Включает: C: \ Program Files (x86) \ Windows Kits \ 8.0 \ Include \ um; C: \ Program Files (x86) \ Windows Kits \ 8.0 \ Include \ shared;
источник
Я только что вычислил один (из 3 всего) проектов в моем решении VS2010 (SDK7.1) (проекты связаны в последовательную линейную цепочку зависимостей), в файлах проекта был пустой файл .rc. Удаление пустого файла .rc (из проекта без его удаления) решило проблему «фатальная ошибка LNK1158: ... cvtres.exe».
Обновление: следующая копия исправила проблему:
Это позволит WinSDK7.1 через MSBuild компилировать файлы .rc в исполняемые файлы.
источник
Это даже проще, чем в Visual Studio 2017. Следуйте этим инструкциям: https://docs.microsoft.com/en-us/visualstudio/install/modify-visual-studio, чтобы изменить с помощью установщика Microsoft Visual Studio.
Оказавшись внутри установщика Microsoft Visual Studio, нажмите «Изменить» в установленном пакете Visual Studio, убедитесь, что в разделе «Сводка» установлен флажок «Разработка для настольных ПК с C ++», а также поддержка MFC и ATl (x86 и x64).
источник
Это может быть вызвано vcxproj, который возник в предыдущих версиях Visual Studio, ИЛИ изменением набора инструментов платформы в свойствах конфигурации -> Общие.
Если да, то возможное решение:
1) Перейдите в Свойства конфигурации -> Каталоги VC ++
2) Выберите раскрывающийся список для исполняемых каталогов
3) Выберите «Наследовать от родительского или по умолчанию для проекта».
источник
Добавьте в окно переменных среды путь sdk 8.1
затем откройте командную строку Visual Studio x64 Native tools и введите
источник
Если вам действительно нужно использовать SDK Windows 10 с Visual Studio 2015, вам необходимо загрузить старую версию в sdk-архиве . Более новая версия SDK изменила место исполняемого файла rc, и MSBuild из Visual Studio 2015 с обновлением 3 (последняя версия) не может его найти. По крайней мере, версия 10.0.14393.795 SDK Windows по-прежнему совместима с Visual Studio 2015.
источник
Возможно, файл проекта был затронут VS2017. Затем, когда вы связываете проект в 2015 году «ССЫЛКА: фатальная ошибка LNK1158: не удается запустить 'rc.exe'», сборка может тормозиться.
В vcxproj попробуйте:
1) заменить:
<WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
с участием:<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
2) удалить:
<VCProjectVersion>15.0</VCProjectVersion>
3) заменить:
<PlatformToolset>v141</PlatformToolset>
на:<PlatformToolset>v140</PlatformToolset>
источник
У меня возникла ошибка ссылки OP
rc.exe
при попытке выполнитьpip install
внутриbash
задачи в конвейере Azure DevOps, который я использовал для создания пакета Python из исходного кода с расширениями C ++. Я был в состоянии решить ее, добавив путьrc.exe
внутриbash
задачи непосредственно перед вызовомpip install
, так как:Это было внутри Azure,
job
которая использоваласьvmImage: 'windows-2019'
для своего агента; то есть Windows Server 2019 с Visual Studio 2019.источник
Я смог заставить его работать и в Windows
Вы можете легко установить переменную среды, используя
источник
В моем случае я установил Windows SDK 10586 через Visual Studio 2015 -> Изменить , после чего будут установлены следующие пути.
источник
Для Visual Studio Community 2019 копирование файлов в ответах выше (
rc.exe rcdll.dll
)C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.21.27702\bin\Hostx86\x86
помогло мне.источник
У меня Windows 10 Pro x64, VS 19 ..
При попытке установить mod_wsgi для apache в cmd.
Это ошибка, которую я получал из командной строки.
Мне пришлось скопировать rc.exe и rcdll.dll из
и добавить его в
результат из cmd
Надеюсь, это кому-то поможет.
источник
«Ошибка LNK1158 не может запустить 'rc.exe» может быть результатом того, что ваш проект был открыт более новой версией MS VS. Например, ваш проект был создан в VS 2015, затем был открыт в 2017 году. Позже ваш проект открывается в 2015 году.
Чтобы решить эту проблему, откройте yourProjectName.vcxproj, найдите WindowsTargetPlatformVersion и перейдите на правильную версию VS
Для VS 2015 это должно быть 8.1, для VS 2017 должно быть 10.0.17763.0
источник
В моем случае VS 2019 на Windows 10 x64 я следовал в основном тому, что было сказано в ответах, но вставил
rc.exe
иrcdll.dll
отC:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x86
доC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
, гдеlink.exe
есть.источник