Centos7安装MPICH出现问题
[root@localhostmpich-3.2.1]#bash./configure--prefix=/home/gq/mpich-install--disable-f...
[root@localhost mpich-3.2.1]# bash ./configure --prefix=/home/gq/mpich-install --disable-fortran 2>&1 | tee c.txt
Configuring MPICH version 3.2.1 with '--prefix=/home/gq/mpich-install' '--disable-fortran'
Running on system: Linux localhost.localdomain 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
checking for icc... no
checking for pgcc... no
checking for xlc... no
checking for xlC... no
checking for pathcc... no
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for support for gcc ia64 primitives... no
checking for support for gcc PowerPC atomics... no
checking for support for gcc ARM atomics... no
checking for support for gcc SiCortex atomics... no
checking for support for gcc atomic intrinsics... yes
checking for support for Windows NT atomic intrinsics... no
checking for support for Sun atomic operations library... no
checking whether to enable strict fairness checks... no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating test/Makefile
config.status: creating openpa.pc
config.status: creating src/config.h
config.status: src/config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing src/opa_config.h commands
config.status: creating src/opa_config.h - prefix OPA for src/config.h defines
config.status: src/opa_config.h is unchanged
configure: ===== done with src/openpa configure =====
configure: WARNING: The configure in /home/gq/下载/mpich-3.2.1/src/pm/hydra exists but is not executable
configure: error: Aborting configure because an error was seen in the selection of process managers
求大佬们看看帮助解决谢谢啦! 展开
Configuring MPICH version 3.2.1 with '--prefix=/home/gq/mpich-install' '--disable-fortran'
Running on system: Linux localhost.localdomain 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
checking for icc... no
checking for pgcc... no
checking for xlc... no
checking for xlC... no
checking for pathcc... no
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for support for gcc ia64 primitives... no
checking for support for gcc PowerPC atomics... no
checking for support for gcc ARM atomics... no
checking for support for gcc SiCortex atomics... no
checking for support for gcc atomic intrinsics... yes
checking for support for Windows NT atomic intrinsics... no
checking for support for Sun atomic operations library... no
checking whether to enable strict fairness checks... no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating test/Makefile
config.status: creating openpa.pc
config.status: creating src/config.h
config.status: src/config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing src/opa_config.h commands
config.status: creating src/opa_config.h - prefix OPA for src/config.h defines
config.status: src/opa_config.h is unchanged
configure: ===== done with src/openpa configure =====
configure: WARNING: The configure in /home/gq/下载/mpich-3.2.1/src/pm/hydra exists but is not executable
configure: error: Aborting configure because an error was seen in the selection of process managers
求大佬们看看帮助解决谢谢啦! 展开
2个回答
2018-12-29 · 百度知道官方认证企业
腾讯电脑管家
腾讯电脑管家是腾讯公司推出的免费安全管理软件,能有效预防和解决计算机上常见的安全风险,并帮助用户解决各种电脑“疑难杂症”、优化系统和网络环境,是中国综合能力最强、最稳定的安全软件。
向TA提问
关注
展开全部
checking if compiler rejects bogus asm statements… yes
checking for support for gcc x86/x86_64 primitives… yes
checking for support for gcc x86 primitives for pre-Pentium 4… yes
checking for support for gcc ia64 primitives… no
checking for support for gcc PowerPC atomics… no
checking for support for gcc ARM atomics… no
checking for support for gcc SiCortex atomics… no
checking for support for gcc atomic intrinsics… yes
checking for support for gcc x86/x86_64 primitives… yes
checking for support for gcc x86 primitives for pre-Pentium 4… yes
checking for support for gcc ia64 primitives… no
checking for support for gcc PowerPC atomics… no
checking for support for gcc ARM atomics… no
checking for support for gcc SiCortex atomics… no
checking for support for gcc atomic intrinsics… yes
展开全部
mpiexec -n <number> ./examples/cpi
运行时需要自己修改<number>为自己的值,我指定的是<number>=4
在运行后出现了一下的问题,程序cpi所在的位置不允许运行。
/usr/bin/ld: cannot open output file /home/themingyi/Downloads/mpich-3.3/examples/.libs/14351-lt-cpi: Permission denied
查找资料后发现是程序所在位置权限设置的问题;修改如下:
sudo chown -R "$USER:" /home/themingyi/Downloads/mpich-3.3/examples
chmod -R 777 /home/themingyi/Downloads/mpich-3.3/examples
几点解释:
(1)The -R flag stands for recursive, so that directory and all its subfiles and subdirectories will change owner. Remove the -R flag to just change the permissions of the directory itself.
(2)运行时找到examples文件夹,就在自己下载的mpich包的解压文件中
运行结果如下:
cpi.c程序:
/* -*- Mode: C; c-basic-offset:5 ; indent-tabs-mode:nil ; -*- */↩
/*↩
* (C) 2001 by Argonne National Laboratory.↩
* See COPYRIGHT in top-level directory.↩
*/↩
↩
#include "mpi.h"↩
#include <stdio.h>↩
#include <math.h>↩
↩
double f(double);↩
↩
double f(double a)↩
{↩
return (4.0 / (1.0 + a * a));↩
}↩
↩
int main(int argc, char *argv[])↩
{↩
int n, myid, numprocs, i;↩
double PI25DT = 3.141592653589793238462643;↩
double mypi, pi, h, sum, x;↩
double startwtime = 0.0, endwtime;↩
int namelen;↩
char processor_name[MPI_MAX_PROCESSOR_NAME];↩
↩
MPI_Init(&argc, &argv);↩
MPI_Comm_size(MPI_COMM_WORLD, &numprocs);↩
MPI_Comm_rank(MPI_COMM_WORLD, &myid);↩
MPI_Get_processor_name(processor_name, &namelen);↩
↩
fprintf(stdout, "Process %d of %d is on %s\n", myid, numprocs, processor_name);↩
fflush(stdout);↩
↩
n = 10000; /* default # of rectangles */↩
if (myid == 0)↩
startwtime = MPI_Wtime();↩
↩
MPI_Bcast(&n, 1, MPI_INT, 0, MPI_COMM_WORLD);
↩
h = 1.0 / (double) n;↩
sum = 0.0;↩
/* A slightly better approach starts from large i and works ba ck */↩
for (i = myid + 1; i <= n; i += numprocs) {↩
x = h * ((double) i - 0.5);↩
sum += f(x);↩
}↩
mypi = h * sum;↩
↩
MPI_Reduce(&mypi, &pi, 1, MPI_DOUBLE, MPI_SUM, 0, MPI_COMM_WOR LD);↩
↩
if (myid == 0) {↩
endwtime = MPI_Wtime();↩
printf("pi is approximately %.16f, Error is %.16f\n", pi, fabs(pi - PI25DT));↩
printf("wall clock time = %f\n", endwtime - startwtime);↩
fflush(stdout);↩
}↩
↩
MPI_Finalize();↩
return 0;↩
}↩
建议看看《Linux就该这么学》
运行时需要自己修改<number>为自己的值,我指定的是<number>=4
在运行后出现了一下的问题,程序cpi所在的位置不允许运行。
/usr/bin/ld: cannot open output file /home/themingyi/Downloads/mpich-3.3/examples/.libs/14351-lt-cpi: Permission denied
查找资料后发现是程序所在位置权限设置的问题;修改如下:
sudo chown -R "$USER:" /home/themingyi/Downloads/mpich-3.3/examples
chmod -R 777 /home/themingyi/Downloads/mpich-3.3/examples
几点解释:
(1)The -R flag stands for recursive, so that directory and all its subfiles and subdirectories will change owner. Remove the -R flag to just change the permissions of the directory itself.
(2)运行时找到examples文件夹,就在自己下载的mpich包的解压文件中
运行结果如下:
cpi.c程序:
/* -*- Mode: C; c-basic-offset:5 ; indent-tabs-mode:nil ; -*- */↩
/*↩
* (C) 2001 by Argonne National Laboratory.↩
* See COPYRIGHT in top-level directory.↩
*/↩
↩
#include "mpi.h"↩
#include <stdio.h>↩
#include <math.h>↩
↩
double f(double);↩
↩
double f(double a)↩
{↩
return (4.0 / (1.0 + a * a));↩
}↩
↩
int main(int argc, char *argv[])↩
{↩
int n, myid, numprocs, i;↩
double PI25DT = 3.141592653589793238462643;↩
double mypi, pi, h, sum, x;↩
double startwtime = 0.0, endwtime;↩
int namelen;↩
char processor_name[MPI_MAX_PROCESSOR_NAME];↩
↩
MPI_Init(&argc, &argv);↩
MPI_Comm_size(MPI_COMM_WORLD, &numprocs);↩
MPI_Comm_rank(MPI_COMM_WORLD, &myid);↩
MPI_Get_processor_name(processor_name, &namelen);↩
↩
fprintf(stdout, "Process %d of %d is on %s\n", myid, numprocs, processor_name);↩
fflush(stdout);↩
↩
n = 10000; /* default # of rectangles */↩
if (myid == 0)↩
startwtime = MPI_Wtime();↩
↩
MPI_Bcast(&n, 1, MPI_INT, 0, MPI_COMM_WORLD);
↩
h = 1.0 / (double) n;↩
sum = 0.0;↩
/* A slightly better approach starts from large i and works ba ck */↩
for (i = myid + 1; i <= n; i += numprocs) {↩
x = h * ((double) i - 0.5);↩
sum += f(x);↩
}↩
mypi = h * sum;↩
↩
MPI_Reduce(&mypi, &pi, 1, MPI_DOUBLE, MPI_SUM, 0, MPI_COMM_WOR LD);↩
↩
if (myid == 0) {↩
endwtime = MPI_Wtime();↩
printf("pi is approximately %.16f, Error is %.16f\n", pi, fabs(pi - PI25DT));↩
printf("wall clock time = %f\n", endwtime - startwtime);↩
fflush(stdout);↩
}↩
↩
MPI_Finalize();↩
return 0;↩
}↩
建议看看《Linux就该这么学》
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询