如何在Mac OS上使用libelf. h编译?

6bc51xsx  于 2023-01-20  发布在  Mac
关注(0)|答案(1)|浏览(263)

我尝试在Mac OS Catalina 上编译一个使用libelf.h头文件的C程序,收到以下错误消息:

fatal error: 'libelf.h' file not found
#include <libelf.h> 
     ^~~~~~~~~~

我按照these directions安装了libelf,并使用了gcc和clang的-lelf标志。仍然不能在Mac OS上编译(它在Ubuntu上编译)。我不知道从这里去哪里...

pw9qyyiw

pw9qyyiw1#

第一个:“brew安装libelf”
然后,我找到了以下相关文件:

/opt/homebrew/include/libelf/gelf.h
/opt/homebrew/include/libelf/libelf.h
/opt/homebrew/lib/libelf.a

其实际上符号链接到:

/opt/homebrew/Cellar/libelf/0.8.13_1/include/libelf/gelf.h
/opt/homebrew/Cellar/libelf/0.8.13_1/lib/libelf.a

要解决编译时错误"gelf. h“和”libelf. h“(来自#include语句),请将以下内容添加到编译器调用中:

-I /opt/homebrew/include
-I /opt/homebrew/include/libelf

要解决链接时错误“library not found for -lelf”,请将以下内容添加到编译器(实际上是链接器)调用中:

-L /opt/homebrew/lib

相关问题