我试图为LZ4HC创建一个可执行文件(我使用了lz4主页上的源代码),但是当我尝试执行该文件时,它显示了“符号错误LZ4_compressBound未定义”。
静态链接或动态链接均无效。
gcc -shared -ggdb3 -fPIC -o lz4hc.h lz4hc.c
要么
gcc -c lz4hc.c -o lz4hc.o
ar rcs lz4hc.a lz4hc.o
为什么链接后 undefined symbol LZ4_compressBound?
最佳答案
上面的命令将lz4hc.c
编译到一个名为lz4hc.h
的共享库中。那几乎肯定不是您想要的。
这些命令产生lz4hc.a
(正确),但不执行任何实际链接。
我猜您的实际链接命令看起来像gcc lz4hc.a main.o
,在这种情况下,您的问题是this one的重复项(其他100项重复项中)。
关于compiler-errors - LZ4HC编译问题: LZ4_compressBound undefined,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52999656/