我有一个共享库说libfile2.so(其中包含print2()函数定义)。现在我创建了一个libfile1.so(其中包含print1()函数定义,该定义又调用libfile2.so 中的print2()函数)。现在我创建一个包含main()函数的main.c文件,该函数通过动态链接 libfile1.so调用print1() 。
但我收到以下错误:
./libfile1.so: undefined reference to `print2'**
以下是我正在使用的命令:
gcc -c -fpic file1.c
gcc -shared -o libfile1.so file1.o
gcc -c -fpic file2.c
gcc -shared -o libfile2.so file2.o
export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH
gcc -I. -L. -o main main.c -lfile1