::CFBundleLoadExecutable Не може да зареди компилиран пакет (Mountain Lion, Xcode 4.6)

uFunction ::CFBundleLoadExecutable ми връща FALSE след опит за зареждане на компилиран пакет. Когато се опитах да използвам функция ::CFBundleLoadExecutableAndReturnError вместо това грешката, която получих, беше:

CFBundleExecutableLoadError = -2002

Низът за причина е: Пакетът е повреден или липсват необходимите ресурси

Предложението е: Опитайте да преинсталирате пакета.

Както можете да видите, това е изключително полезна информация. Може би някой може да предложи по-добър начин да разберете какъв е проблемът с пакета? Благодаря!

Актуализация: Ако стартирам приложение през XCode - всичко работи. (Дори ако е Release компилация). Но ако стартирам приложение от меню / команден ред - CFBundleExecutableLoadError се проваля :(


person Iron-Eagle    schedule 23.09.2013    source източник


Отговори (1)


В крайна сметка открих проблем. Имаше зависимост в DLL на пакета от една от библиотеките, чието име беше променено по време на етапа след изграждане от install_name_tool. Местоположението на install_name_tool беше променено в Xcode 4.6, така че тази стъпка липсваше, следователно dll на пакета потърси грешната библиотека на грешно място.

Предполагам, че даването на грешка като „Library XXXXX in missing“ е твърде много за Apple....

Дано някой ден да помогне на някого.

person Iron-Eagle    schedule 22.10.2013