2013-05-20 37 views
43

Tôi đã dành năm giờ cuối cùng của tôi tìm kiếm tình huống kỳ lạ này một lời giải thích hợp lý.Apple Mach-O Linker Cảnh báo Directory không tìm thấy

Đây là cảnh báo:

ld: warning: directory not found for option '-L/Users/oasis_weng/Desktop/My Life/Life For Myself/Programming/Projects/ChangWeiBo/../xCodeExamples/ShareSDK/ShareSDK_v2.1.0/Extend/SDKExport' 
ld: warning: directory not found for option '-F/Users/oasis_weng/Desktop/My Life/Life For Myself/Programming/Projects/ChangWeiBo/../xCodeExamples/ShareSDK/ShareSDK_v2.1.0/Connection' 
ld: warning: directory not found for option '-F/Users/oasis_weng/Desktop/My Life/Life For Myself/Programming/Projects/ChangWeiBo/../xCodeExamples/ShareSDK/ShareSDK_v2.1.0/Core' 
ld: warning: directory not found for option '-F/Users/oasis_weng/Desktop/My Life/Life For Myself/Programming/Projects/ChangWeiBo/../xCodeExamples/ShareSDK/ShareSDK_v2.1.0/Extend' 
ld: warning: directory not found for option '-F/Users/oasis_weng/Desktop/My Life/Life For Myself/Programming/Projects/ChangWeiBo/../xCodeExamples/ShareSDK/ShareSDK_v2.1.0' 
ld: warning: directory not found for option '-F/Users/oasis_weng/Desktop/My Life/Life For Myself/Programming/Projects/ChangWeiBo/../xCodeExamples/ShareSDK/ShareSDK_v2.1.0/UI' 

Tuy nhiên, mặc dù tôi biết tất cả những cáo buộc "missing files" đang thực sự và thực sự tồn tại trong thư mục ứng dụng của tôi và các ứng dụng chạy đúng với những tập tin này.

Vấn đề của những thư mục trong cảnh báo là con đường thực tế không bao gồm ../xCodeExamples/ part.

Tôi nên làm gì để có được những cảnh báo đi?

+2

Hãy thử 'dự án (mục tiêu) '->' Xây dựng Settings' - > 'Đường dẫn tìm kiếm thư viện' và xóa tất cả đường dẫn. – Buntylm

Trả lời

88

Bạn cần phải làm theo các bước:

  • Bấm vào dự án của bạn (mục tiêu)
  • Bấm vào Settings Build
  • Dưới "Thư viện Search Paths", xóa các đường dẫn
  • sạch xây dựng của bạn và chạy lại.

Chúc may mắn !!

+12

* Theo dõi *: Ngoài ra, nếu bạn đang mượn thư viện công cộng để sử dụng cho riêng bạn, sau khi xóa đường dẫn tìm kiếm trong thư viện, bạn sẽ xóa các API đó và thêm lại chúng. Điều này rất quan trọng vì hệ thống cần các Đường dẫn Tìm kiếm Thư viện cho các thư viện đó nhưng mục này sẽ chỉ được tạo khi các thư viện được nạp lần đầu tiên. – donkey

+0

Tôi phải xóa "$ {inherited}" chỉ trong cả hai gỡ lỗi và phát hành. Không phải toàn bộ. Câu trả lời này là sai lầm tôi nghĩ. – Siddharth

4

Đã có cùng một vấn đề ngày hôm nay với giải pháp khác nhau (có thể giúp ai đó).

Nếu tên thư mục nguồn của bạn $(SRCROOT) bao gồm dấu cách, hãy sử dụng "$(SRCROOT)" thay vì $(SRCROOT) trong Đường dẫn tìm kiếm thư viện.

Giả sử tên thư mục của bạn là "A B C". Nếu bạn sử dụng $(SRCROOT) bạn có thể nhận được một cái gì đó như:

directory not found for option '-LA' 
directory not found for option '-LB' 
directory not found for option '-LC' 
+1

Cảnh báo của tôi cũng liên quan đến danh sách '$ (SRCROOT)'. Vì lý do nào đó, tôi đã được đặt thành '\" $ (SRCROOT)/a_project_subfolder \ "' ... Không chắc tại sao ký tự thoát được thêm vào vì chúng có vẻ là vấn đề (cộng với tôi đã xóa thư mục con). Vì vậy, có, '" $ (SRCROOT) "' là những gì tôi đã kết thúc bằng cách sử dụng. Cảm ơn! – dooleyo

38

Đối với tôi, con đường xấu là dưới khung Search Paths.

Cách dễ nhất để tìm đường dẫn xấu là nhập một phần của nó vào hộp tìm kiếm ở trên cùng bên phải. Điều đó sẽ lọc danh sách để chỉ có một con đường xấu. Xóa nó, như câu trả lời khác cho thấy, sửa chữa vấn đề.

Xem this answer để biết thêm thông tin.

+0

Cảm ơn câu trả lời của bạn.Điều này giải quyết vấn đề cho tôi quá cụ thể xóa các đường dẫn tìm kiếm khung. +1 –

+3

Đây phải là câu trả lời được chấp nhận vì câu hỏi có '-F' trong đường dẫn, viết tắt của khung, các thư viện sử dụng' -L'. –

1

Ngoài ra kiểm tra Xây dựng Settings-> Khung tìm kiếm Path cho các thư mục không sử dụng (loại này cảnh báo đã xảy ra với tôi khi tôi xóa Carthage từ dự án hiện nay)

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