Closed Chilipp closed 5 years ago
hey @justinalsing, thanks for addressing the installation issues (https://github.com/openjournals/joss-reviews/issues/1157#issuecomment-459128351).
[ ] Please also include the operating systems that your software is intended for. Can it be run on Windows as well? I know that pystan has difficulties there.
[ ] Remove pip
from the installation instructions (see https://github.com/justinalsing/dlmmc/commit/7e98375770a583298d700fb150f2f6d624f81db8#r32230962)
Note: If you make changes that address this issue in a commit or PR, please include the link to this issue (https://github.com/justinalsing/dlmmc/issues/3
) in your commit message. It will be much easier to track and review the changes you implemented. Please also post a simple comment here when you are done with the suggested implementations (or if you have a different opinion).
Hi @Chilipp !
Thanks for this - I just edited the README to remove mention of pip as requested and added a note on which platforms the code runs on (Windows, Linux and Mac).
You're right there are some limitations to the functionality of pystan on Windows, but I have close collaborators who are using the code extensively on windows so these limitations don't appear to impact the use of the code. I believe the restrictions are isolated to the way pystan implements parallel processing on Windows, which is not integral to the functioning of the dlmmc code.
Thanks! Justin
hey @justinalsing! As part of the software review in https://github.com/openjournals/joss-reviews/issues/1157 I report the following bug when compiling the stan models on my mac.
As outlined in the documentation, I installed all the dependencies through pip (I don't think that openmpi is available through pip)
The last command fails with
distutils.errors.CompileError: command '/usr/bin/gcc' failed with exit status 1
``` DIAGNOSTIC(S) FROM PARSER: Warning: left-hand side variable (name=x_realization) occurs on right-hand side of assignment, causing inefficient deep copy to avoid aliasing. Warning: left-hand side variable (name=r) occurs on right-hand side of assignment, causing inefficient deep copy to avoid aliasing. Warning: left-hand side variable (name=r_realization) occurs on right-hand side of assignment, causing inefficient deep copy to avoid aliasing. Warning: left-hand side variable (name=M) occurs on right-hand side of assignment, causing inefficient deep copy to avoid aliasing. INFO:pystan:COMPILING THE C++ CODE FOR MODEL anon_model_386ef73bc045cd2ec5048e789ab86d0f NOW. Traceback (most recent call last): File "/Users/psommer/miniconda3/envs/dlmmc/lib/python3.7/distutils/unixccompiler.py", line 118, in _compile extra_postargs) File "/Users/psommer/miniconda3/envs/dlmmc/lib/python3.7/distutils/ccompiler.py", line 909, in spawn spawn(cmd, dry_run=self.dry_run) File "/Users/psommer/miniconda3/envs/dlmmc/lib/python3.7/distutils/spawn.py", line 36, in spawn _spawn_posix(cmd, search_path, dry_run=dry_run) File "/Users/psommer/miniconda3/envs/dlmmc/lib/python3.7/distutils/spawn.py", line 159, in _spawn_posix % (cmd, exit_status)) distutils.errors.DistutilsExecError: command '/usr/bin/gcc' failed with exit status 1 During handling of the above exception, another exception occurred: Traceback (most recent call last): File "compile_stan_models.py", line 5, inhere is the info on the environment:
conda info -a
``` active environment : dlmmc active env location : /Users/psommer/miniconda3/envs/dlmmc shell level : 2 user config file : /Users/psommer/.condarc populated config files : /Users/psommer/.condarc conda version : 4.5.12 conda-build version : 3.11.0 python version : 3.6.4.final.0 base environment : /Users/psommer/miniconda3 (writable) channel URLs : https://conda.anaconda.org/conda-forge/osx-64 https://conda.anaconda.org/conda-forge/noarch https://conda.anaconda.org/chilipp/label/dev/osx-64 https://conda.anaconda.org/chilipp/label/dev/noarch https://conda.anaconda.org/chilipp/label/master/osx-64 https://conda.anaconda.org/chilipp/label/master/noarch https://conda.anaconda.org/chilipp/osx-64 https://conda.anaconda.org/chilipp/noarch https://repo.anaconda.com/pkgs/main/osx-64 https://repo.anaconda.com/pkgs/main/noarch https://repo.anaconda.com/pkgs/free/osx-64 https://repo.anaconda.com/pkgs/free/noarch https://repo.anaconda.com/pkgs/r/osx-64 https://repo.anaconda.com/pkgs/r/noarch https://repo.anaconda.com/pkgs/pro/osx-64 https://repo.anaconda.com/pkgs/pro/noarch package cache : /Users/psommer/miniconda3/pkgs /Users/psommer/.conda/pkgs envs directories : /Users/psommer/miniconda3/envs /Users/psommer/.conda/envs platform : osx-64 user-agent : conda/4.5.12 requests/2.18.4 CPython/3.6.4 Darwin/17.7.0 OSX/10.13.6 UID:GID : 502:20 netrc file : None offline mode : False # conda environments: # /Users/psommer/miniconda base /Users/psommer/miniconda3 dlmmc * /Users/psommer/miniconda3/envs/dlmmc sys.version: 3.6.4 |Anaconda, Inc.| (default, Jan 16 ... sys.prefix: /Users/psommer/miniconda3 sys.executable: /Users/psommer/miniconda3/bin/python conda location: /Users/psommer/miniconda3/lib/python3.6/site-packages/conda conda-build: /Users/psommer/miniconda3/bin/conda-build conda-convert: /Users/psommer/miniconda3/bin/conda-convert conda-develop: /Users/psommer/miniconda3/bin/conda-develop conda-env: /Users/psommer/miniconda3/bin/conda-env conda-index: /Users/psommer/miniconda3/bin/conda-index conda-inspect: /Users/psommer/miniconda3/bin/conda-inspect conda-metapackage: /Users/psommer/miniconda3/bin/conda-metapackage conda-render: /Users/psommer/miniconda3/bin/conda-render conda-server: /Users/psommer/miniconda3/bin/conda-server conda-skeleton: /Users/psommer/miniconda3/bin/conda-skeleton conda-smithy: /Users/psommer/miniconda3/bin/conda-smithy conda-verify: /Users/psommer/miniconda3/bin/conda-verify user site dirs: CIO_TEST:conda list
``` # packages in environment at /Users/psommer/miniconda3/envs/dlmmc: # # Name Version Build Channel appnope 0.1.0please note that it works without issues if I use the conda packages (which I personally would recommend anyway). In other words, the following works without any issues:
I strongly recommend to move away from pip in your installation instructions or to be more explicit in how to install the necessary dependencies.