首页 > 解决方案 > 用 .h 编译 .so

问题描述

我有三个文件:

list.c, recursive.c, recursive.h

第二个和第三个是名为:递归的辅助函数的标题和.c。

第一个是我试图编译为.so 的文件。它包含recursive.h:

#include "recursive.h"

通常我会编译它:

gcc -Wall -shared -fPIC -o list.so list.c

但是每当我从客户端程序运行代码时,我都会得到以下信息:

./shell: symbol lookup error: /home/list.so: undefined symbol: recursive

标签: cgcc

解决方案


正如 Ctx 所建议的那样。解决方案是编译:

gcc -Wall -shared -fPIC -o list.so list.c recursive.c

推荐阅读