SConstruct: additional message for the error checking of the python 2.7 headers
authorMatteo M. Fusi <matteo.fusi@bsc.es>
Tue, 19 Jun 2018 15:28:15 +0000 (17:28 +0200)
committerMatteo M. Fusi <fusiled@gmail.com>
Fri, 22 Jun 2018 12:31:12 +0000 (12:31 +0000)
One of the most common errors during the installation of gem5 is the one
related to the failure of the check of the Python2.7 headers in the
SConstruct file. In some cases the headers are correctly installed, but a
wrong selection of the C compiler can make this check fail. This commit
wants to add some useful information this error message.

Change-Id: I0d087ad01c6e4cca3559f23070c37b5c13600962
Reviewed-on: https://gem5-review.googlesource.com/11389
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>

SConstruct

index b382d33770fabdf4d30df9d370405f6ebf9bfba1..5209aa6d447ea0eb95642c334dd25d99ef6e4003 100755 (executable)
@@ -746,9 +746,13 @@ if main['USE_PYTHON']:
 
     # verify that this stuff works
     if not conf.CheckHeader('Python.h', '<>'):
-        print("Error: can't find Python.h header in", py_includes)
-        print("Install Python headers (package python-dev on " +
-              "Ubuntu and RedHat)")
+        print("Error: Check failed for Python.h header in", py_includes)
+        print("Two possible reasons:")
+        print("1. Python headers are not installed (You can install the "
+              "package python-dev on Ubuntu and RedHat)")
+        print("2. SCons is using a wrong C compiler. This can happen if "
+              "CC has the wrong value.")
+        print("CC = %s" % main['CC'])
         Exit(1)
 
     for lib in py_libs: