2012-07-10 14 views
6

Tôi đang cố gắng sử dụng phát triển ibtool cho iOS (bản địa hóa), nhưng khi tôi chạy nó từ thiết bị đầu cuối tôi nhận được lỗi sau:Lỗi: Không thể chạy /Ứng dụng/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/ibtool (không có tệp nào)

Error: Can't run /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/ibtool (no such file). 

Điều gì mang lại?

Trả lời

12

Đã thực hiện một số thao tác trên trang này và tìm thấy một số phản hồi Stack tốt cho các vấn đề tương tự - nhưng không có giải pháp chung cho tất cả người dùng, vì vậy tôi đã tạo ra một giải pháp. :)

Nguyên nhân của vấn đề là: trong các phiên bản hiện đại của OSX, nếu bạn cài đặt Xcode từ App Store, nó tự cài đặt giống như tất cả các ứng dụng khác - điều đó có nghĩa nó trong một thư mục khác nhau hơn là lịch sử trường hợp. Thật không may, điều này có ý nghĩa sâu rộng ảnh hưởng đến cả Xcode và các công cụ dòng lệnh của nó và - trên thực tế - những thứ khác vượt xa phạm vi của câu hỏi này.

Vì vậy, cho đến khi sửa lỗi, hãy giải quyết các cách giải quyết. Nhiều người khuyên bạn nên thay đổi các biến hệ thống Xcode của bạn để trỏ đến thư mục 'App Store', nhưng tôi nghĩ đây là một mức quá mức nguy hiểm - bạn không biết loại tình trạng lộn xộn nào có thể gây ra nếu họ sửa chữa đường dẫn của họ!

Thay vào đó, tôi khuyên bạn nên sử dụng Terminal để thay đổi chỉ vào liên kết hệ thống ảnh hưởng đến ibtool (hoặc bất kỳ công cụ mà bạn đang sử dụng), như vậy:

giải pháp Đề xuất

Bước 1: Di chuyển liên kết hệ thống cũ

sudo rm /usr/bin/ibtool 

Bước 2: Tạo một hệ thống liên kết mới

sudo ln -s /Applications/Xcode.app/Contents/Developer/usr/bin/ibtool /usr/bin/ibtool 

Để tham khảo mà thôi, đây là một lệnh đó sẽ sửa lỗi này - nhưng tôi KHÔNG khuyên sử dụng nó vì những lý do đã nêu ở trên:

sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer 

Tôi có thể thấy đối số rằng xcode-select có thể là giải pháp thích hợp nếu bạn có tất cả các loại lỗi liên quan đến Nhà phát triển, nhưng trong trường hợp đó tôi sẽ chỉ cài đặt lại Xcode mà không cần sử dụng App Store và làm cho nó hoạt động tốt ngay từ đầu.

Đối với phần còn lại của chúng tôi đã quá xa xuống đường dẫn App Store để làm lại tất cả, hãy xem ở trên.

+0

Bạn có thể sử dụng lệnh 'xcrun' để khởi chạy một tệp nhị phân từ bên trong gói Xcode. Bạn đã thử 'xcrun ibtool' chưa? –

0

Bước đầu tiên tuyệt đối là nhận Xcode để cài đặt command line tools. Làm như vậy sẽ đưa các công cụ vào /usr/bin - đã có trong PATH của bạn. Đi tới "Xcode" :: "Tùy chọn" :: "Tải xuống" :: "Thành phần" nơi cần cài đặt Command Line Tools. Nếu không có, hãy truy cập "Xcode" :: "Công cụ dành cho nhà phát triển mở" :: "Công cụ dành cho nhà phát triển khác" và tải xuống các công cụ dòng lệnh mới nhất.

0

Như bạn đang sử dụng Xcode 7, libtool tọa lạc tại đường dẫn sau:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool

Những gì bạn có thể làm ở đây chỉ đơn giản là sao chép nó, và sau đó dán nó vào vị trí quy định của lỗi:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/libtool

bạn cũng nên dán file trong đường dẫn sau đây nếu bạn đang bào để chạy các ứng dụng trên một thiết bị:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/libtool

nếu bạn không tìm thấy usr/bin chỉ cần tạo một thư mục và gọi nó là usr, và một cái khác bên trong nó và gọi nó là bin. dán libtool bên trong nó.