/usr/bin/ld: 找不到 -lhcnetsdk
具体报错
[ 98%] Built target cirs_girona_cala_viuda_generate_messages
/usr/bin/ld: 找不到 -lhcnetsdk
/usr/bin/ld: 找不到 -lhpr
/usr/bin/ld: 找不到 -lHCCore
/usr/bin/ld: 找不到 -lHCCoreDevCfg
/usr/bin/ld: 找不到 -lStreamTransClient
/usr/bin/ld: 找不到 -lSystemTransform
/usr/bin/ld: 找不到 -lHCPreview
/usr/bin/ld: 找不到 -lHCAlarm
/usr/bin/ld: 找不到 -lHCGeneralCfgMgr
/usr/bin/ld: 找不到 -lHCIndustry
/usr/bin/ld: 找不到 -lHCPlayBack
/usr/bin/ld: 找不到 -lHCVoiceTalk
/usr/bin/ld: 找不到 -lanalyzedata
/usr/bin/ld: 找不到 -lHCDisplay
collect2: error: ld returned 1 exit status
ok_hcnetcam/CMakeFiles/ok_hcnetcam.dir/build.make:113: recipe for target '/home/zby/linshi2/devel/lib/ok_hcnetcam/ok_hcnetcam' failed
make[2]: *** [/home/zby/linshi2/devel/lib/ok_hcnetcam/ok_hcnetcam] Error 1
CMakeFiles/Makefile2:3441: recipe for target 'ok_hcnetcam/CMakeFiles/ok_hcnetcam.dir/all' failed
make[1]: *** [ok_hcnetcam/CMakeFiles/ok_hcnetcam.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j8 -l8" failed
问题分析
提示找不到相关库文件
其实在我的程序包中是有相关库文件的
只是系统在编译的时候找不到
尝试了很多种办法之后,决定直接复制到/usr/lib下面
复制库文件
1、在/usr/lib/ 下面创建一个文件夹HCNetSDKCom
sudo mkdir HCNetSDKCom
2、在自己包下面的库文件中打开终端,准备复制
sudo cp -i libanalyzedata.so /usr/lib/HCNetSDKCom/
sudo cp -i libHCAlarm.so /usr/lib/HCNetSDKCom/
sudo cp -i libHCCoreDevCfg.so /usr/lib/HCNetSDKCom/
3、如下一一复制
4、再次编译即可成功
[100%] Built target ok_hcnetcam
zby@zby:~/linshi2$
5、思考
感觉这是最基础的一种办法,肯定会有更好的办法,可以直接解决找不到库文件的问题,如果以后解决,会在此文章下面进行补充。