2016-07-10 13 views
29

Tôi vừa mới cài đặt Visual Studio 2015 trên máy tính xách tay làm việc của tôi với Windows 10

Tôi đã nhân bản một kho lưu trữ với một giải pháp tạo ra với cùng một phiên bản của visual Studio (cập nhật 3) trên máy tính khác, luôn với các cửa sổ 10.

Khi tôi cố gắng xây dựng các giải pháp trên máy tính xách tay của tôi, tôi xin lỗi sau:

c:\program files (x86)\microsoft visual studio 14.0\vc\include\crtdefs.h(10): fatal error C1083: Cannot open include file: 'corecrt.h': No such file or directory 

Trong this page tôi đã đọc mà tôi phải thêm $(UniversalCRT_IncludePath) vào bao gồm của tôi đường dẫn, nhưng ngay cả trong trường hợp này tôi cũng gặp lỗi tương tự.

Tôi đã kiểm tra và $(UniversalCRT_IncludePath) đề cập đến con đường này:

C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt 

con đường này là mất tích trên máy tính xách tay của tôi. Thay vào đó tôi đã có một:

C:\Program Files (x86)\Windows Kits\10\Include\10.0.10150.0\ucrt 

Vì vậy, có vẻ như phiên bản cửa sổ là khác nhau. Có lẽ điều này là đúng, bởi vì trên máy tính xách tay của tôi, tôi đã không cài đặt các cửa sổ cập nhật 1511, trong khi trong các máy tính khác là tất cả các cài đặt một cách chính xác.

Câu hỏi của tôi là làm thế nào tôi có thể tham chiếu đến corecrt.h tệp trong cả hai máy tính mà không làm cho một mớ hỗn độn với đường dẫn. Tôi muốn tránh khó liên kết những con đường này vì chúng phụ thuộc vào máy tính. và tôi không hiểu tại sao trong máy tính xách tay của tôi con đường là sai xem xét rằng nó nên được hệ thống phụ thuộc và không cabled vào giải pháp.

Tôi làm cách nào để giải quyết vấn đề này? Tôi biết rằng tôi có thể cập nhật máy tính xách tay của mình lên cùng một phiên bản cửa sổ nhưng tôi muốn tránh nó vì nhiều lý do.

- EDIT

tôi đã nhận thấy rằng tôi có con đường này:

C:\Program Files (x86)\Windows Kits\8.1\Include\10.0.10240.0\ucrt 

Nó có cùng một phiên bản 10.0.10240.0 nhưng có liên quan đến một phiên bản cửa sổ bộ, như vậy có lẽ có một số vấn đề trong này trường hợp. Trên máy tính xách tay của tôi tôi cũng đã Visual Studio 2013, vì vậy có lẽ nó có thể đến từ nó, nhưng tôi không thể loại bỏ nó bởi vì tôi đang duy trì một dự án với Visual Studio 2013 và tôi không thể loại bỏ nó được nêu ra.

Có thể trong thư mục Visual Studio 2015 tôi có thể đặt rõ ràng $(UniversalCRT_IncludePath) trong một số tệp .bat (vcvarsall.bat hoặc tương tự) nhưng tôi không biết tệp nào và vị trí nào.

Trả lời

50

Đối với Visual Studio 2017 tôi phải:

  1. Chạy Visual Studio Installer.
  2. Chọn nút Sửa đổi.
  3. Chuyển đến tab "Thành phần riêng lẻ".
  4. Cuộn xuống "Trình biên dịch, tạo công cụ và thời gian chạy".
  5. Chọn "Windows CRT SDK phổ biến".
  6. Cài đặt.
+1

Xác nhận điều này đã được khắc phục và là tốt nhất với Doanh nghiệp năm 2017. – TravisWhidden

+1

Nếu bạn đã xóa exe cài đặt của bạn, chỉ cần đi vào Add/Remove Programs> Nhấp chuột phải vào Microsoft Visual Studio> Modify. –

+2

Giải pháp parsley72 cũng hoạt động với ấn bản Cộng đồng của Visual Studio 2017. Vì vậy, tôi đoán đó là điều cần thiết với tất cả các phiên bản. Bằng cách này, CRT có nghĩa là ** C ** ** R ** un ** T ** ime. – Patapoom

20

bạn có thể đã sửa lỗi này, nhưng nếu người khác đến cùng, tôi đã giải quyết vấn đề này bằng cách làm theo mẹo here.

Về cơ bản thiết lập các biến môi trường hệ thống sau:

INCLUDE="C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt" 
LIB="C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\um\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64" 

Có lẽ một tốt hơn thực hành tốt nhất cách làm việc đó, nhưng đối với chỉ sửa chữa nó siêu nhanh, điều này làm việc rất lớn.

4

Có thể có điều gì đó bị thiếu trong khi cài đặt Visual Studio. Bạn có thể kiểm tra xem bạn có quên chọn bộ công cụ VC++ hay không.

  1. Control Panel ->All Control Panel Items ->Programs and Features ->Visual studio 2015
  2. Bấm change/uninstall
  3. Chọn VC++2015 toolset(x86,x64) và cài đặt.

Đối với Visual Studio 2017 RC Cộng đồng (15.0.26206.0), tên của công cụ bắt buộc là VC++ 2017 v141 toolset(x86,x64):

`VC++ 2017 v141 toolset(x86,x64)

+2

Đừng quên liên kết máy tính với web – simondoo

5

tôi đã cùng một vấn đề. Tôi đã thử câu trả lời ở đây. Nó không hoạt động 100%. Những gì tôi thấy là bộ công cụ VC++ 2015 (x86, x64) là cần thiết cho phiên bản Cộng đồng 2017 (mà tôi đang sử dụng bây giờ), nhưng không thêm bất kỳ liên kết nào bao gồm hoặc lib.

Trân trọng.

5

Thử kiểm tra thuộc tính dự án (Menu Project> Properties). Trong Thuộc tính cấu hình> Chung, sau đó kiểm tra Platform Toolset và Phiên bản SDK của Windows (nếu sử dụng Platform Toolset> VS2015) Sau khi thiết lập Platform Toolset = VS2017 và Windows SDK Version = 10.x.x nó hoạt động cho tôi.

1

Đối với tôi giúp thiết lập này trong Visual Studio:

  • trong thuộc dự án -> VC++ Thư mục -> Bao gồm Thư mục -> mở cho chỉnh sửa.
  • kiểm tra hộp kiểm Kế thừa từ cha mẹ hoặc dự án giá trị mặc định
1

Đối Visual Studio 2015 Enterprise, tôi giải quyết vấn đề theo cách tương tự như parsley72: (. Ex phiên bản 8.1/Universal)

1. Run the Visual Studio Installer; 
2. Select Modify button; 
3. Go to "Windows and Web Development"; 
4. Tick "Universal Windows App Development Tools"; 
5. Install. 
0

Tôi không có kinh nghiệm với VC++ nhưng tôi phải xây dựng ta-lib cho dự án python. Vì tôi không muốn chạm vào bất kỳ thứ gì trong VC Studio nhưng tôi đã trải nghiệm với lập trình C thông thường trong Unix, tôi đã thực hiện phương pháp thêm đường dẫn bao gồm trực tiếp vào Makefile; ví dụ.:

INCPATH = -I ".......... \ include" -I ".......... \ src \ ta_common" -I "...... .... \ src \ ta_abstract "-I" .......... \ src \ ta_abstract \ bảng "-I" .......... \ src \ ta_abstract \ frames "-I "C: \ Program Files (x86) \ Windows Kits \ 10 \ Bao gồm \ 10.0.10150.0 \ ucrt" -I "C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ VC \ include"

Có nhiều Makefiles dưới thư mục con nên tôi phải thay đổi từng thư mục nhưng nó hoạt động tốt cho tôi.

Các vấn đề liên quan