configure.ac中AC_CHECK_LIB的问题

编译Linux程序时,使用configure.ac生成的configure程序,时常会出现AC_CHECK_LIB检查某个库失败

而相应库通常是存在的,只是依赖于其他的库,此时,需要乃至AC_CHECK_LIB的other_libs参数

比如将,

AC_CHECK_HEADERS([usrsctp.h],
  [AC_CHECK_LIB([usrsctp], [usrsctp_init],
    [with_sctp="yes"; USRSCTP_LIBS="-lusrsctp -lpthread"],
    [with_sctp="no"])],[with_sctp="no"]
)

  修改为:

AC_CHECK_HEADERS([usrsctp.h],
  [AC_CHECK_LIB([usrsctp], [usrsctp_init],
    [with_sctp="yes"; USRSCTP_LIBS="-lusrsctp -lpthread"],
    [with_sctp="no"]
  ,["-lpthread"])],[with_sctp="no"]
)

就能解决usrsctp包依赖于pthread库,导致的编译前找不到usrsctp库的问题

 

posted @ 2019-01-16 11:25  日月王  阅读(2345)  评论(0编辑  收藏  举报