我正在尝试在 Ubuntu 12.04 上构建 VHDTool,但链接时失败:
gcc -O2 -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -g2 -c -o vhdtool.o vhdtool.c
gcc -luuid vhdtool.o -o vhdtool
vhdtool.o: In function `vhd_footer':
/root/vhdtool/vhdtool-master/vhdtool.c:456: undefined reference to `uuid_generate'
/root/vhdtool/vhdtool-master/vhdtool.c:457: undefined reference to `uuid_unparse'
collect2: ld returned 1 exit status
make: *** [vhdtool] Error 1
软件包 uuid-dev 和 libuuid1 已安装,有什么方法可以修复 Makefile 吗?
CC := gcc
CFLAGS := -O2 -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -g2
LDFLAGS := -luuid
all: vhdtool
vhdtool: vhdtool.o
vhdtool.o: vhdtool.c
clean:
rm vhdtool vhdtool.o
谢谢!
最佳答案
Makefile 中存在错误。将第三行中的 LDFLAGS
替换为 LDLIBS
。
关于ubuntu - libuuid 在 Ubuntu 12.04 上无法链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19924942/