2013-02-28 2 views
1

Я пытаюсь создать приложение iOS с помощью Jenkins с помощью команды xcodebuild.имя целевой xcodebuild с Umlaut

Проблема в том, что xcodebuild не обнаруживает цель с помощью немецкого Umlaut ü.

$ /usr/bin/xcodebuild -target AppNameWithUmlautü -configuration Debug clean build 

дает мне следующую ошибку:

xcodebuild: error: The project 'AppNameWithUmlautü.xcodeproj' does not contain a target named 'AppNameWithUmlautü'. 

Я проверил наличие цели, используя следующую команду:

xcodebuild -list 

Information about project "AppNameWithUmlautü": 
    Targets: 
     AppNameWithUmlautü 
     AppNameWithOutUmlaut 

    Build Configurations: 
     Debug 
     Release 
     Ad Hoc 

    If no build configuration is specified and -scheme is not passed then "Release" is used. This project contains no schemes. 

Мишень без Умляута работает.

+0

Привет, Мартин, спасибо за ваш ответ. Это помогло понять проблему, но в итоге я переименовал цель (используя «ue» вместо «ü»). –

+0

Да, это, вероятно, лучшее решение. –

ответ

4

Xcode использует «разлагаемое» представление UTF-8 для Umlauts в целевом имени: «ü» представлено как 75 CC 88. 75 - «u», а CC 88 - это последовательность UTF-8 для «КОМБИНИРОВАННОЙ ДИАВЕРСИИ».

С другой стороны, оболочка использует «составное» представление UTF-8 C3 BC для «ü».

Так что цель, которую вы даете в командной строке, не соответствует целевому имени в проекте Xcode (и можно утверждать, что это ошибка в Xcode).

Я не знаю о Дженкинсе, но если вы каким-то образом можете использовать вывод команды xcodebuild -list, чтобы получить декомпозиционное имя целевой UTF-8 и скопировать его в ваш Makefile, shell-скрипт или все, что у вас есть, то это должно помочь ,

Смежные вопросы