2012-03-09 18 views
2

在我的zope2.9.6從gentoo發行版遷移到cento5版本後,我編譯了一個用於運行zope的特定python版本(python-2.4.6),當我運行 /opt/instances/zope-2.9.6/bin/runzopeUserWarning:libxml2不可用

我得到以下警告

/opt/instances/zope-2.9.6/Products/Marshall/handlers/ 初始化的.py: 38:UserWarning:libxml2不可用。 「不可用的libxml2無法根據登記的libxml2」無法註冊的libxml2基於marshallers warnings.warn(\

我怎樣才能解決這個問題

回答

2

這是一個警告,而不是錯誤。事實上,在後來的Plone版本中,它被降級爲「信息」消息。

除非您需要將Marshall用於基於XML的導入或導出Plone數據,否則您可以 - 也應該 - 忽略此消息。

Marshall是唯一一個使用舊的python-libxml庫的Plone組件(在更新版本的Plone中,它是一個可選的附加組件)。而且,它僅將其用於XML導入/導出。我知道人們使用這些組件的唯一受歡迎的用途是用於變換器出口導入管道。除非你正在做這樣的事情,否則就可以放心,這是沒有任何問題的。

1

首先,你應該安裝這些系統的軟件包:

sudo apt-get install libxml2-dev python-lxml python-libxml2 

,然後你就需要重新編譯你的Python,以便讓它知道新的軟件包 如果您使用的是擴建你也可以試試這個:

[buildout] 
parts += 
    ... 
    lxml 
eggs += 
    ... 
    lxml == 2.1.2 

[lxml] 
recipe=plone.recipe.lxml 
egg = lxml == 2.1.2 
+0

這是我遵循的步驟: – 2012-03-09 14:52:18

+2

這是我遵循的步驟: 百勝安裝的libxml2的libxml2-devel的libxml2的 - 蟒蛇蟒蛇-LXML CD /root/tmp/Python-2.4.6 的./configure --prefix = /選擇/蟒蛇-2.4.6 使 make install的 我還安裝了我的Zope安裝和其他Python庫的 /opt/instances/zope-2.9.6/bin/runzope 得到同樣的警告 /opt/instances/zope-2.9.6/Products/Marshall/handlers/__init__.py:38:UserWarning:libxml2不可用。無法註冊基於libxml2的marshallers warnings.warn('libxml2 not available。Unable to register libxml2 based'\ – 2012-03-09 14:59:58