如何使用CMake链接<math.h>库?

问题描述 投票:0回答:3

我在我的 C 源代码中包含了

<math.h>
库。但我遇到编译错误。

Error: 
**undefined reference to 'sqrt'
**undefined reference to 'atan'

如何链接到

<math.h>
中的
CMakeLists.txt

cmake clion
3个回答
30
投票

Cmakelists.txt
文件是这样的:

cmake_minimum_required(VERSION 3.6)
project(project_name)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 ")

set(SOURCE_FILES main.c)
add_executable(project_name ${SOURCE_FILES})

而且你必须添加这个命令,因为

<math.h>

target_link_libraries(project_name PRIVATE m)

仅此而已。


4
投票

CMakeList.txt

中添加以下命令
target_link_libraries(${PROJECT_NAME} m)

0
投票

您需要将数学库显式链接到您的可执行文件。喜欢,

# Define the executable of the application !
add_executable(main ${SOURCE_FILES})

# 'm' for including math library explicitly
target_link_libraries(main m) 
© www.soinside.com 2019 - 2024. All rights reserved.