Вот что я сделал с помощью autoconf
, который я показываю здесь, как твердый пример для тех, кто еще мог бы прийти к следующему:
Я создал файл configure.ac
, который содержал следующее:
AC_INIT(package, 1.1, email)
AC_CHECK_LIB(uuid, uuid_generate_random, [echo "libuuid exists"], [echo "libuuid missing"])
Я побежал следующие команды в порядке (та же папка я сделал configure.ac
):
autoconf
./configure
В конце конфигурирования, он плюнул назад, был ли он или нет найден uuid_generate_random
в uuid
библиотеки. Казалось, что он отлично работает (хотя, к сожалению, две из ОС отсутствовали в библиотеке, но это еще одна проблема).
Для тех, кто может найти это после факта, аргументы AC_INIT
здесь выбрасывают, и вы можете скопировать их оптом. Аргументами для AC_CHECK_LIB
являются: имя библиотеки, имя функции в этой библиотеке, что делать с успехом, что делать с ошибкой.
Несмотря на то, что ответ Мехрдада был не так полезен, как мне бы хотелось (т. Е. Не тратить время на просмотр документов), это кажется правильным, и я буду принимать его. mhawke: Мне очень понравился ваш ответ, но я не был уверен, как проверить, чтобы он работал.Казалось, что на SunOS, но он всегда говорил «нет» на двух других (AIX, HPUX), и я, похоже, не мог придумать библиотеку с верхней части головы, я мог бы гарантировать ее обнаружение.
Спасибо за помощь, ребята.
Не совсем знакомы с ним вообще, и, глядя на аргументы команды, я не совсем уверен, как это помогает мне решить мою проблему. Дополнительная информация, безусловно, была бы оценена. – Morinar
Посмотрите документацию, с которой я связан. Ваша проблема - основной вариант использования для 'autoconf'. 'autoconf' возьмет файл' configure.ac' и выведет скрипт оболочки 'configure'. –
@Morinar - Использование autoconf и automake не являются интуитивными и неясными в первую очередь, и вам может показаться, что вы ударяете головой о стену и/или записываете свой собственный инструмент автоматической настройки, но через некоторое время вы выясните, как они работают , Как человек, который совсем недавно должен был пройти этот процесс, я заверяю вас, что это лучший способ сделать это. –