2012-12-25 21 views
49

Tôi đang phát triển một ứng dụng trong Xcode.Lỗi liên kết Xcode: tệp quá nhỏ đối với kiến ​​trúc x86_64

Khi tôi cố gắng xây dựng, lỗi này đi lên:

ld: in /Users/theodore/Library/Developer/Xcode/DerivedData/Tower-bkpdifuqssebjdgurzmtirbxejnn/Build/Intermediates/Tower.build/Debug/Tower.build/Objects-normal/x86_64/TWRAppDelegate.o, file too small for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Có ai biết chuyện gì vậy?

+33

Thử xây dựng lại/làm sạch hoàn toàn. Có thể là bản dựng trước đã bị hủy bỏ bất thường, để lại tệp 'TWRAppDelegate.o' bị hỏng hoặc không có kích thước. –

+5

Một chút precisation: bạn làm điều đó với cmd + shift + k, nếu điều đó không làm việc, đi vào thư mục dữ liệu có nguồn gốc và xóa các thư mục có tên là dự án của bạn. –

+3

@RamyAlZuhouri: Bạn không cần phải tự mình xây dựng thư mục Trashing nữa. Giữ phím Option và lệnh Clean (nằm trong menu Product) thay đổi thành “Clean Build Folder…”, điều này sẽ giúp bạn. –

Trả lời

110

Ăn cắp câu trả lời của @ martin-baulig:

Hãy thử xây dựng lại/làm sạch hoàn toàn. Có thể việc xây dựng trước đó đã bị hủy bỏ bất thường, khiến tệp TWRAppDelegate.o bị hỏng hoặc không có kích thước.

+6

Cuối cùng! Bạn xứng đáng với nó. – tbodt

+0

Cảm ơn! :-) Vâng, @ martin-bailig của câu trả lời trong các ý kiến ​​đã giúp tôi, nhưng nó muốn được tốt hơn để có nó ở đây như là một câu trả lời thực sự. –

+0

Dự án của tôi mất một thời gian để xây dựng. Bạn có thể lấy đi với chỉ xóa các tập tin đối tượng 1-4 mà bị hỏng nếu bạn ngừng xây dựng bất thường hơn là tất cả mọi thứ. –

0

Kể từ khi xây dựng một dự án sạch có thể mất cách quá dài có cách ngắn hơn cho những người có quyền truy cập vào các tập tin đó là tham nhũng trong bộ nhớ cache:

  • Xóa file (Hủy bỏ tài liệu tham khảo)
  • xây dựng dự án
  • tập tin lắp
  • dự án xây dựng

phiên bản đầy đủ, do đó bạn không có khó khăn khi tìm các f ile:

  • Tìm các tập tin trong navigator dự án Xcode
  • Nhấp chuột phải vào tập tin và nhấn "hiển thị trong công cụ tìm" (mở ra một công cụ tìm tại vị trí mà tập tin được)
  • Chọn tập tin trong Xcode và bấm phím lùi sau đó bấm vào nút "Hủy bỏ tài liệu tham khảo"
  • dự án xây dựng (nó sẽ thất bại, nhưng chờ đợi cho nó để kết thúc) tập tin
  • lắp bằng cách kéo nó ra khỏi công cụ tìm vào cùng một vị trí mà bạn vừa xóa nó
  • dự án xây dựng
  • (nên làm việc ngay bây giờ)
0

Bước 1. Go to: Project> Build Settings> Search Paths

Bước 2. Set "Luôn luôn tìm kiếm tài Paths" Yes

Bước 3. Xây dựng dự án (Bạn sẽ nhận được một cảnh báo nhưng dự án sẽ xây dựng.)

Bước 4. Set "Luôn luôn tìm kiếm tài Paths" trở lại Không và xây dựng một lần nữa để loại bỏ các cảnh báo

0

rm -rf /Users/hostname/Library/Developer/Xcode/DerivedData

0

Một xây dựng lại, đã không hề sạch trong trường hợp của tôi vì vậy tôi giải thích làm thế nào tôi giải quyết vấn đề:
- tài liệu tham khảo Removed đến tập tin (đừng xóa các tập tin)
- Thêm tập tin vào dự án một lần nữa và chạy

3

Tôi thường thêm một dấu cách (có thể là bất kỳ ký tự nào cho vấn đề đó), xóa nó và sau đó lưu. Dễ dàng hơn và nhanh hơn sạch/xây dựng.

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