dyld: принудительное связывание символа из определенной библиотеки - PullRequest
1 голос
/ 26 марта 2012

Из-за неудачной истории OpenAL.framework содержит символы для ALUT 1.0. Я работаю над проектом, который использует ALUT 1.1, поэтому я скомпилировал ALUT в качестве фреймворка (из источников freealut).

К сожалению, это означает, что есть определенные символы, которые определены как в ALUT.framework, так и в OpenAL.framework, и мне действительно нужен способ убедиться, что ALUT выбираются в предпочтение. Я заказал ALUT перед OpenAL для команды link и, следовательно, в выводе otool для окончательного двоичного файла, но (из-за ленивого связывания?) Символы OpenAL выбираются в одном случае. (На самом деле при завершении работы приложения вызов alutExit идет не так, как надо)

Я понимаю, что это противоречит дизайну Dyld, но я застрял с официальной платформой Apple OpenAL. Я мог бы взломать мою платформу ALUT, чтобы использовать собственные имена символов, но я надеюсь, что более аккуратный (если хакерский) обходной путь заставит все символы ALUT быть жадно связанными до рассмотрения OpenAL.

1 Ответ

0 голосов
/ 28 августа 2014

Не совсем ответ, но подумал, что я должен убрать это из списка «без ответа» - мы перестали использовать ALUT в этом проекте.

...