How do I add the math library to my CMake file? This post references adding a target link library, yet I am not too familiar with C. An Additional post - Could
For various targets it's a good idea to test if adding a library is needed or not and if so where it's located of how it's named. Here's one way to do it:
:
include(CheckLibraryExists)
CHECK_LIBRARY_EXISTS(m sin "" HAVE_LIB_M)
if (HAVE_LIB_M)
set(EXTRA_LIBS ${EXTRA_LIBS} m)
endif (HAVE_LIB_M)
:
//More tests & build-up of ${EXTRA_LIBS}
:
add_executable(ch4 ch4.c)
target_link_libraries(ch4 PUBLIC ${EXTRA_LIBS})
For targets where libm is part of libc, the above test should fail, i.e. ${EXTRA_LIBS} will miss it and target_link will not try to add.