【问题标题】:How to get Geany to link with the math library in C?如何让 Geany 与 C 中的数学库链接?
【发布时间】:2017-10-31 20:42:50
【问题描述】:

我正在使用 Linux Mint 发行版,并用 C 编写程序。但是,我在编译部分遇到了问题。具体来说,math.h 函数似乎都不起作用(如 sqrt() 或 pow())。

我知道,如果我通过终端进行编译,我必须自己通过在命令末尾添加 -lm 部分来链接它。但是有没有办法通过 Geany 做到这一点?还是我必须手动完成?

【问题讨论】:

标签: c geany math.h


【解决方案1】:

在 geany 'build' 菜单项下是选择:Set Build Commands

点击buildSet Build Commands 后,Set Build Commands 窗口打开。

在第一列下面是label,在Compile下面Compile右侧是一个文本框,您可以在其中键入编译命令。

在我的系统上,编译文本框的内容是:

gcc -ggdb  -Wall -Wextra  -Wconversion -std=gnu11 -pedantic -Wmissing-prototypes  -c "%f"  -I. 

下一行标记为BuildBuild 右侧是一个文本框,您可以在其中键入链接命令。

在我的系统上,构建文本框的内容是:

gcc -ggdb  -Wall -Wextra -Wconversion -std=gnu11 -pedantic -o "%e" "%f"   -lpthread -lm  

(实际内容会因特殊需要而有所不同)

注意,Build 文本框的末尾是要包含的库项目。在这些库中,有 libm.so(它是在没有 libso 的情况下编写的。)I.E. -lm

这就是编译和链接“许多/大多数”程序所需的全部内容。

注意:参数-ggdb是为了让编译和链接步骤包含gdb调试器的所有调试信息

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-04-10
    • 1970-01-01
    • 1970-01-01
    • 2014-03-06
    • 2020-05-13
    • 1970-01-01
    • 2010-11-05
    相关资源
    最近更新 更多