我正在尝试在macOS 10.14.6和CLion 2019.2.5上编译一个简单的模糊示例
#include <stdint.h>
#include <stddef.h>
extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
if (size > 0 && data[0] == 'H')
if (size > 1 && data[1] == 'I')
if (size > 2 && data[2] == '!')
__builtin_trap();
return 0;
}这也显示在这里,https://llvm.org/docs/LibFuzzer.html#toy-example如果已经设置了我的CMakeLists.txt一切正常,他正在链接CXX可执行文件,在此之后,错误发生
Undefined symbols for architecture x86_64:
"_main", referenced from:
implicit entry/start for main executable
ld: symbol(s) not found for architecture x86_64当我通过终端编译时,同样的错误也发生了,我用Ubuntu 18.04的Virtualbox试了一下--同样的Clion版本和Cmakelist没有问题
发布于 2019-12-09 21:14:00
如果您使用正确的编译器,而不是苹果的编译器,-> brew install llvm将首选项编译器c和c++设置为/usr/local/opt/llvm/bin/clang,它就能正常工作。
https://stackoverflow.com/questions/59193107
复制相似问题