execl("/usr/bin/cc","cc","myprog.c",NULL)
我将此行用于myMainProg中的myprog.c编译器。但是myprog.c具有#include“ math.h”。因此,我必须添加-lm。我怎样才能做到这一点?
最佳答案
(从外壳程序)链接程序的命令应为:
cc myprog.c -o myprog -lm
因此,如果要使用
execl
从另一个程序编译它,则应使用:execl("/usr/bin/cc","cc","myprog.c", "-o", "myprog", "-lm", (char *) NULL);
编辑:我几乎忘了使用
execl()
时必须将结尾的NULL
参数强制转换为char *
关于c - 如何使用execl()编译包含math.h库的程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36776189/