jakeret / hope

HOPE: A Python Just-In-Time compiler for astrophysical computations
GNU General Public License v3.0
382 stars 27 forks source link

hope.exceptions.UnsupportedCompilerException: Compiler 'gcc' with version '4.2.1' is not supported. Minimum version is '4.7.0' #4

Closed curioustolearn closed 9 years ago

curioustolearn commented 9 years ago

When I just tried to import hope (without actually using any function), I got the following error. What is the fix for this? Thank you.

Traceback (most recent call last): File "testHope.py", line 2, in import hope File "/Users/username/anaconda/lib/python2.7/site-packages/hope/init.py", line 11, in from hope import config File "/Users/username/anaconda/lib/python2.7/site-packages/hope/config.py", line 9, in cxxflags = get_cxxflags() File "/Users/username/anaconda/lib/python2.7/site-packages/hope/options.py", line 67, in get_cxxflags _check_version(compiler_name, compiler.compiler[0]) File "/Users/username/anaconda/lib/python2.7/site-packages/hope/options.py", line 83, in _check_version SUPPORTED_VERSIONS[compiler_name])) hope.exceptions.UnsupportedCompilerException: Compiler 'gcc' with version '4.2.1' is not supported. Minimum version is '4.7.0'

benmoran56 commented 9 years ago

I think the last two lines say it all.

iankronquist commented 9 years ago

@curioustolearn What OS are you using? I can try to help you upgrade your gcc.

curioustolearn commented 9 years ago

@iankronquist Thank you for responding. I am on OS X 10.9.4.

iankronquist commented 9 years ago

@curioustolearn My guess is that OS X 10.9 advertises its compiler as gcc 4.2.1, but it's really using clang. One possible way to fix this is to install a real copy of GCC using homebrew.

cosmo-ethz commented 9 years ago

@curioustolearn We require gcc 4.7 as before the -std=c++11 argument was not supported. I’m also on OS X 10.9 and I use clang as compiler.

As @iankronquist mentioned, installing a proper version of a compiler could help. (I don’t want to start a dependency mgr flame war but in our team we are all using https://www.macports.org/ .)

curioustolearn commented 9 years ago

@iankronquist and @cosmo-ethz Thank you. I installed gcc 4.8 using homebrew (before I saw your messages of gcc 4.7, assuming gcc 4.7 was the minimum). I get exactly the same error as the one I posted above. What I don't know is how to get hope to use this newly installed gcc.

cosmo-ethz commented 9 years ago

@curioustolearn i just saw that you’re running on anaconda. I’m not sure if this could have an impact (I’ve never used anaconda so far). Could you try to set the CC and CXX environment variables so that they both point to your newly installed gcc binary?

cosmo-ethz commented 9 years ago

@curioustolearn I just pushed a new branch where I tried to fix your issue: https://github.com/cosmo-ethz/hope/tree/relaxed_version_check

cosmo-ethz commented 9 years ago

Changed the version check in case of gcc proxied clang. Should be fixed with the latest merge.