0

我正在尝试使用彭博 python API。我需要为此设置 BLPAPI_ROOT 环境变量。我补充说,

export BLPAPI_ROOT="/home/user/Downloads/blpapi_cpp_3.6.3.1"
export PATH=$PATH:$BLPAPI_ROOT

到我的 .bashrc 文件并运行源 .bashrc。现在,当我打开 python shell 并执行时,

print os.environ['BLPAPI_ROOT'] 

它给了我正确的输出。但是,当它在提供的 setup.py 中运行时,它会抛出一个

Traceback (most recent call last):
  File "setup.py", line 27, in <module>
    blpapiRoot = os.environ['BLPAPI_ROOT']
  File "/usr/lib/python2.7/UserDict.py", line 23, in __getitem__
    raise KeyError(key)
KeyError: 'BLPAPI_ROOT'

我在这里想念什么?

系统:Ubuntu 12.04 Python 2.7

4

2 回答 2

1

我会尝试通过以下方式使用它:

import os
try:
    os.environ['BLPAPI_ROOT'] = "/home/user/Downloads/blpapi_cpp_3.6.3.1"
except EnvironmentError:
    sys.exit(1)
于 2013-11-26T10:35:45.203 回答
1

这已经很老了,但是对于任何搜索的人,您都可以通过设置 sudo 来保留环境变量 BLPAPI_ROOT 来解决这个问题,使用 sudo 来保留环境变量

sudo visudo

然后加:

Defaults env_keep +="BLPAPI_ROOT"

您现在可以运行:

sudo python setup.py install

它应该可以正常工作。

于 2014-07-08T17:51:41.810 回答