Сборка GIMP 2.10 из исходного кода на OSX завершается неудачно на «gimp-debug-tool-2.0»

Я пытался собрать GIMP 2.10 на OSX в течение недели безуспешно. Большинство проблем были все разные зависимости и тому подобное. Хотя потребовалось время, все это было решаемо, но теперь я думаю, что зашел в тупик. Я перешел к этапу, когда я смог наконец запустить «make» и через некоторое время собрать разные вещи, он выдает ошибку на «gimp-debug-tool-2.0». Вот выходной журнал:

Making all in app-tools
CCLD     gimp-debug-tool-2.0
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_NSString", referenced from:
objc-class-ref in libappwidgets.a(gimpcriticaldialog.o)
"_OBJC_CLASS_$_NSWorkspace", referenced from:
objc-class-ref in libappwidgets.a(gimpcriticaldialog.o)
"_objc_autoreleasePoolPop", referenced from:
_gimp_critical_dialog_response in libappwidgets.a(gimpcriticaldialog.o)
"_objc_autoreleasePoolPush", referenced from:
_gimp_critical_dialog_response in libappwidgets.a(gimpcriticaldialog.o)
"_objc_msgSend", referenced from:
_gimp_critical_dialog_response in libappwidgets.a(gimpcriticaldialog.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [gimp-debug-tool-2.0] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

У меня были похожие ошибки при сборке приложений Qt, OpenCv. Проблема заключалась в том, что библиотеки отсутствовали, и я решил ее, указав пути к этим библиотекам. Но чего может не хватать при сборке «gimp-debug-tool-2.0», который кажется внутренним инструментом.

Если бы у кого-то был подобный опыт или есть подсказка / подсказка о том, как я мог бы решить эту проблему и мог бы указать мне правильное направление, это было бы очень признательно.

Танки заранее.

0

Решение

Основная причина в том, что gimp-debug-tool-2.0 — это новый модуль, который интегрируется с операционной системой OS X для представления диалога в случае сбоя приложения. Он ссылается на классы NSString и NSWorkspace, которые являются частью OS X. Следовательно, вам необходимо связать с соответствующей структурой (ами) OS X для разрешения символов.

К сожалению, автоматическое конфигурирование, которое вы запускаете в начале цикла сборки, ссылается на CoreFoundation рамки, но это не то, где на самом деле живут NSString или NSWorkspace.

Обходной путь пока состоит в том, чтобы включить это как часть вашей переменной среды LDFLAGS:

-framework Foundation -framework AppKit

Это позволит правильно завершить сборку, но это немного обходной путь. Правильный подход состоит в том, чтобы исправить автоконфигурацию так, чтобы она сначала правильно ссылалась на эти фреймворки, но это сложнее, чем я могу управлять

1

Другие решения

Оказывается, что все должно работать нормально, несмотря на этот инструмент отладки. Мне это на самом деле не нужно, поэтому я был рад пропустить его создание. Я запустил команду make с флагом -k, которая продолжает с ошибкой, к счастью, других ошибок не было. После сборки и установки он отлично работает на моем MacBook.

GIMP 2.10.1 для OSX

0

По вопросам рекламы [email protected]