原来是gcc编译的工程,完成后被要求添加第三方库,但是第三方只提供arm5的库,不肯提供gcc的。

下载RVCT22,CSDN提供很多免费版的,然后按照下面文章设置就可以了,第一篇就够了,第二篇没用。

转载自:http://hi.baidu.com/71167609/blog/item/959b193ded7d51d69e3d6233.html

Carbide C++使用ARM编译器编译

2010-12-08 15:25

使用Carbide C++开发Symbian平台上的应用时,编译到真机上一般使用GCCE编译器,因为Carbide C++自带了GCCE编译器。Carbide C++的编译选项中也提供了ARMV5选项,如果直接选择这个选项来编译真机程序,会失败,因为Carbide C++本身没有带RVCT编译器。RVCT是Symbian平台的收费编译器,生成的文件,相对于免费的GCCE,性能更优,体积更小,对代码的检查也更严格。但是RVCT价格也很昂贵,普通开发者一般难以承受。网上流传有RVCT编译器的破解版本,但是使用要小心,如果使用破解版,再去使用快速签名,可能会带来官司。

使用破解版RVCT编译器的步骤如下:

1 下载RVCT的破解包。

2 使用破解包中自带的patch程序patchRVCT目录下的所有exe。

3 运行keygen.exe,生成license.dat。

4 设置两个环境变量:

LM_LICENSE_FILE 变量值是license.dat的完整路径(注意是完整的包含路径的文件名,不是目录)。

PATH中添加RVCT根目录。

5 在命令行中运行armcc --vsn就可以了,这个时候就可以在Carbide中选择ARMV5编译了。

常见问题:

1 提示RVCT0_0.h No such file or directory。一般是因为工程没有重新导入,添加了RVCT编译器后,需要重新import 工程文件。

2 重新导入后,还是报错,这个时候,需要Clean一下(首先需要在Carbide C++-》Prefernces->Carbide C++->Build->SBSV1中把Clean Level设置成Level 2)。

基于RVCT编译器的symbian平台搭建(完成版)

分类: Symbian Symbian 2010-04-09 09:18 1257人阅读 评论(0) 收藏 举报

基于RVCT编译器的symbian平台搭建(完成版)

rvct是symbian平台的收费编译器,相比于免费的gcce,性能更优,而且生成的文件小的多。 rvct价格昂贵最低也要五六万,所以开发成本有限的小公司只能选择破解。 但请注意,如果你的软件要发布,要express signed,最好别用破解的rvct,否则小心吃官司。

下面就是破解rvct的全部步骤

一.rvct编译器

1.下载crack包

2. patch 当前目录下的所有的exe(注意这里patch.exe右键属性里把兼容性设置为"用兼容模式运行win98",才能一个个选择文件.

3.运行keygen.exe,生成license.dat,注意电脑当前时间要准确,不然license可能出错

4.设置两个环境变量

LM_LICENSE_FILE   变量值为rvct2.2的license的路径。

PATH  值为rvct2.2根目录

5. 在命令行模式运行armcc --vsn 就OK了。这里可能会碰到错误信息“ Cannot obtain license for Compiler (feature compiler) with license version >= 2.2”, 解决办法是重新patch,重新生成license.dat。若还不行,就是你电脑有“未来”的文件,比如当前时间是2008.12.31,而硬盘里能找出很多2009年的文件,也会导致license出错。可用touchpro批量改时间戳,改完再重新生成license。

carbide命令行编译工程:

cd group bldmake bldfiles abld build armv5 urel makesis yourproject.pkg signsis yourproject.sis yourproject.sisx **.cer **.pem 后面2个是钥匙。

3. rvct命令行可运行,在carbide v1.3却始终不行,以为是日期超前或carbide版本不对,折腾了一天多,回头翻“ARMV5 build targets”文档点击进入,找到了原因,rvct 2.2 build 435只支持到symbian os v9.2,v9.3需要rvct2.2 build 559, 所以只能在symbian v9.1用破解的rvct,因为总不可能要arm技术人员帮你升级吧...

二.s60下调试程序

5.armv5下编译生成的lib应该在epoc32/release/armv5/lib,而现在都生成在epoc32/release/armv5/udeb里。   解决方法: testlive555.mmp里LIBRARY      groupsock.lib改成STATICLIBRARY      groupsock.lib, 即可解决

6. 无法生成usageenvironment.lib, 解决办法:头文件冲突,groupsock.mmp里去掉SYSTEMINCLUDE          /epoc32/include/libc/sys

7. ctime,EAGAIN未定义,而mmp里确实有include,解决办法:可能是头文件冲突,把SYSTEMINCLUDE    /epoc32/include/stdapis移到最前面,问题解决。

8. live555库已经调通了,mpeg4解码库还剩几个问题,原因应该是不同编译器宏定义不一样

9. 当一个工程.c和.cpp文件混在一起时容易出问题。rvct用c++规则编译c程序导致很多问题,统一都用cpp后 编译通过.

10.mpeg4解码库编译没错却没有生成lib,解决办法: mmp尾部加上

#ifdef ENABLE_ABIV2_MODE   DEBUGGABLE   #endif

至此程序在s60 SDK下已经调通并生成sis,下面要用移植到UIQ 3.0 SDK上

三.uiq3.0下调试程序

对于不同平台和SDK之间程序移植所出现的错误,大体分为五种,没什么复杂的属体力活。

1. mmp中没有包含SYMSTEMINCLUDE

2. mmp中SYMSTEMINCLUDE顺序不对,造成冲突

3. 引起头文件重复,造成冲突

4. 指定路径下不存在该头文件

5. 头文件中不存在你要的函数声明,从别的地方拷过来

(转载)symbian使用arm5编译器相关推荐

  1. [MATLAB][转载]MATLAB2018b的VS2017编译器配置

    MATLAB2018b和VS2017的混编 matlab下mex -setup命令选择VS编译器 matlab下mex -setup命令选择VS编译器 前提你已安装了matlab和visual stu ...

  2. powerpc linux交叉编译器,[转载]搭建PowerPC交叉编译器 二

    第三部分 搭建过程 3.1 创建过程概述 这个GUN工具链的创建过程可以分为5步 Step 1:安装基于PowerPC的linux头文件: 备注:创建头文件是编译库文件所必须的,这一步只要在创建gli ...

  3. 方舟编译器学习笔记分类与导读

    方舟学习笔记系列,从方舟开源到现在,已经写了50多篇,保证了每天一篇的更新频率.篇数增加之后,文章的分类以及文章之间的关系,逐渐变得复杂起来.本文将对已发表的学习笔记系列进行分类和导读,方便读者更好的 ...

  4. ASP错误代码中文说明大全:

    ASP错误代码中文说明大全: ASP 错误代码 中文描述 ASP 0100 内存不足 ASP 0101 意外错误 ASP 0102 需要字符串输入 ASP 0103 需要数字输入 ASP 0104 不 ...

  5. 一本你必须知道的.net

    <你必须知道的.NET> 作者简介:王涛 微软C# MVP,高级软件工程师,机械工程硕士,主要研究方向为.NET底层架构和企业级系统应 用.现就职于某软件公司负责架构设计.软件开发和项目管 ...

  6. Symbian s60入门(转载)

    Symbian s60入门 转载自 http://dev.csdn.net/htmls/62/62134.html   摘要: Symbian OS 是目前市场占有率最高的移动设备 OS .本文是 S ...

  7. 如何升级Symbian Carbide C++的GCC编译器版本

    参考资料: How to use GCCE 4 with Symbian SDKs Carbide C++的编译器 在Symbian开发工程中,Carbide C++是非常好用的开发工具,目前提供GC ...

  8. (转载)(官方)UE4--图像编程----着色器开发----HLSL 交叉编译器

    HLSL 交叉编译器 这个库将 高级着色语言 (HLSL) 着色器源代码编译成高级中间表示法,执行独立于设备的优化,并生成 OpenGL 着色语言 (GLSL) 兼容源代码.这个库在很大程度上基于 M ...

  9. symbian学习转载

    [虎.无名]学习Blog 诺盛电信咨询:移动支付是什么- -| 回首页 | 2006年索引 | - -Nokia 6681菜鸟必修课 zt 腾达智能社区:Symbian基础类知识- - http:// ...

最新文章

  1. Oracle 11g安装
  2. UNITY C#内存泄漏
  3. yenv - 一个使用 JAML 文件管理环境的 Node.js 工具
  4. LinkCutTree 总结
  5. 分部方法 partial
  6. 自定义scoll样式
  7. Python获取硬件信息(硬盘序列号,CPU序列号)
  8. 使用C#发送Http 请求实现模拟登陆(以博客园为例)
  9. k8s—centos7安装部署NFS服务器和客户端及基于nfs的动态存储storageclass使用总结
  10. Eclipse配置国内镜像源
  11. 载波聚合或双连接的方式进行_首发天玑1000+!iQOO Z1来了:5G+5G双卡双待、双WiFi 6...
  12. Linux学习-账号管理
  13. Matlab的对角阵、三角阵,矩阵变换:矩阵的转置、旋转、翻转、求逆、方阵的行列式、矩阵的秩求解
  14. table表格实现第一列固定
  15. POJ-3376 Finding Palindromes
  16. YOLOv5的项目实践 | 手势识别项目落地全过程(附源码)
  17. 计算机视觉、图像处理学习资料汇总(转)
  18. 【C++实战 】标准库
  19. 计算机应用基础18秋在线作业2奥鹏,奥鹏15春北航《计算机应用基础》在线作业2答案...
  20. 设计模式--模板方法模式(照旧,有类关系图)

热门文章

  1. GPU--图形处理器
  2. Java MVC模式和三层架构
  3. ARM:NVIC VIC GIC SCB
  4. lisp图库不显示缩略图_[原创]在未安装过任何CAD版本的系统中,也能查看dwg文件的缩略图!...
  5. 基于阿里云服务器的Qt SDK配置
  6. 学习MySQL必须了解的13个关键字,你get了吗?
  7. jdk1.8-64下载
  8. SSM宠物领养系统毕业设计源码031654
  9. 鲁棒优化入门(三)——鲁棒优化工具箱RSOME快速上手与应用实例
  10. 机器人与matlab—Robotics Toolbox—01空间位姿描述