解決 /usr/lib/x86_64-linux-gnu/liblapack.so.3: undefined reference to `gotoblas'


最近需要用到openblas庫,本地ubuntu 系統內有一個版本,但是想用自己新編譯的openblas,

使用cmake指定了鏈接的庫地址,

SET(LINK_LIB_DIRS "/usr/local/lib" "/home/beauty/beautify_linux/3rdparty/OpenBLAS/lib/libopenblas.a")


SET(OpenBLAS_LIBRARIES /home/github/OpenBLAS/build/lib/libopenblas.a)
SET(OpenCV_LIBRARIES  libopencv_core.so libopencv_imgproc.so libopencv_imgcodecs.so libopencv_highgui.so libopencv_videoio.so opencv_objdetect)
SET(Other_LIBRARIES libboost_filesystem.so libboost_system.so)
SET(LINK_LIBS  ${OpenBLAS_LIBRARIES} ${OpenCV_LIBRARIES} ${Other_LIBRARIES})
#INCLUDE_DIRECTORIES(${INCLUDE_DIRS})
LINK_DIRECTORIES(${LINK_LIB_DIRS})

#ADD_LIBRARY(beautify SHARED ${SRC_LIST})
ADD_LIBRARY(beautify_static STATIC ${SRC_LIST})

# 指定靜態庫的輸出名稱
#SET_TARGET_PROPERTIES(beautify_static PROPERTIES OUTPUT_NAME "beautify")

# 使動態庫和靜態庫同時存在
#SET_TARGET_PROPERTIES(beautify PROPERTIES CLEAN_DIRECT_OUTPUT 1)
#SET_TARGET_PROPERTIES(beautify_static PROPERTIES CLEAN_DIRECT_OUTPUT 1)
 
# 指定動態庫版本
# VERSION 動態庫版本
# SOVERSION API版本
#SET_TARGET_PROPERTIES(beautify PROPERTIES VERSION 1.0 SOVERSION 1)


TARGET_LINK_LIBRARIES(beautify_static ${LINK_LIBS})
 

但是,但是。。ldd的時候顯示的依賴路徑總是系統目錄下的。。

無奈只能把系統下的刪掉,這時候才能運行程序。

雖然很不優雅。。但是實在着急只能出此下策。。

sudo apt-get remove libopenblas-base

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM