由于库冲突,CMake 无法生成搜索路径

路易斯

亲爱的同事们,我是 LINUX 的新手,正在尝试使用 CMake 构建一个 Geant4 示例。执行以下命令后

  $cmake ~/Geant4/geant4.10.05.p01-install/share/Geant4-10.5.1/examples/basic/B1/

我收到此错误消息:

  Cannot generate a safe runtime search path for target exampleB1 because files in some directories 
  may conflict with libraries in implicit directories:
  runtime library [libexpat.so.1] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
  /home/dakar/anaconda3/lib

  Some of these libraries may not be found correctly.

警告是正确的,当我运行时,$ make -j6我收到错误消息

    /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libSM.so: undefined reference to 
    ‘uuid_generate@UUID_1.0’
    /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libSM.so: undefined reference 
    to‘uuid_unparse_lower@UUID_1.0’

之前也遇到过这个问题,这里详细介绍一些解决方法:

https://github.com/pism/pism/issues/356

URL 链接的页面表明对于 Conda 4.4+ 不应发生此问题。我正在使用 Conda 4.6.14,但该页面补充说,如果确实发生了:您可以在将 conda 添加到您的路径之前NOCONDA_PATH在您的.bashrc(或类似的)中设置变量,如下所示:

    export NOCONDA_PATH=$PATH
    export PATH=$HOME/anaconda3/bin:$PATH

我试过这个,我.bashrc现在读到:

# >>> conda init >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$(CONDA_REPORT_ERRORS=false '/home/dakar/anaconda3/bin/conda' shell.bash hook 2> /dev/null$
if [ $? -eq 0 ]; then
    \eval "$__conda_setup"
else
    if [ -f "/home/dakar/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/home/dakar/anaconda3/etc/profile.d/conda.sh"
        CONDA_CHANGEPS1=false conda activate base
    else
#       \export NOCONDA_PATH=$PATH
        \export PATH="/home/dakar/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda init <<<

export CLHEP_DIR=/home/dakar/CLHEP/2.3.3.2/CLHEP-install/
export CLHEP_INCLUDE_DIR=${CLHEP_DIR}/include/
export CLHEP_LIBRARY=${CLHEP_DIR}/lib/
export LD_LIBRARY_PATH=${CLHEP_LIBRARY}:${LD_LIBRARY_PATH}
export PATH=$CLHEP_DIR/bin/:$PATH

export TOPAS_G4_DATA_DIR=~/G4Data
export LD_LIBRARY_PATH=~/topas/libexternal/:$LD_LIBRARY_PATH
#export LD_LIBRARY_PATH=~/anaconda3/lib/gcc/lib:$LD_LIBRARY_PATH
#CERN ROOT
#export ROOTSYS=/usr/local/root
#export PATH=$ROOTSYS/bin:$PATH
#export PYTHONDIR=$ROOTSYS
#export LD_LIBRARY_PATH=$ROOTSYS/lib:$PYTHONDIR/lib:$ROOTSYS/bindings/pyroot:$LD_LIBRARY_PATH
#export PYTHONPATH=$ROOTSYS/lib:$PYTHONPATH:$ROOTSYS/bindings/pyroot
source ~/Geant4/geant4.10.05.p01-install/bin/geant4.sh
#source ~/Geant4/geant4.10.05.p01-install/share/Geant4-10.5.1/geant4make/geant4make.sh

export NOCONDA_PATH=$PATH
export PATH="/home/dakar/anaconda3/bin:$PATH"

这仍然没有解决问题。当我运行时,echo $PATH我仍然可以看到 conda 目录:

$ echo $PATH
/home/dakar/anaconda3/bin:/home/dakar/Geant4/geant4.10.05.p01-install/bin:/home/dakar/CLHEP/2.3.3.2/CLHEP-install//bin/:/home/dakar/anaconda3/bin:/home/dakar/anaconda3/condabin:/usr/local/cuda-8.0/bin:/home/dakar/bin:/home/dakar/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

有人有进一步的建议吗?卸载 Conda 本身会是一个解决方案。

谢谢你的时间。

账单

该错误消息表明您在链接器调用中缺少 libuuid。

尝试将 -luuid 添加到您的链接器标志。

您的构建系统是否使用 pkg-config?在这种情况下,您可以编辑/usr/lib/x86_64-linux-gnu/pkgconfig/sm.pc并将 -luuid 添加到 -Section Libs

这看起来像是 Linux-Distro 中的一个错误。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

CMake无法在不同的静态库中检测符号冲突

来自分类Dev

无法加载库搜索路径中存在的共享库

来自分类Dev

如何告诉 CMake 不要搜索库的系统路径

来自分类Dev

由于JAR冲突而无法运行Flume

来自分类Dev

由于命名冲突而无法创建表

来自分类Dev

由于名称空间冲突,无法解析XSD

来自分类Dev

由于javascript冲突而无法上传图片

来自分类Dev

由于冲突而无法“ git stash pop”

来自分类Dev

如何设置CMake搜索路径

来自分类Dev

CMake设置默认搜索路径?

来自分类Dev

CMake无法使用相对文件路径找到静态库

来自分类Dev

为什么Xcode即使在搜索路径中列出了它也无法找到GLEW动态库?

来自分类Dev

共享库文件搜索路径

来自分类Dev

Qt Creator由于错误的link.exe路径而无法打开CMake项目

来自分类Dev

相同 C 库的路径/命名空间冲突

来自分类Dev

由于Bundler版本冲突,生成控制器失败

来自分类Dev

Android:由于相依性冲突而无法完成安装

来自分类Dev

由于晦涩的冲突,无法添加外键约束

来自分类Dev

由于版本冲突,无法安装sass +罗盘+可疑软件

来自分类Dev

由于依赖项冲突而无法更新Eclipse

来自分类Dev

由于与git / egit的依赖项冲突,因此无法更新Eclipse

来自分类Dev

由于依赖项冲突而无法更新Eclipse

来自分类Dev

由于软件包冲突,无法安装GNU-Octave

来自分类Dev

由于路径中有额外的LOCAL_PATH,Android Makefile无法找到库

来自分类Dev

无法生成CMake命令

来自分类Dev

CMake库目录冲突警告和错误

来自分类Dev

CMake无法链接外部库

来自分类常见问题

Xcode 7库搜索路径警告

来自分类Dev

C ++中的路径搜索库,用于浏览文件的路径列表

Related 相关文章

热门标签

归档