海康威視linux下sdk調用

如果HCNetSDKCom目錄以及libhcnetsdk.solibhpr.so、libHCCore文件和可執行文件在同一級目錄下,則使用同級目錄下的庫文件;
如果不在同一級目錄下,則需要將以上文件的目錄加載到動態庫搜索路徑中,設置的方式有以下幾種:
一. 將網絡SDK各動態庫路徑加入到LD_LIBRARY_PATH環境變量
1.在終端輸入:export LD_LIBRARY_PATH=LDLIBRARYPATH:/XXX:/XXX/HCNetSDKCom2. /.bashrc /.bashprofileexportLDLIBRARYPATH=LD_LIBRARY_PATH:/XXX:/XXX/HCNetSDKCom 只在當前終端起作用 2. 修改~/.bashrc或~/.bash_profile,最後一行添加 export LD_LIBRARY_PATH=LD_LIBRARY_PATH:/XXX:/XXX/HCNetSDKCom,保存之後,使用source .bashrc執行該文件 ,當前用戶生效
3. 修改/etc/profile,添加內容如第2條,同樣保存之後使用source執行該文件 所有用戶生效

二.在/etc/ld.so.conf文件結尾添加網絡sdk庫的路徑,如/XXX和/XXX/HCNetSDKCom/,保存之後,然後執行ldconfig

三.可以將網絡sdk各依賴庫放入到/lib64或usr/lib64下

四.可以在Makefile中使用-Wl,-rpath來指定動態路徑,但是需要將網絡sdk各個動態庫都用 –l方式顯示加載進來
比如:-Wl,-rpath=/XXX:/XXX/HCNetSDKCom -lhcnetsdk -lhpr –lHCCore –lHCCoreDevCfg –lStreamTransClient –lSystemTransform –lHCPreview –lHCAlarm –lHCGeneralCfgMgr –lHCIndustry –lHCPlayBack –lHCVoiceTalk –lanalyzedata -lHCDisplay

推薦使用一或二的方式,但要注意優先使用的是同級目錄下的庫文件。

嘗試一二方法後,不成功,最後將/XXX:/XXX/HCNetSDKCom 中的.so文件都複製到在usr/lib下重啓。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章