2012-05-02 42 views
1

對此我發佈了另一個問題,但我讀過的所有其他問題都以一個不一定適用或解決我的問題的解決方案結束。Centx 6.2上的cx_Oracle安裝問題

我有Oracle在CentOS 6.2上運行。數據庫啓動,sqlplus連接正常。我使用Python 3.2和Oracle 11.2.0.3

我發現並安裝了包cx_Oracle-5.1.1-11g-py32-1.x86_64.rpm,沒有錯誤。

[[email protected] ~]$ ls -al /usr/lib/python3.2/site-packages 
total 360 
drwxr-xr-x. 2 root root 4096 May 2 12:04 . 
drwxr-xr-x. 3 root root 4096 Apr 13 09:31 .. 
-rw-r--r--. 1 root root 898 Oct 8 2011 cx_Oracle-5.1.1-py3.2.egg-info 
-rwxr-xr-x. 1 root root 353356 Oct 8 2011 cx_Oracle.cpython-32mu.so 
[[email protected] ~]$ 

但是,當試圖導入cx_Oracle時,我仍然得到一個導入錯誤。我檢查了PYTHONPATH,如下圖所示,而相應的目錄有:

[[email protected] ~]$ python 
Python 3.2.2 (default, Apr 13 2012, 09:15:56) 
[GCC 4.4.6 20110731 (Red Hat 4.4.6-3)] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import cx_Oracle 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ImportError: No module named cx_Oracle 
>>> import sys 
>>> print (sys.path) 
['', '/home/paws', '/usr/lib/python3.2/site-packages', '/usr/local/lib/python32.zip', '/usr/bin/Python-3.2.2/Lib', '/usr/bin/Python-3.2.2/Lib/plat-linux2', '/usr/bin/Python-3.2.2/build/lib.linux-x86_64-3.2', '/usr/local/lib/python3.2/site-packages'] 

有什麼事我可以檢查到解決這個問題?我在Windows上多次安裝了cx_Oracle,沒有問題,但這是Linux上的第一次,所以我必須錯過簡單的東西。

任何幫助非常感謝。

+0

不知道爲什麼它找不到它,但也許嘗試添加一個符號鏈接(在網站包dir:ln -s cx_Oracle.cpython-32mu.so cx_Oracle) – Gerrat

+0

不幸的是,添加的符號鏈接不似乎有任何影響。與原始帖子中的消息相同。奇怪。 –

+0

不知道它是否是一個權限的東西...嘗試>>> sudo python,然後導入cx_Oracle – Gerrat

回答

0

只是一個想法。我不知道它是否與你的version tagged files有關。

在Python提示符,你得到了什麼,當你進入:

>>>import sysconfig 
>>>sysconfig.get_config_var('SO') 

你應該得到: 'cpython-32mu.so'

如果沒有,你可以嘗試創建一個符號鏈接指向此。

+0

我嘗試了上面的陳述,並且獲得了「.cpython-32mu.so」(注意前導點)。這是一個問題還是你的帖子錯過了? –

+0

對不起......我錯過了在我的文章(應該有領先點)。 – Gerrat