ubuntu 系统中 scons 的配置文件

Configuration file for scons in an ubuntu system

我正在尝试在我的计算机上安装此工具 (ISCE) 运行 Ubuntu 14.04.

我的scons配置文件如下:

# The directory in which ISCE will be built
PRJ_SCONS_BUILD= $HOME/isce
# The directory into which ISCE will be installed
PRJ_SCONS_INSTALL= $HOME/isce
PRJ_LIB_DIR = $HOME/isce/lib
# The location of libraries, such as libstdc++, libfftw3 (for most system
# it's /usr/lib and/or /usr/local/lib/ and/or /opt/local/lib)
LIBPATH='/usr/lib/x86_64-linux-gnu/' '/usr/lib/x86_64-linux-gnu/4.8'
# The location of Python.h. If you have multiple installations of python
# make sure that it points to the right one
CPPPATH='/home/shaunak/anaconda2/envs/ISCEp35/include/python3.xm'
# The location of the fftw3.h (most likely something like /usr/include or
# /usr/local/include /opt/local/include
FORTRANPATH='/usr/include'
# The location of your Fortran compiler. If not specified it will use the system one
FORTRAN='/usr/bin/gfortran'
# The location of your C compiler. If not specified it will use the system one
CC='/usr/bin'
# The location of your C++ compiler. If not specified it will use the system one
CXX='/usr/bin'

当我尝试按照 README 的指示执行安装命令时:SCONS_CONFIG_DIR=~/isce scons -Q install 它失败并显示错误消息:

Error. Cannot locate the stdc++ library in the directories specified by LIBPATH in the SConfig file.
Exception: :
  File "/home/shaunak/isce/SConstruct", line 46:
    sconsConfigFile.setupScons(env,sconsSetupFile)
  File "/home/shaunak/isce/configuration/sconsConfigFile.py", line 384:
    retDict = setupCompilers(retDict)
  File "/home/shaunak/isce/configuration/sconsConfigFile.py", line 282:
    dict = setupLinux(dict)
  File "/home/shaunak/isce/configuration/sconsConfigFile.py", line 221:
    raise Exception

我尝试使用 locate 命令搜索每个库,所有路径似乎都是准确的。我似乎无法理解为什么编译失败。例如 locate libstcc++ 产生:

/usr/lib/gcc/x86_64-linux-gnu/4.8/libstdc++.a
/usr/lib/gcc/x86_64-linux-gnu/4.8/libstdc++.so
/usr/lib/gcc/x86_64-linux-gnu/4.8/32/libstdc++.a
/usr/lib/gcc/x86_64-linux-gnu/4.8/32/libstdc++.so
/usr/lib/gcc/x86_64-linux-gnu/4.8/32/libstdc++_pic.a
/usr/lib/gcc/x86_64-linux-gnu/4.8/x32/libstdc++.a
/usr/lib/gcc/x86_64-linux-gnu/4.8/x32/libstdc++.so
/usr/lib/gcc/x86_64-linux-gnu/4.8/x32/libstdc++_pic.a
/usr/lib/i386-linux-gnu/libstdc++.so.6
/usr/lib/i386-linux-gnu/libstdc++.so.6.0.19
/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.19

试试这个:

LIBPATH=['/usr/lib/x86_64-linux-gnu/', '/usr/lib/x86_64-linux-gnu/4.8']

回想一下,SCons 文件是 Python,Python 中的列表由 [item1, item2, ...] 表示。