Я пытаюсь построить gnu iconv на OSX как статическую библиотеку. Это не проблема, она строит штраф сКак создать статическую библиотеку iconv на OSX без имен символов libiconv?
./configure --enable-static
make clean && make
, но когда я бегу нм на libiconv.a, я получаю следующие результаты
...
_libiconv
_libiconv_open_
_libiconv_close_
...
Это проблематично, потому что я хочу, чтобы построить libxml2 с помощью эта библиотека, и это требует следующих символов
iconv
iconv_open
iconv_close
Просматривая файл заголовка, похоже, разница между этими двумя именами символа определяется ли LIBICONV_PLUG. Но когда я бегу сделать как
make clean && make CPPFLAGS=-DLIBICONV_PLUG
я получаю ошибки, потому что некоторые вещи, которые не определены, такие как ICONV_GET_DISCARD_ILSEQ и ICONV_SET_HOOKS. Еще раз просмотрев файл заголовка, они определяются только в том случае, если LIBICONV_PLUG не определен.
Мой вопрос: правильно ли я использую LIBICONV_PLUG? Есть ли другой способ получить статическую библиотеку с необходимыми символами? Должен ли я проходить через неопределенные символы и определять их самостоятельно?
Благодарим вас за этот информативный и исчерпывающий ответ! – Sossisos