我正在尝试编译“stress-ng”包以生成静态链接的可执行文件,以便在GEM5完整系统模拟器中使用它。
此软件包的tarball可以下载here。我正在尝试编译的版本是0.07.08。
要编译此程序包的动态链接可执行文件,只需“make”。这对我有用。
但是,由于我需要在GEM5完整系统模拟中运行“stress-ng”exe,我需要确保exe是自包含的。这通常使用“-static”CFLAG选项完成,但是,对于“stress-ng”,我在尝试此选项时出错。
以下是为了重现此错误的操作。编辑“Makefile”并在第25行末尾添加“-static”选项。第25行应如下所示:
jessie-backports
保存然后制作,您将看到以下错误:
CFLAGS += -Wall -Wextra -DVERSION='"$(VERSION)"' -O2 -std=gnu99 -static
最后,操作系统是Ubuntu 14.04,cc版本是4.6.4。
我在这里错过了其他一些CFLAG选项吗?
答案 0 :(得分:0)
我已经推出了一个新的修复程序,现在允许静态链接的stress-ng repo。问题是-lc在-lpthread之前,导致了这个问题。
拉出最新的更改,然后使用:
进行构建STATIC = 1 make