CANOpenShell: symbol lookup error: /usr/local/lib/libcanfestival_can_peak_linux.so: undefined symbol: LINUX_CAN_Open
我使用./configure --timers=rtai --can=peak_linux
编译了Canfestival 后 执行make , sudo make install
这中间都没有任何错误,然而当我去执行 sudo CANOpenShell load#libcanfestival_can_peak_linux.so,0,1M,0,1
开始测试时遇到 CANOpenShell: symbol lookup error: /usr/local/lib/libcanfestival_can_peak_linux.so: undefined symbol: LINUX_CAN_Open 错误。
开始通过ldd 去查看CANOpenShell,发现没有CANOpenShell并没有连接libcanfestival_can_peak_linux.so。
于是又去看了Canfestival的源码,在 drivers/can_peak_linux下的Makefile.in中发现编译时也没有去连接
解决方法就是更改Makefile.in 然后重新编译
更改后和下图一样就可以了