stanfordnmbl / osim-rl

Reinforcement learning environments with musculoskeletal models
http://osim-rl.stanford.edu/
MIT License
896 stars 249 forks source link

error #95

Closed gautam1858 closed 6 years ago

gautam1858 commented 6 years ago

Hi, When I try to install I am getting this error

UnsatisfiableError: The following specifications were found to be in conflict:
  - opensim -> python=2.7
  - python=3.6

I guess there is no version of opensim 3.6 for macOS. Reference https://anaconda.org/kidzik/opensim/files

spMohanty commented 6 years ago

Hi @gautam1858 ,

The 3.6 reference is for python version 3.6, and ~we do have a build for Mac osx 64~, py3.6 ( linux-64/opensim-4.0.0-py36_17.tar.bz2).

Looking at your errors, it seems that the opensim package that your conda env is picking up has been built for python2.7, and then there a python3.6 installation that you want to go through, leading to a conflict.

Can you please try with a fresh conda environment ?

conda create -n opensim-rl_gautam1858 -c kidzik opensim git python=3.6
source activate opensim-rl_gautam1858

conda install -c conda-forge lapack git
pip install git+https://github.com/stanfordnmbl/osim-rl.git

python -c "import opensim"
gautam1858 commented 6 years ago

Hi @spMohanty tried but not working, in your comment you are mentioning "linux-64/opensim-4.0.0-py36_17.tar.bz2" which is for linux but I am using macOS and if you check in this URL https://anaconda.org/kidzik/opensim/files you don't have 3.6 support version for Mac

spMohanty commented 6 years ago

Ahh, you are right ! Sorry my bad ! The py36 versions are built just for macosx64. Here is the discussion around this issue : https://github.com/stanfordnmbl/osim-rl/issues/16

We will try to release built binaries for macosx64 and py36 before the launch of the nips2018 challenge. In the meantime, please use the py27 version.

gautam1858 commented 6 years ago

@spMohanty @kidzik The Mac version of anaconda py2.7 has no no attribute 'setIntegratorAccuracy' so getting some errors, is it possible to kindle release the Mac version, tried using the staged recipes but getting some errors

kidzik commented 6 years ago

Which errors are you getting? The recipe that worked for linux should build for os x as well. There are some differences in paths but thats already taken care of in the script

gautam1858 commented 6 years ago

@kidzik this is the error

    raise AttributeError("'%s' object has no attribute '%s'" % (class_type.__name__, name))
AttributeError: 'Manager' object has no attribute 'setIntegratorAccuracy'

And if you see here https://anaconda.org/kidzik/opensim/files, there is no support for Mac version of python 3.6

kidzik commented 6 years ago

You said that you "tried using the staged recipes but getting some errors", I'm happy to help with building the package, just please let me know what errors you got. Otherwise you can either use docker and ubuntu or you can wait for the release of the mac version (we should have it in 2-3 weeks).

Yes, right now on conda there is no mac build with python 3.6 and with setIntegratorAccuracy property.

gautam1858 commented 6 years ago

Hi, so the build.sh file is `

!/bin/bash

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

mkdir opensim_dependencies_build cd opensim_dependencies_build cmake ../dependencies/ \ -DCMAKE_INSTALL_PREFIX="$PREFIX" \ -DCMAKE_BUILD_TYPE=Release make -j8 cd ..

cp -r $PREFIX/BTK/lib/btk-0.4dev/ $PREFIX/lib/ cp -r $PREFIX/simbody/libexec/simbody/ $PREFIX/bin/

mkdir opensim_build cd opensim_build cmake ../ \ -DCMAKE_INSTALL_PREFIX="$PREFIX" \ -DCMAKE_BUILD_TYPE=Release \ -DOPENSIM_DEPENDENCIES_DIR="$PREFIX" \ -DBUILD_PYTHON_WRAPPING=ON \ -DBUILD_JAVA_WRAPPING=OFF \ -DPYTHON_VERSION_MAJOR=3 \ -DPYTHON_VERSION_MINOR=6 \ -DWITH_BTK=ON make -j8 make install ` The meta.yml file

`package: name: opensim version: "4.0.0" source: git_url: https://github.com/opensim-org/opensim-core.git git_rev: 399c8d57a779dd5dde2916192f8b92bfc959e269 #beta

build: number: 12 features:

requirements: run:

`mkdir opensim_dependencies_build cd .\opensim_dependencies_build cmake ..\dependencies^ -G"Visual Studio 14 2015 Win64"^ -DCMAKE_INSTALL_PREFIX="%LIBRARY_PREFIX%" cmake --build . --config Release -- /maxcpucount:8 cd ..

mkdir opensim_build cd .\opensim_build cmake ..\^ -G"Visual Studio 14 2015 Win64"^ -DCMAKE_INSTALL_PREFIX="%LIBRARY_PREFIX%"^ -DOPENSIM_DEPENDENCIES_DIR="%LIBRARY_PREFIX%"^ -DBUILD_PYTHON_WRAPPING=ON^ -DWITH_BTK=ON cmake --build . --target install --config Release -- /maxcpucount:8

cp %LIBRARY_PREFIX%\simbody\bin\simbody-visualizer.exe %PREFIX%\simbody-visualizer.exe cd %LIBRARY_PREFIX%\sdk\python python setup.py install ` And I am getting error when I run this

kidzik commented 6 years ago

Have you tried this?

git clone https://github.com/stanfordnmbl/staged-recipes.git
cd staged-recipes/recipes/
conda build opensim --python=3.5

What errors are you getting?

gautam1858 commented 6 years ago

@kidzik

I started using linux but following are the errors that I am getting for Mac, when I try to build it

File "/Users/neutrino/anaconda3/lib/python3.6/site-packages/conda_build/cli/main_build.py", line 379, in execute verify=args.verify) File "/Users/neutrino/anaconda3/lib/python3.6/site-packages/conda_build/api.py", line 185, in build need_source_download=need_source_download, config=config, variants=variants) File "/Users/neutrino/anaconda3/lib/python3.6/site-packages/conda_build/build.py", line 1776, in build_tree notest=notest, File "/Users/neutrino/anaconda3/lib/python3.6/site-packages/conda_build/build.py", line 995, in build raise e File "/Users/neutrino/anaconda3/lib/python3.6/site-packages/conda_build/build.py", line 986, in build channel_urls=tuple(m.config.channel_urls)) File "/Users/neutrino/anaconda3/lib/python3.6/site-packages/conda_build/environ.py", line 682, in get_install_actions raise DependencyNeedsBuildingError(exc, subdir=subdir) conda_build.exceptions.DependencyNeedsBuildingError: Unsatisfiable dependencies for platform osx-64: ['freeglut']

kidzik commented 6 years ago

Thank you @gautam1858 , I'll be trying to build for OS X tonight, let me see if I run into this issue.

kidzik commented 6 years ago

I recompiled the OS X version a few days ago and it is available in conda right now.

conda create -n opensim-rl -c kidzik opensim python=3.6.1

@gautam1858 I got exactly the same error, but removing freeglut from dependencies solved it and everything else went smoothly. Thanks for reporting