gcc-没有意义的链接器错误
使用Pi GPIO库提供的,我使用以下命令创建libpigpio.so shard对象:gcc-没有意义的链接器错误,gcc,ld,undefined-reference,Gcc,Ld,Undefined Reference,使用Pi GPIO库提供的,我使用以下命令创建libpigpio.so shard对象: # from line 119 in make file make libpigpio.so 共享对象创建得很好。Makefile首先创建pigpio.o对象,然后创建command.o对象,并将它们作为共享对象链接在一起。到目前为止还不错 我编写了一个非常小的主函数,它调用gpioInitialise和gpioGetPWMfrequency 哪些函数并不重要,重要的是它们在pigpio.h中定义,并在
# from line 119 in make file
make libpigpio.so
共享对象创建得很好。Makefile首先创建pigpio.o
对象,然后创建command.o
对象,并将它们作为共享对象链接在一起。到目前为止还不错
我编写了一个非常小的主函数,它调用gpioInitialise
和gpioGetPWMfrequency
哪些函数并不重要,重要的是它们在pigpio.h
中定义,并在pigpio.c
中编写
这意味着共享对象应该拥有它们
我的代码的编译命令是:
gcc -Wall -pthread -fpic -L. -lpigpio -o drive drive.c
我仍然得到了这两个函数的未定义引用错误
这毫无意义!如果没有找到共享对象,它将拒绝该命令。我也试过了-l:libpigpio.so
,但还是一样的问题
我直接在RPIA+上编译(不使用交叉编译器)。所以它应该是有效的
我在这里遗漏了什么?这是一个链接顺序问题。请尝试流动命令
gcc drive.c-Wall-pthread-fpic-o drive-L-lpigpio
您可以阅读了解更多详细信息。这是一个链接顺序问题。请尝试流动命令
gcc drive.c-Wall-pthread-fpic-o drive-L-lpigpio
您可以阅读更多详细信息。太好了!谢谢杰出的谢谢