2008-12-02 29 views
66

Tôi đã kiểm tra bản sao của ứng dụng C++ từ SourceForge (HoboCopy, nếu bạn tò mò) và cố gắng biên dịch nó.Visual Studio tìm kiếm các tệp tiêu đề C++ ở đâu?

Visual Studio cho tôi biết rằng nó không thể tìm thấy tệp tiêu đề cụ thể. Tôi tìm thấy tập tin trong cây nguồn, nhưng tôi cần phải đặt nó ở đâu, để nó sẽ được tìm thấy khi biên dịch?

Có thư mục đặc biệt nào không?

Trả lời

87

Visual Studio sẽ cho tiêu đề theo thứ tự này:

  • Trong thư mục nguồn hiện tại.
  • Trong Thư mục bao gồm bổ sung trong thuộc tính dự án (trong C++ | Chung).
  • Trong Visual Studio C++ Bao gồm thư mục dưới cụTùy chọndự án và giải phápVC++ Thư mục.

Trong trường hợp của bạn, hãy thêm thư mục có tiêu đề vào thuộc tính dự án.

+2

Câu trả lời hay, nhưng tôi phải thêm, trong Visual Studio 2003, bạn nên xem "Công cụ | Tùy chọn | VC++ Thư mục" không phải "Công cụ | Tùy chọn | Dự án và Giải pháp | Thư mục VC++". – Graf

+33

bộ tiền xử lý trong VS 2010 chỉ nhìn vào thư mục hiện tại nếu cú ​​pháp bao gồm được trích dẫn được sử dụng (ví dụ: #include "whatever.h"). Sử dụng các dấu ngoặc nhọn (ví dụ #include ) bỏ qua thư mục hiện tại (http://msdn.microsoft.com/en-us/library/36k2cdd4(v=VS.100).aspx) –

+4

Trong Visual Studio 2010 và mới hơn, "thư mục C++ chuẩn" không còn trong công cụ-> tùy chọn và nằm trong trang thuộc tính chung: http://blogs.msdn.com/b/vsproject/archive/2009/07/07/vc-directories.aspx –

10

Nếu dự án đi kèm với tệp dự án Visual Studio, thì dự án đó đã được định cấu hình để tìm tiêu đề cho bạn. Nếu không, bạn sẽ phải thêm thư mục tệp bao gồm vào các thiết lập dự án bằng cách bấm chuột phải vào dự án và chọn Thuộc tính, bấm vào "C/C++", và thêm thư mục chứa các tệp bao gồm vào "Thư mục Bao gồm Bổ sung" hộp chỉnh sửa.

6

Cố gắng thêm cụm từ này làm nhận xét cho bài đăng của Rob Prouse, nhưng việc thiếu định dạng khiến bạn không thể hiểu được.

Trong Visual Studio 2010, hộp thoại "Công cụ | Tùy chọn | Dự án và Giải pháp | VC++" báo cáo rằng "Thư mục VC++ chỉnh sửa trong Công cụ> Tùy chọn không được dùng nữa", đề xuất bạn sử dụng Trình quản lý thuộc tính khá trực quan.

Nếu bạn thực sự, thực sự muốn cập nhật $ mặc định (IncludePath), bạn phải hack mục thích hợp ở một trong các tập tin XML:

\ Program Files (x86) \ MSBuild \ Microsoft cpp \ v4.0 \ Platforms \ Win32 \ PlatformToolsets \ V100 \ Microsoft.Cpp.Win32.v100.props

hoặc

\ Program Files (x86) \ MSBu ild \ Microsoft.Cpp \ v4.0 \ Nền tảng \ x64 \ PlatformToolsets \ v100 \ Microsoft.Cpp.X64.v100.props

(Có thể không được Microsoft khuyên dùng.)

1

Có tồn tại một câu hỏi mới hơn những gì đang chạm vấn đề tốt hơn hỏi How do include paths work in Visual Studio?

Có được việc tiết lộ cách để làm điều đó trong các phiên bản mới hơn của VisualStudio

  • trong dự án hiện tại chỉ (vì câu hỏi được đặt ở đây quá) cũng như
  • cho mỗi dự án mới là mặc định

Câu hỏi thứ hai là câu trả lời của Steve Wilkinson ở trên giải thích, điều gì là, như ông tự cho là mình, chứ không phải những gì Microsoft sẽ đề xuất.

Để nói nó shortway ở đây: làm điều đó, nhưng làm điều đó trong User-Directory

C: \ Users \ username \ AppData \ Local \ Microsoft \ MSBuild \ v4.0

trong XML-file

Microsoft.Cpp.Win32.user.props

và/hoặc

Microsoft.Cpp.x64.user.props

và không có trong thư mục C: file \ program - thư mục, nơi mà chưa sửa đổi Factory-File của Microsoft dự kiến ​​sẽ cư trú.

Sau đó, bạn làm theo cách như VisualStudio đang làm việc đó và mọi thứ đều đặn.

Để biết thêm thông tin tại sao làm như vậy, hãy xem câu trả lời của tôi there.

4

Dường như có lỗi trong Visual   Studio   cộng đồng 2015. Đối với dự án 64 bit, không tìm thấy thư mục bao gồm trừ khi nó nằm trong cấu hình bit win32 Thư mục Bổ sung Bao gồm.

+2

Bạn có liên kết đến lỗi này hoặc tham chiếu đến nó không? –

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