Symbian环境搭建,高版本ActivePerl兼容性解决方案(5.10.0)

来源:互联网 发布:数据库物理设计问题 编辑:程序博客网 时间:2024/06/06 05:17

最近要搭建一个定制的Symbian的开发环境,由于License的原因很多东西受到限制。所以拿到的Carbide是Nokia提供的2.1绿色版本:)(第一次用到),Activeperl也是,需要自己执行一个BAT来设定环境变量。这样就由不得我们自己去下载传统的ActivePerl-5.6.1.635或者ActivePerl-5.6.1.638,然后非常顺理成章的事情发生了。我拿到的Perl的版本是5.10.0。编译错误也随之而来了。

两个错误:

 

第一个 #include "***_0x********.hlp.hrh" 貌似找不到头文件

第二个 KGeneral_Information 没有定义

 

简单的说都是和Help的编译有关的问题,无从下手。有人说尝试把Help相关的东西都注释掉,我注释掉了还有诡异的错误,不得而解。再说即使注释掉了难道以后的程序就不能有Help了??后来历经千辛万苦,终于找到了这个一劳永逸的办法,这个是在forum.nokia.com的一个犄角旮旯里面找到的说明,那就是要修改掉Epoc32/tools/perllib下面的一些*.pm的文件,这些文件和高版本的Perl是不兼容的。想来这种问题如果不是他们自己发现,很难有第三方的开发人员可以洞察!具体的解决方案在http://wiki.forum.nokia.com/index.php/KIS001302_-_Compiling_context-sensitive_help_fails_with_latest_version_of_Perl这个链接这里。这个文档说了方案, 比如修改args.pm的部分代码,后面一个params.pm则说的非常含糊,不过好在最后有一个链接,点击这里就可以拿到一个文件的zip包,用来整体替换Epoc32/tools/perllib下面的问题件就okay了。这种类型的错误充分体现了Nokia工作的不严谨性:)余是以记之。