错误:无法找到Oracle软件安装

时间:2014-07-22 15:09:31

标签: python oracle plone buildout cx-oracle

我正在研究Plone。

PRELUDE

我已安装:

甲骨文instantclient12.1碱性-12.1.0.1.0-1.x86_64.rpm 甲骨文instantclient12.1-devel的-12.1.0.1.0-1.x86_64.rpm 甲骨文instantclient12.1-SQLPLUS-12.1.0.1.0-1.x86_64.rpm

还有cx_Oracle。 我已经对安装进行了测试,结果一切正常:db连接成功。

echo $ORACLE_HOME
/usr/lib/oracle/12.1/client64
echo $TNS_ADMIN
/usr/lib/oracle/12.1/client64/admin
echo $LD_LIBRARY_PATH
/usr/lib/oracle/12.1/client64/lib

问题

我已经编辑了buildout.cfg,如下所示:

[...]
eggs =
    Plone
    Pillow
    collective.documentviewer
    Products.OpenXml
    Products.AROfficeTransforms
    tus
    wildcard.foldercontents==2.0a7
    **cx_Oracle**
[...]

我收到此错误:

Unused options for buildout: 'environment-vars'.
Installing instance.
Getting distribution for 'cx-Oracle'.
error: cannot locate an Oracle software installation
An error occurred when trying to install cx-Oracle 5.1.3. Look above this message for any errors that were output by easy_install.
While:
  Installing instance.
  Getting distribution for 'cx-Oracle'.
Error: Couldn't install: cx-Oracle 5.1.3

我不知道如何解决这个问题。

"找不到Oracle软件安装"如何解决这个问题?

2 个答案:

答案 0 :(得分:11)

遇到同样的问题,背景是:

echo $ORACLE_HOME
/usr/lib/oracle/12.1/client64

但:     sudo env | grep ORACLE_HOME

什么都不产生。

解决方案:

sudo visudo

然后添加以下行:

Defaults env_keep += "ORACLE_HOME"

找到here

答案 1 :(得分:1)

您必须确保为运行Plone实例的用户设置了正确的envvars。

最好的方法是在buildout配置中添加这些变量::

[buildout]
...

[instance]
...

environment-vars =
    ...
    LD_LIBRARY_PATH /usr/lib/oracle/10.2.0.3/client64/lib
    ORACLE_HOME /usr/lib/oracle/10.2.0.3/client64

(这是我在CentOS上的安装)