移植StarDict到maemo平台 (1) 准备工作

参考maemo 3.0 Porting GuidePorting existing application to maemo 3.0 一节。

StarDict的源码取自Ubuntu Dapper,版本2.4.5-1.1

1. 由于要使用Hildon UI,所以可以去掉libgnomeui, libbonobo2, liborbit2。查看configure.in后发现可以使用configure的一个选项 –disable-gnome-support。修改configure.in,在加入对hildon-libs 和 libosso的检测,PKG_CHECK_MODULES(STARDICT, [gtk+-2.0 hildon-libs libosso])

2. 原来的help文件不适用于maemo,所以help目录不需要处理。修改Makefile.am,从SUBDIRS列表里删去help,还需要修改configure.in,从AC_OUTPUT列表里删去help及其子目录的Makefile

3. 执行autogen.sh,生成新的configure脚本

4. 修改debian/rules文件中调用configure脚本那一行,加上 –disable-gnome-support

5. 移去debian/control里对 libgnomeui-dev, scrollkeeper, libbonobo2-dev, liborbit2-dev 的依赖,修改Section为user/utils

6. 现在可以用dpkg-buildpackage命令编译了。

7. 为了能够正常显示英语音标等符号,还需要ttf-thryomanes字体。

stardict in maemo

18 Responses to “移植StarDict到maemo平台 (1) 准备工作”


  1. 1 kissingwolf

    上周和redhat的朋友(Yuyang)联系提到移植stardict到maemo上的事情(huzheng刚好在redhat北京),redhat的朋友询问huzheng后告知我-huzheng暂时没有移植的想法。希望你的移植可以对他有一点刺激作用!huzheng手头刚好有一台nokia n770 :-)
    有几个问题:
    1. 字典可以安装在sd卡上吗?或者可以使用“ln -s” 的方式定向到sd卡上吗?
    2. 是否支持语音读出?从截图上没有支持,是因为没有安装语音文件吗?
    3. 我下载了vmware的maeno虚拟环境,并且在FC6 里使用vmware player运行起来了,但是我不知道如何将n800的rom安装到其中,只能使用meano sdk带的那个建议环境,我在这个环境中可以使用apt-get安装osso-xterm,但是没有你在youtube上视频的那个完美。是否可以告知您是如何在其中开发的?
    谢谢。

    [Reply]

  2. 2 wolfg

    呵呵,我是跟他联系过后才准备开始的。我手上770和N800都有。
    你的问题1、2,我还都没有试过,目前还只是做一些准备工作。语音的问题恐怕只有真正跑到device上才知道。
    问题3,你说的youtube上视频是关于什么的。如果是展示中文输入法的,就是我上传的。n800的rom只能安装到device上吧?

    [Reply]

  3. 3 kissingwolf

    是youtube上的中文输入sicm的, 你是pc上vnc连n800录制吗?我以为你是在模拟器上实现的。
    请勿您的交叉编译环境在什么系统下实现的? n800上,还是Scratchbox上?

    [Reply]

  4. 4 wolfg

    哦,那段视频是我用数码相机直接录制的,比较简陋。

    交叉编译环境就是在Scratchbox上的Maemo SDK

    [Reply]

  5. 5 kissingwolf

    我scratchbox上没有软键盘,请问你的环境下有吗?如果有,请告知如何调出,谢谢!
    我对debian的包结构不是很熟悉,主要是使用fc桌面的,习惯用fcitx作为输入法,不太习惯scim,正在熟悉debian的包结构中,希望可以将fcitx迁移如maemo.
    以后免不了要多向仁兄请教了!

    [Reply]

  6. 6 wolfg

    3.0的SDK有了变化,默认没有VKB了。需要单独安装Nokia EUSA licensed binaries。安装说明INSTALL.txt里都有讲到。
    fakeroot apt-get install maemo-explicit

    fcitx好像基于xim,不是gtkimmodule,可能会有些麻烦。scim也有对fcitx的支持,不知移植scim-fcitx效果如何?

    [Reply]

  7. 7 kissingwolf

    我之前按手册试图安装maemo-explicit,发现下载依赖包的时候出现404 error ,然后再install 就报无法满足依赖关系了。因为最近在忙着上课,就没管它了。今天上maemo.org发现有新的maemo 3.1出来了,想起前面做过upgrade和update,因该是这个问题,下载了新的3.1的maemo-sdk-nokia-binaries_3.1.sh,装上后 fakeroot apt-get install maemo-explicit 就ok了,但是好像VKB没有shift和其它控制按键,可否告知如何显示shift及其它控制按键?
    我对输入法控制不是很清楚,等5。1的时候看看是否可以联系到Yuking,询问一些fcitx的细节。
    再次感谢你的回复。

    [Reply]

  8. 8 wolfg

    我用的还是3.0,VKB上有shift等控制键,不清楚会是什么原因。

    期待你在fcitx上的进展 :)

    [Reply]

  9. 9 Uraka.Lee

    问一下有ttf-thryomanes的包么?还是要自己下载字体然后安装到设备上?

    [Reply]

  10. 10 wolfg

    发布时会有ttf-thryomanes安装包的 :)

    [Reply]

  11. 11 Uraka.Lee

    Ha, but I want to use it in whitestork dictionary~

    [Reply]

  12. 12 kissingwolf

    Hi Wolfg , 五一我忙着上课没来得及搞maemo下的fcitx , 昨天晚上看到fcitx测试版升级,就下了并且在scratchbox中ARM环境下编译了,没有期待中的出错,正常编译通过!export设置XIM和其它相关的环境变量后运行起af-sb-init.sh,然后运行fcitx 可以在af-destop中看到fcitx的输入条,但是因为没有安装zh-fonts所以无法输入!
    我下载了你blog中提到的theme和字体,安装到scratchbox中,但运行fc-cache -f的时候报错--无权限!我使用fakeroot方式运行问题依旧(我fakeroot id 可以看到自己的uid为root 0 ).
    因为很少用debian的系统,对debian的fakeroot不了解,无法判断自己是在那里出错!
    是否可以给我一点建设性的意见!谢谢。

    [Reply]

  13. 13 wolfg

    SDK里不用安装那些主题和字体,直接下载firefly字体放到用户主目录下的.fonts目录里,然后执行 fakeroot fc-cache -v -f

    [Reply]

  14. 14 kissingwolf

    wolfg:
    我是fakeroot fc-cache -v -f 的方式flush了font , 但是 还是无法看到中文的字符.
    fcitx 在sdk环境中允许的时候会出现输入英文正常,中文输入框打开的时候是一条线,输入后线会拉长,应该是找不到中文字所以无法显示中文,但输入框可以正确显示( 除了需要显示中文的地方).
    我重新安装一下sdk环境试试,估计是哪里我改错了!
    一直没有时间系统的看看sdk的文档,感觉无从入手, 很多变量设置后无法生效,sdk环境和寄主环境差别还是满大的!

    [Reply]

  15. 15 lyb

    请问一下这个是完全postd到maemo平台了吗?

    [Reply]

  16. 16 jay

    请问一下
    如何才能在maemo中安装libgnomeui-dev库啊?
    我的文件需要libgnomeui-dev才能编译
    谢谢

    [Reply]

  17. 17 van_kelly

    问一下,在cygwin下,只安装sdcv可以么? 怎么安装?
    我试过编译安装,但没成功过,错误如下.
    http://www.stardict.org/forum/viewtopic.php?f=5&t=269

    [Reply]

  18. 18 zgqallen

    我现在有两个问题
    1.我现在在 fc8 装了scrachbox 和sdk可是ARM环境下无法运行af-sb-init.sh 运行看不到界面
    2.我想要把maemo界面整个环境移植到一个不是N8系列的 开发板上 不知道有没有可能
    希望楼主可以帮忙!谢谢我的QQ:409740236

    [Reply]

Leave a Reply