В Solaris, когда вы компилируете программу, использующую сокеты, вам нужно связать ее с -lnsl -lsocket
. Многие такие программы изначально были написаны для Linux (где не нужны дополнительные библиотеки), и поэтому не проверяют эти библиотеки в своих скриптах configure, хотя это довольно простое дополнение. Примерно так (не проверено):
AC_SEARCH_LIBS(gethostbyname, nsl, , AC_MSG_ERROR([gethostbyname not found]))
AC_SEARCH_LIBS(connect, socket, , AC_MSG_ERROR([connect not found]))
Есть ли канонический способ сделать эту проверку? Может быть, даже включены в дистрибутив autoconf? Вы можете себе представить, что в этом есть достаточно распространенная потребность, но Google не сказал бы мне.