软件中心出现ImportError: No module named axi错误
Tofloor
poster avatar
liumwei
deepin
2011-08-24 22:09
Author
如题,软件中心出现ImportError: No module named axi错误。该如何安装axi这个python模组?google了一大圈,找不到如何解决,呵呵
Reply Favorite View the author
All Replies
186******98
deepin
2011-10-01 00:54
#1
如题,软件中心出现ImportError: No module named axi错误。该如何安装axi这个python模组?google了一大圈,找不到如何解决,呵呵
axi 这个模块在软件包 apt-xapian-index 里面的, 默认Deepin的系统是不会有这个问题的, 其他的系统你的手动安装一下 apt-xapian-index , 但是因为LD有很多自己的包, 所以软件中心在其他系统会因为首页推荐找不到相应的LD包而无法启动。
软件中心 2.0 会公开相应的接口让其他发行版本也可以体验深度Linux软件中心。
Reply View the author
s.******[email protected]
deepin
2011-10-03 00:18
#2
sudo apt-get install apt-xapian-index
Reply View the author
liumwei
deepin
2011-10-20 08:54
#3
在ubuntu 10.04下,由http://packages.linuxdeepin.com/deepin/pool/main/d/deepin-software-center/deepin-software-center_1.1-2011.08.09_all.deb下载了安装包,安装过程中依赖性都已满足(如aria2, python-webkit, python-apt,  apt-xapian-index, aptdaemon, python-pkg-resources, gksu):

sudo apt-get install aria2 python-webkit python-apt apt-xapian-index aptdaemon python-pkg-resources gksu

正在读取软件包列表... 完成
正在分析软件包的依赖关系树      
正在读取状态信息... 完成      
aria2 已经是最新的版本了。
python-webkit 已经是最新的版本了。
python-apt 已经是最新的版本了。
apt-xapian-index 已经是最新的版本了。
aptdaemon 已经是最新的版本了。
python-pkg-resources 已经是最新的版本了。
gksu 已经是最新的版本了。

但是安装完毕后,启动程序,依旧出现这样的问题,如下:

    import repoPage
  File "/usr/share/deepin-software-center/repoPage.py", line 32, in
    import search
  File "/usr/share/deepin-software-center/search.py", line 26, in
    import axi
ImportError: No module named axi

该如何解决呢?
Reply View the author
186******98
deepin
2011-10-20 17:54
#4
11.04 的 python 版本太老了
Reply View the author
liumwei
deepin
2011-10-20 18:08
#5
现在发现出现ImportError: No module named axi错误,是由于ubuntu 10.04中的apt-xapian-index版本较低,其中不包含axi模块。将deepin-linux 11.04中的python-webkit、python-apt、apt-xapian-index、aptdaemon、python-pkg-resources中的版本和ubuntu 10.04中的版本高低进行了比较,发现deepin-software-center依赖更高版本的python-webkit、apt-xapian-index、aptdaemon和python-pkg-resources,而这些又依赖更高版本的python2.7运行环境。

尽管可以将apt-xapian-index高版本中的axi模组拷贝至ubuntu 10.04中,也可以解决ImportError: No module named axi的错误,但是又出现下面的错误:

Traceback (most recent call last):  File "./deepin-software-center.py", line 57, in
    import aptdaemon.lock as lock
ImportError: No module named lock

很显示,这是aptdaemon版本不满足的缘故。而这最终又涉及到python 2.7的升级。因此,deepin-software-center在ubuntu10.04中要解决的,是要解决10.04中的python 2.7运行环境地安装问题。

那么,如何安装python 2.7呢,在ubuntu 10.04中?能不能保证python 2.6和python 2.7的共存呢?

还有就是,能不能提供基于低版本的,如Ubuntu 10.04等的解决办法呢? deepin-software-center那个软件推荐既然是利用了webkit,那么低发行版本中的webkit为什么就不能利用呢?还有,deepin-software-center使用aptdaemon.lock来控制软件安装任务的管理,那么低发行版本同样具有的aptdaemon为什么不能利用呢?
Reply View the author
liumwei
deepin
2011-10-21 18:25
#6
在ubuntu 10.04中折腾的结果:目前得到的结果是可以将deepin-software-center运行起来,具体折腾如下:
deepinlinux软件地址
  1. deb http://packages.linuxdeepin.com natty main
  2. deb-src http://packages.linuxdeepin.com natty main
  3. deb http://packages.linuxdeepin.com natty main non-free
  4. deb-src http://packages.linuxdeepin.com natty main non-free
Copy the Code

2、安装必要的python2.7环境:

相应的包为python2.7-minimal_2.7.2-5ubuntu1_i386.deb、libtinfo5_5.9-1ubuntu5_i386.deb、python2.7-minimal_2.7.2-5ubuntu1_i386.deb,以及改造后的multiarch-support_2.13-20、libssl1.0.0_1.0.0e-2

3、安装git-core获取deepin-linux-software-center最新版本2.0源码:

git clone git://github.com/manateelazycat/deepin- ... center.git

4、进入到deepin-software-center/src源码中执行./main,捎带片刻,即可启动软件中心界面,如下:

不过,界面是可以显示正常,软件卸载功能也似乎正常,但软件安装功能不正常,不能下载和安装。会出现下面的错误:
  1. Make sure you use Linux Deepin or add deepin sourcelist.
  2. virtualbox-4.0 not in repoCache, skip it.Printing options tagged with '#help'. -h, --help[=TAG|KEYWORD]     Print usage and exit.
  3.                               The help messages are classified with tags. A tag
  4.                               starts with "#". For example, type "--help=#http"
  5.                               to get the usage for the options tagged with
  6.                               "#http". If non-tag word is given, print the usage
  7.                               for the options whose name includes that word.
  8.                               标记: #basic,#help
  9. Refer to man page for more information.
  10. Exception: [OptionParser.cc:149] Failed to parse command-line options.
  11. Add link http://packages.linuxdeepin.com/pool/main/d/deepin-software-center/deepin-software-center_1.0-1_all.deb
  12. Download error:  [Errno 111] 拒绝连接
  13. None
Copy the Code
Reply View the author
186******98
deepin
2011-10-21 20:37
#7
在ubuntu 10.04中折腾的结果:目前得到的结果是可以将deepin-software-center运行起来,具体折腾如下:
deepinlinux软件地址
  1. deb http://packages.linuxdeepin.com natty main
  2. deb-src http://packages.linuxdeepin.com natty main
  3. deb http://packages.linuxdeepin.com natty main non-free
  4. deb-src http://packages.linuxdeepin.com natty main non-free
Copy the Code

2、安装必要的python2.7环境:

相应的包为python2.7-minimal_2.7.2-5ubuntu1_i386.deb、libtinfo5_5.9-1ubuntu5_i386.deb、python2.7-minimal_2.7.2-5ubuntu1_i386.deb,以及改造后的multiarch-support_2.13-20、libssl1.0.0_1.0.0e-2

3、安装git-core获取deepin-linux-software-center最新版本2.0源码:

git clone git://github.com/manateelazycat/deepin- ... center.git

4、进入到deepin-software-center/src源码中执行./main,捎带片刻,即可启动软件中心界面,如下:

不过,界面是可以显示正常,软件卸载功能也似乎正常,但软件安装功能不正常,不能下载和安装。会出现下面的错误:
  1. Make sure you use Linux Deepin or add deepin sourcelist.
  2. virtualbox-4.0 not in repoCache, skip it.Printing options tagged with '#help'. -h, --help[=TAG|KEYWORD]     Print usage and exit.
  3.                               The help messages are classified with tags. A tag
  4.                               starts with "#". For example, type "--help=#http"
  5.                               to get the usage for the options tagged with
  6.                               "#http". If non-tag word is given, print the usage
  7.                               for the options whose name includes that word.
  8.                               标记: #basic,#help
  9. Refer to man page for more information.
  10. Exception: [OptionParser.cc:149] Failed to parse command-line option
  11. ia
  12. Add link http://packages.linuxdeepin.com/pool/main/d/deepin-software-center/deepin-software-center_1.0-1_all.deb
  13. Download error:  [Errno 111] 拒绝连接
  14. None
Copy the Code
这个是因为 aria2 的版本太老没有软件中心需要的选项, 使用新版的 aria2 会解决问题, 我开发机上的版本是 1.10.9-1
Reply View the author
liumwei
deepin
2011-10-22 19:07
#8
经过对aria2升级及其依赖性解决和安装:aria2_1.10.9-1对libgcrypt11和libgpg-error0的依赖性很关键,主要解决deepin-software-center在软件安装时的下载问题,即解决“Download error:  [Errno 111] 拒绝连接”问题,它需分别使用libgcrypt11_1.4.6-4-ubuntu2与libgpg-error0_1.10-0.2-ubuntu2。而依赖的libsqlite3-0版本,依旧保持在ubuntu 10.04中原原有的3.6.22-1。如果硬要升级到libsqlite3-0_3.7.4-2ubuntu5,deepin-software-center启动时会发现出现下面的错误:
  1. Mingwei Liu$ Traceback (most recent call last):
  2.   File "./deepin-software-center.py", line 35, in
  3.     import download
  4.   File "/home/Mingwei Liu/deepin-software-center2.0/src/download.py", line 42, in
  5.     (ARIA2_MAJOR_VERSION, ARIA2_MINOR_VERSION, _) = utils.getAria2Version()
  6.   File "/home/Mingwei Liu/deepin-software-center2.0/src/utils.py", line 369, in getAria2Version
  7.     versionList = getCommandOutputFirstLine(["aria2c", "--version"]).split().pop().split('.')
  8. IndexError: pop from empty list
Copy the Code

经过以上的折腾,软件中心已经能在ubuntu 10.04中正常的启动和运行,软件下载、安装、卸载等相关的功能也基本正常。唯一不正常的就是软件中心的评论功能,即不能切换输入法进行键盘打字,同时使用deepin-software-center进行软件安装时会出现"nohup: appending output to 'nohup.out'"的错误提示。

这些改造的软件包在这里
Reply View the author
liumwei
deepin
2011-10-22 22:00
#9
要是软件中心如果能够提供“新立得软件包管理“的切换按钮就更好了。
Reply View the author
186******98
deepin
2011-10-23 07:55
#10
那样就是不伦不类了.....
Reply View the author
liumwei
deepin
2011-10-23 08:14
#11
我觉得不能说是不伦不类吧,新立得本身的功能更高级一些,除非deepin-software-center能提供它具有的一些功能。我觉得这个按钮可以为使用高级软件包功能的人,提供方便地切入。

software-center.jpg

另外,建议根据软件界面的首页分类,将源代码web/home.html中相应代码分切到独立html页面,便于以后修改和增删相应的“编辑推荐“、“网络应用“、“影音播放“、“文字处理“等软件列表。
Reply View the author
stephen
deepin
2011-10-23 09:26
#12
我觉得不能说是不伦不类吧,新立得本身的功能更高级一些,除非deepin-software-center能提供它具有的一些功能。我觉得这个按钮可以为使用高级软件包功能的人,提供方便地切入而。

另外,建议根据软件界面的首页分类,将源代码web/home.html中相应代码分切到独立html页面,便于以后修改和增删相应的“编辑推荐“、“网络应用“、“影音播放“、“文字处理“等软件列表。

要使用高级软件包功能的人,直接启动新立德就是了,干嘛要费劲先启动软件中心,再跳到新立德去。。。
Reply View the author
186******98
deepin
2011-10-23 17:21
#13
我觉得不能说是不伦不类吧,新立得本身的功能更高级一些,除非deepin-software-center能提供它具有的一些功能。我觉得这个按钮可以为使用高级软件包功能的人,提供方便地切入。

software-center.jpg

另外,建议根据软件界面的首页分类,将源代码web/home.html中相应代码分切到独立html页面,便于以后修改和增删相应的“编辑推荐“、“网络应用“、“影音播放“、“文字处理“等软件列表。
软件中心的开发目的不是要把所有新立得的功能都包括, 而是最大化的简化管理软件的步骤, 切换新立得的按钮没有意义。

web/home.html 是实验性的代码。

BTW, 软件中心2.0还在开发中, 我不建议大家使用。
Reply View the author