EMsoft-org / EMsoft-org/EMsoft
Failing to install pyEMsoft on Linux Ubuntu 20.04
- Dominant language
- Fortran
- Stars
- 84
- Forks
- 113
- PR merge metrics
- No merged PRs in 30d
Description
Tried installing pyEMsoft from the latest commit 66068593a123dd7c6b133435ddf262af2288f8f1, but failed. Can some get pyEMsoft running on Ubuntu? If so, what does your Python env (Anaconda/venv) look like?
I've followed the installation instructions (https://pyemsoftreadthedocs.readthedocs.io/en/latest/Installation.html).
From an amateur's glance, I believe I've found some minor things in `Source/pyEMsoft/run_pyEMsoft.sh.in` and `kind_map` which should be changed:
1. Explanation before code (line 47) should read: "THIS FILE IS AUTOMATICALLY... LOCATED AT @EMsoft_SOURCE_DIR@/Source/pyEMsoft/run_pyEMsoft.sh.in", adding the `Source`
2. `CLsupport.f90` is not located together with the other source files in EMsoftLib, but in its own EMOpenCLLib directory? Therefore it must either be added both places, or the bash script must be updated.
3. Locations of `local.f90` and `stringconstants.f90` is not `EMsoftBuild/Debug/EMsoft/EMsoftLib`, but `EMsoftBuild/Debug/EMsoftLib`. Line 106 in `run_pyEMsoft.sh.in` should be updated.
4. The `kind_map` misses the `character` entries `'34':'char'` and `'38':'char'`? I've gotten these lines at the bottom of `build_error.log`:
```bash
RuntimeError: Unknown combination of type "character" and kind "34" - add to kind map and try again
f90wrap: RuntimeError('Unknown combination of type "character" and kind "34" - add to kind map and try again')
for help use --help
```
and, after adding 34, I get the same error with 38.
After addressing this and the source file locations, the script runs for ~1-2 hours without any errors being printed to stdout. However, Python complains saying that `_pyEMsoft` is not found. Looking in `build_error.log`, I find these lines at the bottom:
```bash
analyzevars: charselector={'len': '1'} unhandled.analyzevars: charselector={'len': '1'} unhandled.analyzevars: charselector={'len': '1024'} unhandled.analyzevars: charselector={'len': '1024'} unhandled.analyzevars: charselector={'len': '1024'} unhandled.analyzevars: charselector={'len': '1'} unhandled.analyzevars: charselector={'len': '1'} unhandled.analyzevars: charselector={'len': '1'} unhandled.analyzevars: charselector={'len': '1'} unhandled.analyzevars: charselector={'len': '1024'} unhandled.analyzevars: charselector={'len': '1024'} unhandled.analyzevars: charselector={'len': '1024'} unhandled.analyzevars: charselector={'len': '1'} unhandled.analyzevars: charselector={'len': '1'} unhandled.analyzevars: charselector={'len': '6'} unhandled.append_needs: unknown need 'char'
error: Command "gcc -pthread -B /home/hakon/miniconda3/envs/kp-dev/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DSCIPY_MKL_H -DHAVE_CBLAS -I/home/hakon/kode/emsoft/EMsoftBuild/Debug/EMsoftLib -I/home/hakon/kode/emsoft/EMsoftBuild/Debug/EMsoft/EMsoftHDFLib -I/home/hakon/kode/emsoft/EMsoft_SDK/hdf5-1.10.5-Debug/include/static -I/home/hakon/kode/emsoft/EMsoft_SDK/CLFortran-0.0.1-Debug/include -I/home/hakon/kode/emsoft/EMsoft_SDK/jsonfortran-4.2.1-Debug/include -I/home/hakon/kode/emsoft/EMsoft_SDK/fftw-3.3.8/include -I/home/hakon/miniconda3/envs/kp-dev/include -I/tmp/tmpic0h8u7u/src.linux-x86_64-3.8 -I/home/hakon/miniconda3/envs/kp-dev/lib/python3.8/site-packages/numpy/core/include -I/home/hakon/miniconda3/envs/kp-dev/include/python3.8 -c /tmp/tmpic0h8u7u/src.linux-x86_64-3.8/_pyEMsoftmodule.c -o /tmp/tmpic0h8u7u/tmp/tmpic0h8u7u/src.linux-x86_64-3.8/_pyEMsoftmodule.o -MMD -MF /tmp/tmpic0h8u7u/tmp/tmpic0h8u7u/src.linux-x86_64-3.8/_pyEMsoftmodule.o.d" failed with exit status 1
```
I guess they are related to what's explained in the installation guide: https://pyemsoftreadthedocs.readthedocs.io/en/latest/Installation.html#debugging, but I have too little knowledge to tell.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.