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

facs mpi4py install issue #53

Open
shakir507 opened this issue Jan 31, 2024 · 7 comments
Open

facs mpi4py install issue #53

shakir507 opened this issue Jan 31, 2024 · 7 comments
Assignees
Labels
bug Something isn't working

Comments

@shakir507
Copy link

Dear Dr Derek Groen,
I am Shakir Bilal working at University of South Florida, In Tampa. Our group has been working on a C++ based ABM simulator and seeks to perform sensistvty analysis using the facs tool that you have developed. I have been working with Dr Arindam Saha while he was here at USF last year.

The current issue is with installing the facs on my machine with python 3.8.10 on Ubuntu. The installation process is stuck with the following two issues:
`

allgatherv.c: In function ‘MPI_Allgatherv’:
allgatherv.c:50:1: internal compiler error: in init_alias_analysis, at alias.c:3468
50 | }
| ^

allgatherv.c:50:1: internal compiler error: Segmentation fault
0x7fba204e408f ???
/build/glibc-wuryBv/glibc-2.31/signal/../sysdeps/unix/sysv/linux/x86_64/sigaction.c:0
gcc: internal compiler error: Segmentation fault signal terminated program cc1
Please submit a full bug report,
with preprocessed source if appropriate.
See file:///usr/share/doc/gcc-9/README.Bugs for instructions.
make[2]: *** [Makefile:1876: allgatherv.lo] Error 1
make[2]: Leaving directory '/home/shakir/Downloads/openmpi-4.1.2/ompi/contrib/libompitrace'
make[1]: *** [Makefile:3555: all-recursive] Error 1
make[1]: Leaving directory '/home/shakir/Downloads/openmpi-4.1.2/ompi'
make: *** [Makefile:1901: all-recursive] Error 1
Collecting mpi4py
Using cached mpi4py-3.1.5.tar.gz (2.5 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: mpi4py
Building wheel for mpi4py (pyproject.toml) ... error
error: subprocess-exited-with-error

× Building wheel for mpi4py (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [242 lines of output]

'
2)
'
#include "Python.h"
^~~~~~~~~~
compilation terminated.
error: command '/home/shakir/sfw/MPICH/bin/mpicc' failed with exit code 1
[end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for mpi4py
Failed to build mpi4py
ERROR: Could not build wheels for mpi4py, which is required to install pyproject.toml-based projects
'

@arindamsaha1507 arindamsaha1507 added the bug Something isn't working label Jan 31, 2024
@arindamsaha1507
Copy link
Collaborator

Hi @djgroen

This was the issue regarding mpi4py that I was talking about last week... Please have a look when you have some time...

@arabnejad
Copy link
Collaborator

Hi All

Are you getting this error ? (you did not put the full error output)

error: Python.h: No such file or directory

Are you using virtual Env or Conda? Or try to call pip without any virtual env ?

Could you please locate Python.h file? And you can pass that include folder to the pip command like this:
my assumption here is the Python.h file is located in /home/users/xyz/include/

pip install --global-option="-I/home/users/xyz/include/" mpi4py

the other possibility is you haven't properly installed the header files and static libraries for python dev
have a look at this https://stackoverflow.com/questions/21530577/fatal-error-python-h-no-such-file-or-directory

@djgroen
Copy link
Owner

djgroen commented Jan 31, 2024

Hi all.

I think this is a local deployment issue. I see openmpi being installed in the setup script, but then a call to mpich in the final line of the installation script.

Perhaps an important first step is that you have either openmpi or mpich set up on your machine, but not a blend of both :).

Hope this help as well, in addition to @arabnejad 's very solid advice!

@shakir507
Copy link
Author

shakir507 commented Jan 31, 2024

output.txt
@arabnejad Here is the full output when I run install.sh

I am installing in virtual Env.

@arabnejad
Copy link
Collaborator

@shakir507
I saw your output log, how many times did you install OpenMPI ? I can see it is installed around 104 times 😮
and still can not see any error log regarding mpi4py installation failure (there are some logs but without given any reason, lines 1 -> 82 in outputlog)

Could you please check if you have python-dev package installed ? you can check it with dpkg command (I assume you have Linux based OS)

> dpkg -l | grep "python3-dev"

ii  libpython3-dev:amd64                       3.10.6-1~22.04                          amd64        header files and a static library for Python (default)
ii  python3-dev                                3.10.6-1~22.04                          amd64        header files and a static library for Python (default)

@arabnejad
Copy link
Collaborator

or you can use dpkg-query command (I am sure you have that command available as I can see some output at first lines of your log)

>  dpkg-query -s python3-dev

# output will be something like
Package: python3-dev
Status: install ok installed
Priority: optional
Section: python
Installed-Size: 145
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Architecture: amd64
Multi-Arch: allowed
Source: python3-defaults
Version: 3.10.6-1~22.04
Replaces: python3 (<< 3.9.2-1~), python3.1 (<< 3.1.2+20100706-3)
Depends: python3 (= 3.10.6-1~22.04), libpython3-dev (= 3.10.6-1~22.04), python3.10-dev (>= 3.10.6-1~), python3-distutils (>= 3.10.6-1~), libjs-sphinxdoc (>= 4.3)
Breaks: python3 (<< 3.9.2-1~)
Description: header files and a static library for Python (default)
 Header files, a static library and development tools for building
 Python modules, extending the Python interpreter or embedding Python
 in applications.
 .
 This package is a dependency package, which depends on Debian's default
 Python 3 version's headers (currently v3.10).
Original-Maintainer: Matthias Klose <doko@debian.org>
Built-Using: sphinx (= 4.3.2-1)
Homepage: https://www.python.org/

@shakir507
Copy link
Author

The anaconda environment was an issue. Couldn't get my head around that one so finally removed it. This step got the installation working as it should.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants