错误:libtool - 编译 MPI 程序时
Posted
技术标签:
【中文标题】错误:libtool - 编译 MPI 程序时【英文标题】:Error: libtool - while compiling an MPI program 【发布时间】:2016-05-24 12:53:57 【问题描述】:我正在使用 OpenSuse Leap
并安装了 openMPI
认为是 YaST。运行which mpirun
命令我得到/usr/lib64/mpi/gcc/openmpi/bin/mpirun
并运行which mpicc
我得到/usr/bin/mpicc
。
如何首先确保正确安装了 OpenMPI?
其次,我有一个简单的 hello world 我是进程 X 程序并正在运行 mpicc hello.c
我得到这个输出
gcc: error: libtool:: No such file or directory
gcc: 错误: 链接:: 否
这样的文件或目录 mpicc: 没有这样的文件或目录
另外,我安装了Eclipse for Parallel Application
并使用了一个内置示例,它在构建时给了我这个输出
全部搞定
建筑目标:你好
调用:GCC C 链接器
mpicc -o "你好" ./src/hello.o
gcc: error: libtool:: No such file or directory
gcc: error: link:: No such file or directory
makefile:30: 目标“hello”的配方失败
mpicc: 没有这样的文件或目录
make: *** [hello] 错误 1
我检查了 YaST 并安装了 libtool。
【问题讨论】:
sudo apt-get install automake autoconf libtool
及之后的autoreconf -i
正在加载存储库数据...正在读取已安装的软件包...“libtool”已安装。 'libtool-2.4.2-16.6.x86_64' 没有更新候选。已安装最高可用版本。 'automake' 已安装。 'automake-1.13.4-6.4.noarch' 没有更新候选。已安装最高可用版本。 'autoconf' 已经安装。 'autoconf-2.69-11.4.noarch' 没有更新候选。已安装最高可用版本。解决包依赖关系...无事可做。
@LPs 关于 +autoreconf -i 我如何使用它?
您是否尝试在项目目录中启动autoreconf -i
?
@LPs 我在终端中做了一个autoreconf -i
并得到了autoreconf: 'configure.ac' or 'configure.in' is required
【参考方案1】:
这个答案来得太晚了。我最近有同样的问题。因此,任何来这里寻求答案的人,这就是我的工作方式。
请注意:这是一个孤立的情况,会出现类似的错误
gcc: error: libtool:: No such file or directory
gcc: error: link:: No such file or directory
mpicc: No such file or directory
首先尝试检查 LP 建议的解决方案。它将尝试更新您的 libtool autoconf 和 automake。如果你无事可做:
sudo zypper in automake autoconf libtool
root's password:
Loading repository data...
Reading installed packages...
'libtool' is already installed.
No update candidate for 'libtool-2.4.2-15.2.2.x86_64'. The highest available version is already installed.
'autoconf' is already installed.
No update candidate for 'autoconf-2.69-10.1.2.noarch'. The highest available version is already installed.
'automake' is already installed.
No update candidate for 'automake-1.13.4-5.1.2.noarch'. The highest available version is already installed.
Resolving package dependencies...
Nothing to do.
然后显式添加您的 OpemMPI 路径变量。
export PATH=/usr/lib64/mpi/gcc/openmpi/bin:$PATH
这对我有用。祝你好运!
【讨论】:
嘿,谢谢!虽然我无法确认您的回答,但我已转移到 debian,它开箱即用,没有任何问题,我会认为它是正确的。以上是关于错误:libtool - 编译 MPI 程序时的主要内容,如果未能解决你的问题,请参考以下文章
libtool:存档中的对象名称冲突(NETCDF + MinGW)
在 openSUSE 上用 C 语言在 mpi 中编译 hello world 程序时出错