2009-09-30 10 views
5

Bất cứ ai có thể giải thích tại sao tôi nhận được kết quả khác nhau khi biên dịch cùng một dự án XCode 4.x bằng cách sử dụng GUI và xcodebuild dòng lệnh?Tại sao nhận được sự khác biệt giữa việc sử dụng XCode và xcodebuild?

XCode GUI

  1. Thực hiện một sạch
  2. xây dựng "Release" mục tiêu
  3. xây dựng thành công

xcodebuild

    .210
  1. Thực hiện một sạch
  2. Run "xcodebuild -Cấu hình Release"
  3. Kết quả trong các lỗi sau đây:

    /Developer/usr/bin/gcc-4.0 -x Objective-C -arch i386 -fmessage- length = 0 -pipe -std = gnu99 -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -Wreturn-type -Wunused-variable -isysroot /Developer/SDKs/MacOSX10.4u.sdk -fvisibility = hidden -mmacosx- version-min = 10.4 -c "/Users/XXX/Extensions/NSFileManager_Extensions.m" -o "/Users/XXX/Developer/Intermediates/YourApp.build/Release/YourApp.build/Objects-normal/ppc/NSFileManager_Extensions.o " /Users/XXX/Extensions/NSFileManager_Extensions.m:15:60: lỗi: ToxicRegularExpressions/ToxicReg ularExpressions.h: Không có tập tin hoặc thư mục ** BUILD FAILED **

Sau đây xây dựng lệnh thất bại: CompileC "/Users/XXX/Developer/Intermediates/YourApp.build/Release/YourApp.build /Objects-normal/ppc/NSFileManager_Extensions.o" /Users/XXX/Extensions/NSFileManager_Extensions.m bình thường ppc Objective-c com.apple.compilers.gcc.4_0

Và cuối cùng GUI + xcodebuild

  1. Per tạo thành một sạch trong GUI
  2. xây dựng "Release" mục tiêu
  3. xây dựng thành công
  4. Run "xcodebuild -Cấu hình Release"
  5. xây dựng thành công

Trả lời

2

Hãy thử qua SDK trên dòng lệnh, như vậy :

xcodebuild -configuration Release -sdk iphonesimulator3.0 
+0

Xin lỗi, tôi đã nhầm. Vấn đề KHÔNG được giải quyết bằng cách thêm tùy chọn -sdk –

0

Bạn có cài đặt nhiều phiên bản XCode không? Nếu vậy, câu trả lời này cho một câu hỏi liên quan có thể giải quyết vấn đề của bạn: https://stackoverflow.com/a/11129067/567039

+0

Chỉ cần cài đặt một phiên bản XCode –

0

Xác định chương trình bạn muốn xây dựng với -scheme. Nếu không có nó xcodebuild có thể sử dụng hệ thống xây dựng được điều khiển mục tiêu khác nhau. Bạn có thể muốn thực hiện một số kế hoạch của bạn được chia sẻ cho điều này, khi phân phối lại dự án.

Xem: Postscriptum của xcodebuild driving me nuts again with a zombie OBJROOT