I have a program which makes use of boost_regex
. The library boost_regex
has an undefined symbol named differently with respect to the version of boost I am using. For instance, when I use boost version 1.49, libboost_regex.so
contains an undefined symbol called u_tolower_49
. This symbol can be found within libicuuc.so
.
Obviously, if an user who doesn’t have icu compiles my program, the link stage will fail because that symbol is missing. So I decided to add it to configure.ac so that the configuration stage fails before starting the compilation.
configure.ac
...
AC_SEARCH_LIBS([u_tolower_49],[icuuc], , AC_MSG_ERROR([Unable to find icuuc, make sure ICU is installed.]))
...
Now my problem is that when the user’s version of boost is 48, the symbol is no longer named u_tolower_49
but u_tolower_48
.
How can I tweak configure.ac to make sure that the configuration fails regardless of the version of boost the user has?