2012-04-27 28 views
19

Tôi tiếp tục nhận được cảnh báo và lỗi này có ai có thể trợ giúp không?thiếu kiến ​​trúc cần thiết armv7 trong tệp?

ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms  /iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk/System/Library/Frameworks//SystemConfiguration.framework/SystemConfiguration, missing required architecture armv7 in file 
    Undefined symbols for architecture armv7: 
    "_SCNetworkReachabilityCreateWithAddress", referenced from: 
    +[Reachability reachabilityWithAddress:] in Reachability.o 
    "_SCNetworkReachabilityCreateWithName", referenced from: 
    +[Reachability reachabilityWithHostName:] in Reachability.o 
    "_SCNetworkReachabilityUnscheduleFromRunLoop", referenced from: 
    -[Reachability stopNotifier] in Reachability.o 
    "_SCNetworkReachabilityScheduleWithRunLoop", referenced from: 
    -[Reachability startNotifier] in Reachability.o 
    "_SCNetworkReachabilitySetCallback", referenced from: 
    -[Reachability startNotifier] in Reachability.o 
    "_SCNetworkReachabilityGetFlags", referenced from: 
    -[Reachability connectionRequired] in Reachability.o 
    -[Reachability currentReachabilityStatus] in Reachability.o 
    ld: symbol(s) not found for architecture armv7 
    clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Hoạt động ứng dụng của tôi hoạt động tốt trong Trình mô phỏng Tôi không nhận được nó khi tôi xây dựng điện thoại.

Trả lời

60

Bạn cần liên kết với khung SystemConfiguration. Chọn dự án của bạn trong trình điều hướng dự án của Xcode, chọn mục tiêu ứng dụng của bạn và chọn tab Build Phases. Trong liên kết nhị phân với thư viện, bấm vào nút "+" và chọn SystemConfiguration.framework.

Có thể có các phụ thuộc khung công tác khác mà bạn cần thêm theo cùng một cách, nhưng thêm SystemConfiguration là những gì đã sửa lỗi tương tự cho tôi.

ETA: Tôi đã chuyển sang lỗi và không thấy cảnh báo ld ở đầu dán. Nếu bạn đã liên kết với SystemConfiguration, có thể thử gỡ bỏ và thêm lại nó, và nếu tất cả đều thất bại, hãy cập nhật Xcode. Bản phát hành gần đây nhất định có kiến ​​trúc phù hợp, vì vậy nó có vẻ như với tôi, hoặc dự án của bạn đang tìm kiếm địa điểm sai hoặc có gì đó sai với chính khung công tác đó.

+0

Bạn, bạn tôi, rock. Điều này mất 30 giây và ngay lập tức giải quyết nó cho tôi. Cảm ơn. –

+0

đẹp - cảm ơn bạn đã khắc phục nhanh chóng. – Ramesh

+0

Cảm ơn vì điều này! Bạn chỉ cần cứu tôi từ những gì có thể đã là một buổi chiều dài :) – hover

0

Thêm quân đội trong dự án của bạn (Path => Project tittle(select Xcode blue color reject title) -> Build Setting -> ARCHS) trong Vòm này nếu bạn không có ARMv7 hơn thêm nó ...

Hope, điều này sẽ giúp bạn ..

1

Xin vui lòng chắc chắn để thêm tất cả thư viện cần thiết để xây dựng ứng dụng của bạn. lỗi này có vẻ như bạn đã bỏ qua một số tác phẩm ..

0

Go To Click vào dự án icon-> Mục tiêu -> Build Settings -> Kiến trúc

Click -> + khác và thêm ARMv6 trong cột được chỉ định .. .

Làm sạch và xây dựng

0

Đã xảy ra với tôi khi tôi đã bao gồm một khung được xây dựng bằng Carthage và mục tiêu triển khai đã được đặt thành iOS 11 nhưng tôi đang xây dựng cho iOS 9. Do đó, kiến ​​trúc 32 bit (armv7, i386) bị thiếu. Tôi đã thay đổi mục tiêu triển khai cho khuôn khổ đó thành iOS 9 và điều đó đã khắc phục được sự cố của tôi.

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