我正在使用Linux Mint发行版,并在C中编写程序。但是,我在使用编译部分时遇到了问题。具体来说,math.h函数似乎都不起作用(如sqrt()或pow())。
我知道如果我通过终端进行编译,我必须通过在命令末尾添加-lm部分来自己链接。但有没有办法通过Geany做到这一点?或者我必须手动完成吗?
答案 0 :(得分:1)
是选择:Set Build Commands
点击build
后,Set Build Commands
会打开Set Build Commands
窗口。
是label
,Compile
右侧Compile
是您输入编译命令的文本框。
在我的系统上,编译文本框的内容是:
gcc -ggdb -Wall -Wextra -Wconversion -std=gnu11 -pedantic -Wmissing-prototypes -c "%f" -I.
下一行标记为Build
,Build
右侧是一个文本框,您可以在其中键入链接命令。
在我的系统上,构建文本框的内容为:
gcc -ggdb -Wall -Wextra -Wconversion -std=gnu11 -pedantic -o "%e" "%f" -lpthread -lm
(实际内容因特殊需要而异)
请注意,在Build
文本框的END处是要包含的库项目。这些库中有libm.so
(没有lib
而没有so
。)。 -lm
这就是编译和链接“多个/大多数”程序所需的全部内容。
注意:参数-ggdb
是让编译和链接步骤包含gdb
调试器的所有调试信息