首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >集群上安装的linuxbrew找不到lib /usr/lib 64

集群上安装的linuxbrew找不到lib /usr/lib 64
EN

Stack Overflow用户
提问于 2016-01-19 17:55:54
回答 1查看 1.2K关注 0票数 0

我想在GGPU集群上建立caffe。我使用linuxbrew在我的家庭的一个子文件夹中安装了许多依赖项。其中一个依赖项是更新版本的cmake(需要)。

当我启动命令时

代码语言:javascript
复制
cmake ..

我得到了这个输出

代码语言:javascript
复制
-- Boost version: 1.59.0
-- Found the following Boost libraries:
--   system
--   thread
--   filesystem
-- Found gflags  (include: /home/cgvg/.linuxbrew/include, library: /home/cgvg/.linuxbrew/lib/libgflags.so)
-- Found glog    (include: /home/cgvg/.linuxbrew/include, library: /home/cgvg/.linuxbrew/lib/libglog.so)
-- Found PROTOBUF Compiler: /home/cgvg/.linuxbrew/bin/protoc
-- Found lmdb    (include: /home/cgvg/.linuxbrew/include, library: /home/cgvg/.linuxbrew/lib/liblmdb.a)
-- Found LevelDB (include: /home/cgvg/.linuxbrew/include, library: /home/cgvg/.linuxbrew/lib/libleveldb.so)
-- Found Snappy  (include: /home/cgvg/.linuxbrew/include, library: /home/cgvg/.linuxbrew/lib/libsnappy.so)
-- CUDA detected: 7.5
-- Automatic GPU detection failed. Building for all known architectures.
-- Added CUDA NVCC flags for: sm_20 sm_21 sm_30 sm_35 sm_50
-- OpenCV found (/home/cgvg/sottile/opencv/share/OpenCV)
CMake Error at /home/cgvg/.linuxbrew/Cellar/cmake/3.4.1/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find Atlas (missing: Atlas_LAPACK_LIBRARY)
Call Stack (most recent call first):
  /home/cgvg/.linuxbrew/Cellar/cmake/3.4.1/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  cmake/Modules/FindAtlas.cmake:42 (find_package_handle_standard_args)
  cmake/Dependencies.cmake:88 (find_package)
  CMakeLists.txt:38 (include)


-- Configuring incomplete, errors occurred!
See also "/home/cgvg/sottile/caffe/build/CMakeFiles/CMakeOutput.log".
See also "/home/cgvg/sottile/caffe/build/CMakeFiles/CMakeError.log".

而且似乎没有什么可以做的,我可以正确链接ATLAS库。失踪的唇语

代码语言:javascript
复制
/usr/lib64/atlas-sse3

是否有可能存在这样的限制,使我的linuxbrewed cmake无法链接到上层文件夹?

在错误消息中,它说:

代码语言:javascript
复制
cmake/Modules/FindAtlas.cmake:42

我试图修改该文件,添加正确的路径:

代码语言:javascript
复制
set(Atlas_INCLUDE_SEARCH_PATHS
  /usr/include
  $ENV{Atlas_ROOT_DIR}
  $ENV{Atlas_ROOT_DIR}/include
)

set(Atlas_LIB_SEARCH_PATHS
  /usr/lib64/atlas
  /usr/lib64/atlas-sse3 
  $ENV{Atlas_ROOT_DIR}
  $ENV{Atlas_ROOT_DIR}/lib
)

什么都没发生。

我试图更改路径和LD_LIBRARY_PATH:

代码语言:javascript
复制
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/atlas-sse3
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/include/atlas-x86_64-base-sse3/

什么都没发生。

我不是linux的老手,所以如果我错过了一些重要的信息,我很抱歉。如有任何建议,将不胜感激。

编辑:这是/usr/lib64 64/atlas3-sse3的内容:

代码语言:javascript
复制
libatlas.a       libcblas.so.3.0    libf77blas.so.3.0  libptcblas.so.3
libatlas.so      libclapack.so      liblapack.a        libptcblas.so.3.0
libatlas.so.3    libclapack.so.3    liblapack.so       libptf77blas.a
libatlas.so.3.0  libclapack.so.3.0  liblapack.so.3     libptf77blas.so
libcblas.a       libf77blas.a       liblapack.so.3.0   libptf77blas.so.3
libcblas.so      libf77blas.so      libptcblas.a       libptf77blas.so.3.0
libcblas.so.3    libf77blas.so.3    libptcblas.so
libatlas.a       libcblas.so.3.0    libf77blas.so.3.0  libptcblas.so.3
libatlas.so      libclapack.so      liblapack.a        libptcblas.so.3.0
libatlas.so.3    libclapack.so.3    liblapack.so       libptf77blas.a
libatlas.so.3.0  libclapack.so.3.0  liblapack.so.3     libptf77blas.so
libcblas.a       libf77blas.a       liblapack.so.3.0   libptf77blas.so.3
libcblas.so      libf77blas.so      libptcblas.a       libptf77blas.so.3.0
libcblas.so.3    libf77blas.so.3    libptcblas.so
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-19 20:05:58

因为这个原因,FindAtlas.cmake找不到alapack_r、alapck或lapack_atlas。

只需编辑caffe_ Atlas_LAPACK_LIBRARY /cmake/Module/findAtlanas.cmake,查找Atlas_LAPACK_LIBRARY名称并将clapack添加到库列表中就足够了。

它完全解决了问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34883771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档