Tôi có một dự án (một thư viện) được chia nhỏ thành một vài thư mục có mã trong đó. Tôi muốn tìm kiếm g ++ cho các tệp tiêu đề trong thư mục gốc của dự án, vì vậy tôi có thể tránh các đường dẫn bao gồm khác nhau cho cùng một tệp tiêu đề trên nhiều tệp nguồn.Làm cách nào để thực hiện tìm kiếm g ++ cho các tệp tiêu đề trong một thư mục cụ thể?
Chủ yếu, các thư mục root/
có thư mục con A/
, B/
và C/
, tất cả đều có .hpp
và .cpp
tập tin bên trong. Nếu một số tệp nguồn trong A muốn bao gồm file.hpp
, trong B, nó sẽ phải thực hiện như sau: #include "../B/file.hpp"
. Tương tự cho một tệp nguồn khác trong C. Nhưng, nếu bản thân có thư mục con với các tệp cần file.hpp
, thì nó sẽ không nhất quán và sẽ gây ra lỗi nếu tôi quyết định di chuyển tệp (vì đường dẫn bao gồm "../../B/file.hpp"
) .
Ngoài ra, điều này cũng cần phải hoạt động từ các dự án khác, nằm bên ngoài root/
. Tôi đã biết rằng có một tùy chọn để tự sao chép tất cả các tập tin tiêu đề của tôi vào một thư mục tìm kiếm mặc định, nhưng tôi muốn làm điều này theo cách tôi mô tả.
Chỉnh sửa: tất cả các chương trình sử dụng thư viện chỉ được biên dịch với g++ prog.cpp lib.a -o prog
. Điều đó có nghĩa là vĩnh viễn đặt đường dẫn bao gồm cho g ++!
Xin chào, tôi đã nêu câu hỏi mà không có một chi tiết quan trọng nào, vui lòng xem chỉnh sửa, cảm ơn! – corazza
@Bane, thay đổi mọi thứ :-). Tôi đã chỉnh sửa câu trả lời của mình để bao gồm nhiều tùy chọn hơn có thể được sử dụng. – Vikas
Điều đó có vẻ là những gì tôi đang tìm kiếm. Làm thế nào chính xác tôi có thể chỉnh sửa những? (Với lệnh CLI, nghĩa là tôi cần bổ sung quy tắc cài đặt của tệp makefile.) – corazza