Visual Studio không thể xây dựng do RC.exe


128

Tôi đã tìm kiếm trực tuyến và không thể tìm thấy bất cứ điều gì tương tự như vấn đề của tôi.

Tôi đã tạo một dự án C ++ trống và thêm main.cpp với lợi nhuận và tôi không thể lấy nó để xây dựng. Đây là tin nhắn tôi nhận được:

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 ==========

Có nơi nào trong VS2012 nơi tôi có thể chỉ định nơi tìm thấy tệp thực thi này không? Tôi đã cài đặt SDK Windows 7 và tôi có tệp thực thi này tại:

C:\Program Files\Microsoft SDKs\Windows\v7.0\Bin

Tôi đến từ Code :: Blocks và sử dụng mingw-gcc mà không gặp rắc rối nào, nhưng gần đây tôi đã cần VS để triển khai được quản lý nên tôi hy vọng ai đó có ý tưởng.


FYI - bị hỏng trong Visual Studio 2013 Professional quá :(
gbjbaanb

nhưng có vẻ như vấn đề là đường dẫn đến thư mục SDK của Windows (hoặc Windows Kits, bất cứ điều gì họ gọi chúng trong tuần này). Var $ (WindowsSdkDir) không được đặt thành thư mục WindowsKits, được đặt thành thư mục WindowsSDK thay vào đó có nội dung 'tối thiểu'.
gbjbaanb

3
Giải pháp tốt cho các sự cố tương tự của VS2015, do VS2017 gây ra: stackoverflow.com/a/45319119/508431
Isaiah Norton

Câu trả lời:


242

Tìm thấy cái này trên Google ... Tôi cho rằng trong trường hợp của bạn, bạn sẽ sao chép rc.exercdll.dllđến visual studio 2012\vc\binhoặc bất cứ nơi nào bạn đã cài đặt nó:

Phần 2: LIÊN KẾT CỐ ĐỊNH: fatal error LNK1158: cannot run ‘rc.exe’

Thêm phần này vào các biến môi trường PATH của bạn:

C: \ Tệp chương trình (x86) \ Windows Kits \ 8.0 \ bin \ x86

Sao chép các tệp này:

rc.exe
rcdll.dll

Từ

C: \ Tệp chương trình (x86) \ Windows Kits \ 8.0 \ bin \ x86

Đến

C: \ Tệp chương trình (x86) \ Microsoft Visual Studio 11.0 \ VC \ bin

Hoặc tôi cũng tìm thấy điều này:
Microsoft đã bỏ một vài thứ trong gói MSVT của họ. Vì không ai biết liệu họ có bị bỏ rơi do nhầm lẫn hay vì lý do giấy phép hay không, không ai với MSVC quá quan tâm đến việc đưa ra. Một vài tìm kiếm Google bật lên một số nguồn khó khăn. May mắn thay, Microsoft cuối cùng đã nhận ra và giải quyết vấn đề này và nhiều vấn đề khác.

http://msdn.microsoft.com/vstudio/express/support/faq/default.aspx#pricing

http://msdn.microsoft.com/vstudio/express/support/install/

Có rất nhiều tệp MSVT bị thiếu nhưng tệp SDK bị thiếu thì không.

và điều này:
Tôi đã có cùng một vấn đề mà tôi đã giải quyết bằng cách làm điều này:

  1. Cài đặt Microsoft .Net Framework 2.0
  2. Thêm đường dẫn của tệp .NET Framework (đối với tôi "C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727") vào cài đặt trình biên dịch Toàn cầu> Chương trình> Đường dẫn bổ sung trong Code :: Blocks.

Bây giờ tôi có thể xây dựng và liên kết các tệp tài nguyên mà không có lỗi.


6
Cảm ơn, đó là một cách đơn giản để sao chép các tệp thực thi RC từ thùng SDK sang thùng VS.
Patrick.SE

Chà, hầu hết câu trả lời này là trích dẫn ... vì vậy chỉ cần làm rõ "Tôi có cùng một vấn đề mà tôi đã giải quyết bằng cách làm điều này:" không phải là tôi, mà là một cái gì đó tôi tìm thấy được đăng
Kat Cox

1
Câu hỏi: tại sao bạn sử dụng các tệp x86 RC.exe và rcdll.dll, thay vì các phiên bản x64?
Carl

1
Chà, tôi vừa sao chép và dán các câu trả lời tôi tìm thấy ... nhưng bạn sẽ sử dụng x86 trên bản cài đặt 32 bit (mà bạn có thể có ngay cả trên hệ thống 64 bit) và bạn sẽ sử dụng x64 trên bản cài đặt 64 bit ... đoán nó phụ thuộc vào phiên bản của tệp mà nó nói bạn phải có
Kat Cox

2
Tôi đang C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64và chạy các lệnh: 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"để sửa lỗi này trong Visual Studio 2015
Jari Turkia

61

Chúng tôi đã khắc phục sự cố này với các bản dựng CMake / Visual Studio 2015 sau khi cài đặt VS2017 trên máy. Giải pháp chính xác trong trường hợp của chúng tôi là chỉ định phiên bản Window Kit (8.1) cho Dấu nhắc lệnh của Visual Studio - nếu không, bạn sẽ nhận được Windows 10 Kit theo mặc định không bao gồm RC.exe trong thư mục bin.

ví dụ: Bắt đầu Menu-> Visual Studio 2015-> VS2015 x64 Lệnh công cụ gốc

%comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64 8.1

Lưu ý tùy chọn 8.1 ở cuối


5
Tôi cho rằng đây là cách chính xác để giải quyết vấn đề này.
jagttt

2
Mặc dù tôi cũng ở trong tình trạng tương tự (Win10 với VS2015 VÀ VS2017 cũng được cài đặt), nhưng nó không hoạt động với tôi. Điều duy nhất đã sửa nó cho tôi là thêm thủ công "C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v7.1A \ Bin" (phiên bản SDK cuối cùng để chứa RC.exe) vào PATH!
Scylardor

@Scylardor - đường dẫn bạn đã sử dụng là cho SDK 7.1. Bạn đã cài đặt SDK 8.1 trong C: \ Program Files (x86) \ Microsoft SDKs \ Windows chưa? Có thể sử dụng cùng một lệnh với 7.1 ở cuối trong trường hợp của bạn hoặc thay vào đó, bạn có thể cần phải cài đặt SDK 8.1.
MattAU

Tôi đã tạo một tệp bó với call C:\\(....)\vcvarsall.bat" amd64 8.1start cmake-gui, hoạt động như một lá bùa
Marius

Cảm ơn, đã cùng thiết lập chính xác (side-by-side VS) và đây là nhiều bụi vì sao chép tập tin xung quanh!
E. Moffat

32

Từ những gì tôi đã tìm thấy, nếu bạn có HĐH windows 7, thực hiện các bước sau sẽ khắc phục sự cố:

1) đi tới C: \ Chương trình tệp (x86) \ Microsoft SDKs \ Windows \ v7.1A \ Bin

2) sau đó sao chép RC.exe và RcDll từ tệp này

3) đi tới C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ VC \ bin và dán hai tệp bạn đã sao chép vào đó.

Tôi đã có cùng một vấn đề, và giải pháp được đăng ở trên không hoạt động. Giải pháp của tôi bắt nguồn từ nó, và nó hiệu quả với tôi, nếu những cách trên không hiệu quả, bạn có thể thử cái này.


4
Nói một cách dễ hiểu, điều này cũng có hiệu quả với tôi, sao chép từ v7.1A \ Bin sang Microsoft Visual Studio 14.0 \ VC \ bin
escapecharacter

Điều này không hoạt động với tôi trên máy chủ Windows 2012 với VS 2017 được cài đặt cùng với VS 2015.
iLikeDirt

18

rc.exeLỗi này có thể xảy ra nếu trình biên dịch Visual C ++ và phiên bản SDK Windows 10 không tương ứng với cùng một năm Visual Studio. Nói chung, giải pháp là đảm bảo bạn có trên hệ thống của mình và đang sử dụng trong phần tổng hợp, VC ++ và Windows SDK cho năm studio hình ảnh bạn đang sử dụng.

Chẳng hạn, nếu bạn có Visual Studio 2017 hoặc 2019 và bạn đã cài đặt Build Tools 2015 mà không chọn cài đặt SDK Windows 2015 của riêng mình (cài đặt mặc định không cài đặt nó!) Và đang cố gắng sử dụng nó để biên dịch, bạn có thể chạy vào vấn đề này.

Trong trường hợp của tôi, tôi đã có Visual Studio 2017. Khi tôi cố gắng sử dụng Build Tools 2015 để biên dịch thư viện python (hoặc có thể là bất kỳ chương trình nào), đã xảy ra lỗi 'RC.exe' tương tự. Tôi đọc rằng trình biên dịch VS2015 14.0 C ++ có thể bị trục trặc nếu nó cố sử dụng SDK Windows 10 từ Visual Studio 2017.

Tôi đã gỡ cài đặt Build Tools 2015 và cài đặt lại, lần này là cài đặt tùy chỉnh , chọn cài đặt cả hai thành phần SDK C ++ và Windows 10 trực quan. Điều này đã khắc phục vấn đề.

CẬP NHẬT: Tôi chỉ nhìn vào Build Tools 2015 một lần nữa và dường như không còn tùy chọn cài đặt tùy chỉnh nữa. Nếu vậy, cài đặt Visual Studio 2015 với các thành phần C ++ và Windows SDK cũng sẽ hoạt động.


2
Cảm ơn bạn rất nhiều, đây thực sự là giải pháp thích hợp. Lưu ý: Tôi đã thử thêm SDK thông qua lệnh "Sửa đổi" của trình cài đặt, nhưng nó đã bị kẹt. Phải khởi động lại, gỡ cài đặt, sau đó cài đặt từ đầu.
Hươu cao cổ Violet

Bất cứ ai cũng có thể giúp làm rõ ý nghĩa của "... đã cài đặt lại [Build Tools 2015], lần này là cài đặt tùy chỉnh, chọn cài đặt cả hai thành phần SDK C ++ và Windows 10 trực quan." Cài đặt từ đâu? Là một độc lập từ Microsoft?
estebro

@estebro Nếu bạn google "Build Tools 2015" và nhấp vào liên kết đầu tiên, bạn sẽ được đưa đến trang tải xuống của Microsoft cho gói độc lập này. Tải xuống và cài đặt gói, tuy nhiên KHÔNG để gói cài đặt theo mặc định nếu bạn gặp sự cố RC.exe. INSTEAD, chọn cài đặt tùy chỉnh và đảm bảo bật cài đặt Windows SDK (không phải mặc định).
OrangeSherbet

1
Đây là câu trả lời đúng, đúng về mặt khái niệm. Tất cả những cái khác là hack có thể không hoạt động; Không ai trong số họ làm cho tôi.
iLikeDirt

1
OMFG NÀY! Cảm ơn bạn đã giải thích rõ ràng. Tôi gặp vấn đề chính xác và mọi người đổ lỗi cho việc cài đặt là một cá trích đỏ. Tôi cài đặt lại năm lần để thấy kết quả tương tự.
Ananth

11

Trong trường hợp của tôi, tôi đã có một lỗi trộn và khớp giữa các dự án được tạo trong VS2015 và VS2017. Trong tệp .vcxproj của tôi, có phần này được gọi là Propertygroup Label = "Globals">. Tôi đã có một phần cho TargetPl PlatformVersion = 10.0.15063.0. Khi tôi loại bỏ TargetPl PlatformVersion, điều đó đã giải quyết được vấn đề.

Xin lỗi tôi không thể sao chép và dán khối ở đây, nhưng định dạng mã hóa stackoverflows không cho phép điều đó.


Cái này cố định. Cám ơn.
My1

7

Tôi đang dùng Windows 7 x64 và Visual Studio 2017 . Tôi gặp lỗi này khi cố gắng biên dịch tập lệnh cython. Đó là cách tôi giải quyết: Tôi sao chép và dán rc.exercdll.dll từ:

C:\Program Files (x86)\Windows Kits\8.1\bin\x86

đến

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64

3
Các hướng dẫn này dành cho 32-bit. Đối với 64-bit, hãy thử C:\Program Files (x86)\Windows Kits\8.1\bin\x64để C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64.
Contango

Đối với chúng tôi với Cython, điều này làm việc: Chúng tôi đã copy 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_amd64sửa chữa Visual Studio không thể xây dựng do lỗi rc.exe
Brandon W. Vua

4

Đây là trường hợp gần như tương tự của
tôi : Tôi có dự án làm việc VC2010 dưới Win7 32bit. Tôi thực hiện cài đặt sạch VC2013 trong Win8.1 64bit Sau khi chuyển đổi thành công dự án của tôi từ VC2010 sang VC2013, trong quá trình biên dịch lần 1, lỗi tăng sau:
Mã tạo xong
LINK: lỗi nghiêm trọng LNK1158: không thể chạy 'RC.exe'

Giải pháp 1:
Xóa toàn bộ dòng Cameron <ExecutablePath condition =, ...,> </ ExecutablePath>, trong phần tử, <property Group>, trong tệp NameOfYourSolution.vcxproj trong notepad trước để chạy VC2013
Giải pháp 2:
Chỉ sao chép hai tệp: RC.exe và rcdll.dll từ Triệu c: \ Chương trình tệp (x86) \ Windows Kits \ 8.1 \ bin \ x86 \ đối với các c: \ Chương trình tệp (x86) \ Microsoft Visual Studio 12.0 \ VC \ bin \ Nott và quá trình biên dịch sẽ được thành công !!
Ghi chú:
a) Không cần phải chạm vào bất kỳ biến môi trường PATH hoặc Windows hoặc VC nào khác.
b) Nền tảng công cụ nền tảng Nhận dữ liệu (Trang thuộc tính dự án -> Thuộc tính cấu hình -> Chung) sẽ được đặt tự động thành Trực quan Studio Studio 2013 (v120) (không thay đổi thành Trò chơi trực quan 2010 Studio để có thể tiếp tục phát triển dự án của bạn theo khái niệm VC2013)


4

Trong trường hợp của tôi, lỗi là do cài đặt xấu trong vcxproj. Các vcxproj là từ một bên thứ ba, vì vậy tôi không chắc làm thế nào nó có được trong trạng thái đó.

Cụ thể, đối với một trong các combo nền tảng / hồ sơ, thư mục nền tảng bị thiếu trong thư mục bin SDK của Windows:

<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
 <ExecutablePath>$(VCInstallDir)bin\x86_amd64;$(VCInstallDir)bin;$(WindowsSdkDir)bin\NETFX 4.0 Tools;$(WindowsSdkDir)bin\x86;

đúng rồi, ở đâu

<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
 <ExecutablePath>$(VCInstallDir)bin\x86_amd64;$(VCInstallDir)bin;$(WindowsSdkDir)bin\NETFX 4.0 Tools;$(WindowsSdkDir)bin;

đã sai. Có thể cần phải cuộn đến cuối các hộp mã để thấy sự khác biệt.

Cũng lưu ý rằng vì một số lý do lạ $ (WindowsSdkDir) bin \ x64; KHÔNG làm việc cho tôi. Đã cố gắng tìm hiểu tại sao, khi RC.exe chắc chắn tồn tại trong thư mục đó, nhưng tôi đã từ bỏ.

Theo tôi, các giải pháp từ các áp phích trước liên quan đến việc sao chép RC.exe ở mọi nơi là sai, vì dự án của bạn sẽ không hoạt động trên máy của bất kỳ ai khác. Nếu bạn sửa các đường dẫn trong dự án một cách chính xác, nó sẽ hoạt động trên mọi máy có cài đặt Windows SDK chính xác.


4

Tôi đang dùng Windows 10 x64 và Visual Studio 2017. Tôi đã sao chép và dán RC.exe và rcdll.dll từ:

C:\Program Files (x86)\Windows Kits\8.1\bin\x86

đến

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64

nó hoạt động với: (qt creator 5.7.1)


3

Điều này có thể là một chút lỗi thời. Nhưng nếu sao chép RC.exe và exdll.dll không hoạt động, có khả năng sdk windows không được cài đặt đúng cách ngay cả khi thư mục sdk của windows tồn tại. Bạn có thể cập nhật sdk cho win 8 trong trang sau: http://msdn.microsoft.com/en-US/windows/hardware/hh852363 Sau khi cài đặt lại sdk, vấn đề sẽ được giải quyết. Cũng đảm bảo rằng bộ công cụ nền tảng được đặt đúng.


3

Tôi đã gặp vấn đề này gần đây. Tôi đã cài đặt cả VS 2015 và VS 2017, bộ Windows 8.1 và 10 đã cài đặt.

Dấu nhắc lệnh từ VS 2017 hoạt động như mong đợi, RC.exe hiển thị. Trong VS 2015 điều này không đúng. Trên thực tế, tập lệnh vcvarsall.bat từ VS 2015 không thêm đường dẫn đến bộ Windows 10 vào biến PATH, nhưng nó thêm một đường dẫn hơi sai. Nó thêm đường dẫn đến

"C:\Program Files (x86)\Windows Kits\10\bin\x86"

trong khi đường dẫn thực tế là

"C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x86"

Có vẻ như việc cập nhật bộ Windows 10 (hoặc cài đặt VS 2017) đã dẫn đến vấn đề này.

Vì vậy, giải pháp rất đơn giản: chỉ cần tạo các liên kết tượng trưng trong thư mục "C: \ Program Files (x86) \ Windows Kits \ 10 \ bin" chỉ vào các thư mục tương ứng trong thư mục bên dưới, ví dụ: liên kết tượng trưng "x86" cho thư mục "10.0 .17763.0 \ x86 "," x64 "cho" 10.0.17763.0 \ x64 ", v.v.


2

Tôi gặp vấn đề tương tự trên VS 2013 và đã có thể khắc phục bằng cách thay đổi Platform Toolset.

Bạn có thể tìm thấy nó trong các thiết lập dự án, nói chung.

Ví dụ: chuyển Platform Toolsetsang VS 2010 sẽ khiến VS sử dụng SDK Windows \ v7.0A.

Bạn có thể kiểm tra đường dẫn SDK nào được sử dụng bằng cách thêm đường dẫn này vào sự kiện prebuild của bạn:

echo using SDK $(WindowsSdkDir)

nhưng điều này có nghĩa là VS2013 hoàn toàn không hỗ trợ ứng dụng MFC. Lưu ý rằng RC.exe nằm trong thư mục "Windows Kits" chứ không phải trong thư mục SDK nữa. Vô ích.
gbjbaanb

2

Tôi đang sử dụng Windows 7 với VS 2013 (Bản cập nhật 3) và Intel Parallel Studio XE Composer Edition cho Fortran Windows (Bản cập nhật 5). Tôi đã gặp vấn đề tương tự.

Khi tôi đã khắc phục sự cố RC.exe bị thiếu, tôi gặp vấn đề khác. Trình liên kết bị thiếu kernel32.lib.

Tôi đã sửa cả hai vấn đề bằng cách cập nhật Tùy chọn Trình soạn thảo Intel (CÔNG CỤ-> Tùy chọn ...-> Intel Composer XE-> Visual Fortran-> Trình biên dịch).

Đối với tab Win32 tôi đã thêm:

Thực thi: C: \ Chương trình tệp (x86) \ Windows Kits \ 8.0 \ bin \ x86; (ngay trước $ (PATH))

Thư viện: C: \ Tệp chương trình (x86) \ Windows Kits \ 8.0 \ Lib \ win8 \ um \ x86; (cuối cùng)

Đối với tab x64 tôi đã thêm:

Thực thi: C: \ Chương trình tệp (x86) \ Windows Kits \ 8.0 \ bin \ x64; (ngay trước $ (PATH))

Thư viện: C: \ Tệp chương trình (x86) \ Windows Kits \ 8.0 \ Lib \ win8 \ um \ x64; (cuối cùng)

Cập nhật ...

Tôi cũng bị thiếu một số tệp tiêu đề SDK (winver.h và winapif Family.h). Tôi đã thêm các mục sau vào cùng khu vực CÔNG CỤ-> Tùy chọn ....

Đối với cả tab win32 và x64

Bao gồm: C: \ Tệp chương trình (x86) \ Windows Kits \ 8.0 \ Bao gồm \ um; C: \ Tệp chương trình (x86) \ Windows Kits \ 8.0 \ Bao gồm \ chia sẻ;


2

Tôi chỉ tìm ra một (trong tổng số 3 dự án) trong giải pháp VS2010 (SDK7.1) của tôi (các dự án được liên kết trong chuỗi phụ thuộc tuyến tính tuần tự), có tệp .rc trong tệp dự án trống. Xóa tệp .rc trống (khỏi dự án mà không xóa tệp) đã giải quyết vấn đề "lỗi nghiêm trọng LNK1158: ... cvtres.exe".

Cập nhật: Bản sao sau đã khắc phục sự cố:

xcopy "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\cvtres.exe" "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\x86_amd64\"

Điều này sẽ cho phép WinSDK7.1, thông qua MSBuild, để có thể biên dịch các tệp .rc thành các tệp thực thi.


Bản sao BTW sau đã khắc phục sự cố: xcopy "C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ bin \ cvtres.exe" "C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ bin \ x86_amd64 \ "Điều này sẽ cho phép WinSDK7.1, thông qua MSBuild, để có thể biên dịch các tệp .rc thành các tệp thực thi.
Tiệt trùng

2

Điều này thậm chí còn dễ dàng hơn với Visual Studio 2017. Thực hiện theo các hướng dẫn sau: https://docs.microsoft.com/en-us/visualstudio/install/modify-visual-studio để sửa đổi bằng Microsoft Visual Studio Installer.

Khi đã ở trong Trình cài đặt Microsoft Visual Studio, hãy bấm sửa đổi trong gói Visual Studio đã cài đặt của bạn, đảm bảo kiểm tra sự phát triển của Máy tính để bàn với C ++ và hỗ trợ MFC và ATl (x86 và x64).


1

Điều này có thể do vcxproj bắt nguồn từ các phiên bản trước của Visual Studio HOẶC thay đổi Bộ công cụ nền tảng trong Thuộc tính cấu hình -> Chung.

Nếu vậy, giải pháp có thể:

1) Chuyển đến Thuộc tính cấu hình -> Thư mục VC ++

2) Chọn thả xuống cho các Thư mục thực thi

3) Chọn "Kế thừa từ cha mẹ hoặc mặc định dự án"


1

Thêm vào đường dẫn biến sdk 8.1 của môi trường

C: \ Tệp chương trình (x86) \ Windows Kits \ 8.1 \ bin \ x64

sau đó mở Visual studio x64 Dấu nhắc lệnh của công cụ bản địa và nhập

vcvarsall.bat


1

Nếu bạn thực sự cần sử dụng SDK Windows 10 với Visual Studio 2015, bạn phải tải xuống phiên bản cũ hơn trên sdk-archive . Phiên bản mới hơn của SDK đã thay đổi vị trí của tệp thực thi RC và MSBuild của Visual Studio 2015 bản cập nhật 3 (phiên bản mới nhất) không thể định vị được nó. Ít nhất là phiên bản 10.0.14393.795 của SDK Windows vẫn tương thích với Visual Studio 2015.


Đây có thể là lời giải thích thực sự cho vấn đề gây phẫn nộ này. Đây là một QA gần đây khác về vấn đề này, cho bất kỳ ai đang ở đây ........ stackoverflow.com/a/53804573/294884
Fattie 16/12/18

1

Có lẽ tập tin dự án đã được chạm vào bởi VS2017. Sau đó, khi bạn liên kết dự án vào năm 2015 "LINK: lỗi nghiêm trọng LNK1158: không thể chạy 'rc.exe'" có thể hãm bản dựng.

Trong vcxproj hãy thử:

1) thay thế:

<WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion> với: <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>

2) xóa: <VCProjectVersion>15.0</VCProjectVersion>

3) thay thế: <PlatformToolset>v141</PlatformToolset> bằng: <PlatformToolset>v140</PlatformToolset>


1

Tôi đã gặp lỗi liên kết của OP rc.exekhi cố gắng thực thi pip installbên trong một bashtác vụ trong đường ống Azure DevOps mà tôi đang sử dụng để xây dựng gói Python từ nguồn có phần mở rộng C ++. Tôi đã có thể giải quyết nó bằng cách thêm đường dẫn vào rc.exebên trong bashtác vụ ngay trước khi gọi pip install, như vậy:

PATH="/c/Program Files (x86)/Windows Kits/10/bin/10.0.18362.0/x64":$PATH

Đó là bên trong một Azure jobđang sử dụng vmImage: 'windows-2019'cho đại lý của nó; tức là Windows Server 2019 với Visual Studio 2019.


1

Tôi đã có thể làm cho nó hoạt động với tôi theo cách này trong các cửa sổ

  1. Đặt biến môi trường của bạn để trỏ đến vị trí của RC.exe của bạn giả sử bạn đang sử dụng phiên bản x86

C: \ Tệp chương trình (x86) \ Windows Kits \ 10 \ bin \ 10.0.18362.0 \ x86

Bạn có thể dễ dàng đặt biến môi trường của mình bằng cách sử dụng

Đường dẫn C:> setx "% path%; C: \ Chương trình tệp (x86) \ Windows Kits \ 10 \ bin \ 10.0.18362.0 \ x86"

  1. Khởi động lại Qt Creator của bạn
  2. Làm sạch và xây dựng lại

0

Trong trường hợp của tôi, tôi đã cài đặt Windows SDK 10586 qua Visual Studio 2015 -> Sửa đổi , sau đó các đường dẫn sau được cài đặt.

C: \ Tệp chương trình (x86) \ Windows Kits \ 10 \ bin \ arm64 \ rc.exe

C: \ Tệp chương trình (x86) \ Windows Kits \ 10 \ bin \ x64 \ rc.exe

C: \ Tệp chương trình (x86) \ Windows Kits \ 10 \ bin \ x86 \ rc.exe


0

Đối với Visual Studio Community 2019, sao chép các tệp trong các câu trả lời ở trên ( rc.exe rcdll.dll) để C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.21.27702\bin\Hostx86\x86thực hiện thủ thuật cho tôi.


0

Tôi đang dùng Windows 10 Pro x64, VS 19 ..

Khi cố gắng cài đặt mod_wsgi cho apache trong cmd.

C:\>python -m pip install mod_wsgi

Đây là lỗi tôi đã nhận được từ dấu nhắc lệnh của tôi.

LINK : fatal error LNK1158: cannot run 'rc.exe'

error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\x86_amd64\\link.exe' failed with exit status 1158

Tôi đã phải sao chép RC.exe & rcdll.dll từ

C: \ Tệp chương trình (x86) \ Windows Kits \ 10 \ bin \ 10.0.18362.0 \ x86

và thêm nó vào

C: \ Tệp chương trình (x86) \ Microsoft Visual Studio 14.0 \ VC \ bin \ x86_amd64

kết quả từ cmd

C:\>python -m pip install mod_wsgi
Collecting mod_wsgi
Using cached mod_wsgi-4.7.1.tar.gz (498 kB)
Installing collected packages: mod-wsgi
Running setup.py install for mod-wsgi ... done
Successfully installed mod-wsgi-4.7.1

Hy vọng điều này sẽ giúp được ai đó.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.