#c #macos #gcc #linker
#c #macos #ссагпз #компоновщик
Вопрос:
Я пытаюсь создать джейлбрейк p0sixspwn из его источника (https://github.com/p0sixspwn/p0sixspwn ) для того, чтобы учиться. Я проверил процесс его установки и смог понять, что он включает в себя запуск автогенератора.sh, а затем файл конфигурации и, наконец, используйте make для создания окончательного исполняемого файла.
На данный момент, когда я бегу. /autogen.sh , отображается следующая ошибка:
checking pkg-config is at least version 0.9.0... yes
checking for libimobiledevice-1.0 >= 1.1.0... yes
checking for libplist >= 0.15... no
configure: error: Package requirements (libplist >= 0.15) were not met:
No package 'libplist' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables libplist_CFLAGS
and libplist_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
Подробная информация о libplist — вывод информации о brew:
$ brew info libplist
libplist: stable 2.2.0, HEAD
Library for Apple Binary- and XML-Property Lists
https://www.libimobiledevice.org/
/usr/local/Cellar/libplist/2.2.0 (31 files, 408.5KB) *
Built from source on 2021-01-05 at 11:25:57
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/libplist.rb
License: LGPL-2.1
==> Dependencies
Build: autoconf ✔, automake ✔, libtool ✔, pkg-config ✔
==> Options
--HEAD
Install HEAD version
==> Analytics
install: 13,355 (30 days), 47,611 (90 days), 244,136 (365 days)
install-on-request: 1,858 (30 days), 5,447 (90 days), 16,506 (365 days)
build-error: 0 (30 days)
Я нахожусь на Mac OS X El Capitan.
Как я могу поступить с этим дальше? Пожалуйста, укажите мне правильное направление относительно того, почему это происходит, так как я хочу понять, как это работает.
Комментарии:
1. Это необычно для
autogen.sh
вызоваconfigure
. Также странно видеть вызовы обоимautoconf
иautoreconf
. (Как правило, вся цепочкаaclocal; autoheader; autoconf; automake
заменяется одним вызовомautoreconf
.) Я бы с осторожностью относился к использованию autotools в этом пакете.2. Ты уже заглядывал
config.log
? Я бы заподозрил, что/usr/local/Cellar/libplist/2.2.0
это нестандартное местоположение (т. Е. Ваша цепочка инструментов не настроена на поиск там). Вы должны либо установить PKG_CONFIG_PATH, либо LDFLAGS и т.д.3. @WilliamPursell Я заглянул в config.log. Я тоже нахожу там то же самое. Также пытался экспортировать LDFLAGS=/usr/local/Cellar/libplist/HEAD-7b1ccb4/, но это привело к другой ошибке. Вопрос включал эти детали, но не получал никаких ответов, поэтому я отредактировал это. Хотите, чтобы я поделился файлом config.log через pastebin?
4. Это новая ошибка при установке вышеуказанных LDFLAGS: проверка awk … awk проверка, устанавливает ли make $(MAKE) … да, проверка того, поддерживает ли make вложенные переменные… да, проверка того, поддерживает ли make директиву include… да (в стиле GNU) проверка на наличие gcc… gcc проверяет, работает ли компилятор C … нет configure: ошибка: в /Users/mac/Documents/Pk/Temp/p0sixspwn-copy: configure: ошибка: компилятор C не может создавать исполняемые файлы Подробнее см. config.log
5. Вам понадобится что-то вроде
LDFLAGS=-L/p/a/t/h
, но если пакет использует pkg-config, вы можете предпочесть установить PKG_CONFIG_PATH . (если libplist устанавливает файл конфигурации pkg)