Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OpenMPI requires both C and Fortran compilers during spack install. #2765

Open
berceanu opened this issue Oct 24, 2018 · 11 comments
Open

OpenMPI requires both C and Fortran compilers during spack install. #2765

berceanu opened this issue Oct 24, 2018 · 11 comments
Assignees
Labels
component: third party third party libraries that are shipped and/or linked install installation & packaging question

Comments

@berceanu
Copy link
Contributor

berceanu commented Oct 24, 2018

Followind the spack install instructions on an Ubuntu 18.04 box, the above message appears while building openmpi. It can be fixed by setting

   f77: /usr/bin/gfortran-7
   fc: /usr/bin/gfortran-7

in compilers.yaml (e.g., use spack config edit compilers) or running

spack compiler find

provided of course, gfortran is installed.

@berceanu berceanu changed the title OpenMPI requires both C and Fortran compilers during default spack install. OpenMPI requires both C and Fortran compilers during spack install. Oct 24, 2018
@ax3l ax3l added component: third party third party libraries that are shipped and/or linked install installation & packaging labels Oct 25, 2018
@ax3l
Copy link
Member

ax3l commented Oct 25, 2018

Yes, that's currently a limitation of the OpenMPI package in Spack itself. Thank you for documenting this here! ✨

@berceanu
Copy link
Contributor Author

I'm not sure how important it is for building openmpi that gcc and gfortran should be the same version. If they should be, then the above fix will often fail, as the system gfortran might be a different version than the spack gcc package. So should we add gfortran to the spack dependency list instead?

@ax3l
Copy link
Member

ax3l commented Oct 25, 2018

I thought that the current workflow to spack install gcc and then spack load gcc + spack compiler find does that. Did we miss it? By default, the spack gcc package installs the c, c++ and fortran languages.

@berceanu
Copy link
Contributor Author

You're absolutely right, gfortran is installed along with gcc.

@ax3l
Copy link
Member

ax3l commented Oct 25, 2018

Ok, so this was probably just a big mixed up while you debugged the other issues?

@ax3l ax3l added the question label Oct 25, 2018
@ax3l ax3l self-assigned this Oct 25, 2018
@berceanu
Copy link
Contributor Author

Yes, looks like everything is working now :)

@ax3l ax3l mentioned this issue Oct 26, 2018
1 task
@ax3l
Copy link
Member

ax3l commented Oct 26, 2018

Cool! Just have this corner-case concern left: #2773 (comment)

@hightower8083
Copy link
Contributor

hightower8083 commented Nov 21, 2018

By the way, its, probably off-topic, but about a week they have released openmpi.4.0.0. While spack takes it by default for the given requirement mpi@2.3:3.0, building it with gcc5.5.0 crashes with a msg like,

Error: Line truncated at (1) [-Werror=line-truncation]
mpi-ext-module.F90:29:6:

I had to replace requirement mpi@2.3:3.0 with openmpi@3.1.2 to complete the installation

@ax3l
Copy link
Member

ax3l commented Nov 23, 2018

Thanks for the note!
I now updated the recipe to explicitly build on OpenMPI between 1.8 and 3.99: ComputationalRadiationPhysics/spack-repo@6932754

@ax3l
Copy link
Member

ax3l commented Nov 23, 2018

@hightower8083 can you please report the GCC 5.5 build issue that you get when running

spack install -v openmpi@4.0.0 %gcc@5.5

upstream in https://github.com/open-mpi/ompi ? I think it's not reported yet.

@hightower8083
Copy link
Contributor

sure -- i'll check it again and will tell em

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: third party third party libraries that are shipped and/or linked install installation & packaging question
Projects
None yet
Development

No branches or pull requests

3 participants