Oto co zrobiłem używając autoconf
, co mam pokazano tutaj jako stałe przykładem kto jeszcze może się przez następne:
utworzonego plik configure.ac
który miał następujący skład:
AC_INIT(package, 1.1, email)
AC_CHECK_LIB(uuid, uuid_generate_random, [echo "libuuid exists"], [echo "libuuid missing"])
następnie ran następujące polecenia w kolejności (sam folder że wykonany configure.ac
)
autoconf
./configure
Pod koniec configure, że wypluł z powrotem, czy też nie znalazł uuid_generate_random
w bibliotece uuid
. Wydawało się, że działa doskonale (chociaż niestety, dwa systemy operacyjne nie miały biblioteki, ale to zupełnie inny problem).
Dla każdego, kto może znaleźć to po fakcie, argumenty AC_INIT
tutaj są wygrane i można je skopiować hurtowo. Argumentami dla AC_CHECK_LIB
są: nazwa biblioteki, nazwa funkcji w tej bibliotece, co zrobić z sukcesem, co zrobić w przypadku niepowodzenia.
Mimo że odpowiedź Mehrdada nie była tak pomocna, jak bym chciał (tj. Nie spędzał czasu na trollingu dokumentów), wydaje się, że jest poprawny i zaakceptuję to. mhawke: Naprawdę podobała mi się twoja odpowiedź, ale nie bardzo wiedziałem, jak przetestować, żeby się upewnić, że to zadziałało.Wydawało się to na SunOS, ale zawsze odmawiał dwóch pozostałych (AIX, HPUX) i nie mogłem wymyślić biblioteki z mojej głowy, którą mogłem zagwarantować, że ją znajdzie.
Dzięki za pomoc chłopaki.
Niezbyt dobrze się z tym zapoznałem, a patrząc na argumenty polecenia, nie jestem pewien, w jaki sposób pomaga mi rozwiązać mój problem. Dodatkowe informacje z pewnością zostaną docenione. – Morinar
Zobacz dokumentację, z którą się łączyłem. Twój problem jest podstawowym przypadkiem użycia 'autoconf'. 'autoconf' pobiera plik' configure.ac' i wypisuje skrypt powłoki 'configure'. –
@Morinar - Korzystanie z autoconf i automake nie jest intuicyjne i na pierwszy rzut oka niejasne, możesz poczuć się jak uderzanie głową o ścianę i/lub pisanie własnego narzędzia do automatycznej konfiguracji, ale po pewnym czasie dowiesz się, jak działają . Jako ktoś, kto niedawno musiał przejść przez ten proces, zapewniam cię, że jest to najlepszy sposób na zrobienie tego rodzaju rzeczy. –