LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: health_kxy

scim-setup : undefined symbol: _Py_ZeroStruct

[复制链接]
发表于 2008-8-2 11:08:56 | 显示全部楼层
我知道了,是 scim-python 的问题。具体原因不知道,将 scim-python 卸掉后,是可以打开 scim-setup 窗口的。
回复 支持 反对

使用道具 举报

发表于 2008-8-2 12:54:36 | 显示全部楼层
Post by LiYanrui;1881531
我知道了,是 scim-python 的问题。具体原因不知道,将 scim-python 卸掉后,是可以打开 scim-setup 窗口的。


呵呵,这个问题已经好久了,还是没有解决……
的确是scim-python的问题啊,可是我就要用scim-python撒,呵呵,觉得比SCIM-PINYIN好用。嗯,所幸只是不能设置,使用还是没问题,就先继续凑合着用吧,哈哈。
回复 支持 反对

使用道具 举报

发表于 2008-8-3 20:03:10 | 显示全部楼层
请问大家你们都是什么系统?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-8-3 21:04:26 | 显示全部楼层
Post by shawn.p.huang;1882133
请问大家你们都是什么系统?


你在gentoo讨论区,你说呢?^_^
回复 支持 反对

使用道具 举报

发表于 2008-8-3 21:09:48 | 显示全部楼层
Post by health_kxy;1882153
你在gentoo讨论区,你说呢?^_^


这个帖子的连接是我给他的。

诸位兄弟可以帮忙测一测,找出问题所在吧,详见 http://code.google.com/p/scim-python/issues/detail?id=130
回复 支持 反对

使用道具 举报

发表于 2008-8-4 11:12:00 | 显示全部楼层
我记得原来(不知是多久以前)没有这个问题……
回复 支持 反对

使用道具 举报

发表于 2008-8-4 15:18:59 | 显示全部楼层
我发现问题的原因了,你们查看以下scim的版本,如果是1.4.7-r1,里面添加了一个patch,此patch会使用libtool里的dlopen函数,导致这个问题。
解决办法:
1.使用scim-1.4.7 代替scim-1.4.7-r1
2.或者,降低libtool的版本。

应为我没有gentoo的环境,所以没有对解决办法进行测试。你们测试有结果了,请通知我。 谢谢。
回复 支持 反对

使用道具 举报

发表于 2008-8-4 15:32:45 | 显示全部楼层
Post by shawn.p.huang;1882394
我发现问题的原因了,你们查看以下scim的版本,如果是1.4.7-r1,里面添加了一个patch,此patch会使用libtool里的dlopen函数,导致这个问题。
解决办法:
1.使用scim-1.4.7 代替scim-1.4.7-r1
2.或者,降低libtool的版本。

应为我没有gentoo的环境,所以没有对解决办法进行测试。你们测试有结果了,请通知我。 谢谢。

我刚才mask了scim-1.4.7-r1,降级安装scim-1.4.7,结果编译失败……
错误信息如下:
  1. ltdl.cpp: In function ‘void* scim::rpl_memcpy(void*, const void*, size_t)’:
  2. ltdl.cpp:384: 错误:‘void *’型指针用在了算术表达式中
  3. ltdl.cpp:384: 错误:‘void*’不是一个指向对象的类型
  4. ltdl.cpp:384: 错误:‘void *’型指针用在了算术表达式中
  5. ltdl.cpp:384: 错误:‘const void*’不是一个指向对象的类型
  6. ltdl.cpp: At global scope:
  7. ltdl.cpp:825: 错误:‘LTDL_OBJDIR’在此作用域中尚未声明
  8. ltdl.cpp:2070: 错误:expected initializer before ‘*’ token
  9. ltdl.cpp: In function ‘int scim::tryall_dlopen_module(scim::lt_dlhandle_struct**, const char*, const char*, const char*)’:
  10. ltdl.cpp:2401: 错误:‘sprintf’在此作用域中尚未声明
  11. ltdl.cpp: In function ‘int scim::find_file_callback(char*, void*, void*)’:
  12. ltdl.cpp:2646: 错误:‘FILE’在此作用域中尚未声明
  13. ltdl.cpp:2646: 错误:‘pfile’在此作用域中尚未声明
  14. ltdl.cpp:2646: 错误:expected primary-expression before ‘)’ token
  15. ltdl.cpp:2646: 错误:expected `;' before ‘data2’
  16. ltdl.cpp:2653: 错误:‘fopen’在此作用域中尚未声明
  17. ltdl.cpp:2655: 错误:从类型‘const char*’到类型‘char*’的转换无效
  18. ltdl.cpp: At global scope:
  19. ltdl.cpp:2668: 错误:expected initializer before ‘*’ token
  20. ltdl.cpp: In function ‘int scim::try_dlopen(scim::lt_dlhandle_struct**, const char*)’:
  21. ltdl.cpp:3002: 错误:从类型‘const char*’到类型‘char*’的转换无效
  22. ltdl.cpp:3029: 错误:‘FILE’在此作用域中尚未声明
  23. ltdl.cpp:3029: 错误:‘file’在此作用域中尚未声明
  24. ltdl.cpp:3055: 错误:‘isalnum’在此作用域中尚未声明
  25. ltdl.cpp:3078: 错误:‘find_file’在此作用域中尚未声明
  26. ltdl.cpp:3085: 错误:‘find_file’在此作用域中尚未声明
  27. ltdl.cpp:3105: 错误:‘fopen’在此作用域中尚未声明
  28. ltdl.cpp:3121: 错误:‘fclose’在此作用域中尚未声明
  29. ltdl.cpp:3127: 错误:‘feof’在此作用域中尚未声明
  30. ltdl.cpp:3129: 错误:‘fgets’在此作用域中尚未声明
  31. ltdl.cpp:3139: 错误:‘fgets’在此作用域中尚未声明
  32. ltdl.cpp:3197: 错误:从类型‘const char*’到类型‘char*’的转换无效
  33. ltdl.cpp:3213: 错误:‘fclose’在此作用域中尚未声明
  34. ltdl.cpp: In function ‘scim::lt_dlhandle_struct* scim::lt_dlopenext(const char*)’:
  35. ltdl.cpp:3375: 错误:从类型‘const char*’到类型‘char*’的转换无效
  36. make[2]: *** [ltdl.lo] 错误 1
  37. make[2]: *** 正在等待未完成的任务....
  38. * Messages for package app-i18n/scim-1.4.7:
  39. * ERROR: app-i18n/scim-1.4.7 failed.
  40. * Call stack:
  41. *               ebuild.sh, line   49:  Called src_compile
  42. *             environment, line 2911:  Called die
  43. * The specific snippet of code:
  44. *       emake || die
  45. *  The die message:
  46. *   (no error message)
  47. * If you need support, post the topmost build error, and the call stack if relevant.
  48. * A complete build log is located at '/var/tmp/portage/app-i18n/scim-1.4.7/temp/build.log'.
  49. * The ebuild environment file is located at '/var/tmp/portage/app-i18n/scim-1.4.7/temp/environment'.
复制代码
回复 支持 反对

使用道具 举报

发表于 2008-8-4 15:34:52 | 显示全部楼层
Post by clinif;1882400
我刚才mask了scim-1.4.7-r1,降级安装scim-1.4.7,结果编译失败……

吧错误的输出贴上来看看。
试试把libtool同时降级到libtool-1.5.26,再编译试试。
回复 支持 反对

使用道具 举报

发表于 2008-8-4 15:36:26 | 显示全部楼层
/var/tmp/portage/app-i18n/scim-1.4.7/temp/build.log
这个文件有什么内容么?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表