WindRiver是一个用于嵌入式开发的软件。
0、 安装windRiver需要注意的地方:
选择永久激活,密钥就是安装包中的install.txt加载选择这个目录即可。安装过后,
将你安装包中的vlxollzs文件夹中的【zwrsLicense.lic】复制
替换掉你当才安装的文件中license中的【zwrsLicense.lic】
[总之,就是将许可证换掉]

1、 如何使用WindRiver?
File->new->Boot loader/BSP prohject(开发使用)
Kernel Module Project (一般情况下会使用这个) ->…->Build Specs选择
Image Project (镜像)
PPC603gnu->……

2、

  1. 对于使用现有的头文件或者cpp文件,可以将文件夹拷贝到相应的WorkSpace中,然后将项目刷新就可以了。
  2. 在项目中需要自建c++的时候:file->new->file->xxx.cpp(需要有后缀)
  3. 对于想要查看别人的项目:file->Switch workspace->… 这样就可以将项目全都加载进来。

3、 在开发过程中,我们会经常有这样的思想就是:将项目生成动态链接库(.out)或者静态链接库(.a)。这样做的好处就是另外一个项目可以使用这个项目中功能,并且只需要在属性配置中添加头文件路径和动态、静态链接库。

4、 有两个项目:TestLib 和 LibTest
TestLib项目使用了已有的fp8000.a(接口部分的内容),在项目中加入了无忧网相关的代码,生成了TestLib.a(生成静态库,肯定是要设置一下,在创建项目的时候,Build tool可以根据自己的需求,选择 Linker或者 Librarian)。
在TestLib中属性配置是:
Build Support and Specs:选择PPC603gnu
Build Tools:C-Compiler suffixes:*c
Build Paths: -I$(PRJ_ROOT_DIR)/include(添加头文件,没有空格,但是自己也可以Add绝对路径)
Libraeies:-L $(….)/fp8000.a (添加库的路径,有空格,可以Add绝对路径)

LibTest项目中使用TestLib.a(TestLib.a中含有fp8000.a)。在这个项目中使用了DemoTest.cpp
关于属性配置:
Build Support and Specs:选择PPC603gnu
Build Tools:C-Compiler suffixes:c,.cpp 在Tool Flags中额外添加
【-mlongcall】
Build Paths: -I ( P R J R O O T D I R ) / i n c l u d e ( 添 加 头 文 件 , 没 有 空 格 , 但 是 自 己 也 可 以 A d d 绝 对 路 径 , 如 果 是 绝 对 路 径 不 需 要 加 (PRJ_ROOT_DIR)/include(添加头文件,没有空格,但是自己也可以Add绝对路径,如果是绝对路径不需要加 (PRJR​OOTD​IR)/include(添加头文件,没有空格,但是自己也可以Add绝对路径,如果是绝对路径不需要加,例如: -IC:/usr/……)
Libraeies:-L $(….)/fp8000.a (添加库的路径,有空格,可以Add绝对路径)
-L $(….)/fTestLib.a (添加库的路径,有空格,可以Add绝对路径)
其实_L $去掉也没有关系,从C盘根目录开始即可。

5、 vworks中可以连接硬件设备
左下方,remote Systems,有一个符号可以选择添加硬件设备。

在将FC软总线 项目移植时出现的问题:
1、 在使用到fp8000.a静态库时,当时出现的问题是:不管如何添加头文件,接口中的函数就是不能识别,最后发现windows上使用的静态库 与 windRiver上使用的静态库 中的函数名不一致,最后需要修改函数名。Fp8000.a中内容可以使用记事本打开。
2、 在Vxworks系统中,不能识别Sleep(10),需要定义VxSleep(10);
void VxSleep(int milisec)
{
#ifdef _WIN32
Sleep(milisec);
#else
struct timespec tv;
tv.tv_sec = milisec / 1000;
tv.tv_nsec = (milisec % 1000) * 1000000;

nanosleep(&tv, NULL);

#endif
}
3、 PPC603diab、PPC603gnu diab和gnu只是两个不同的编译器 一般情况下会选择gnu
4、 Windows中生成动态链接库,需要加__declspec(dllexport)这些,但是在vxworks系统中需要删除这些,不然接口函数就会发生错误。
在vxworks系统中,创建项目的时候就需要选择Linker、Librarian
5、 在vxworks系统中:xxx.a 静态库 xxx.o 动态库 xxx.out可执行文件
6、 在vxworks系统中#include<pciConfigLib.h>需要修改为#include<drv/pci/pciConfigLib.h>
7、 【出现的错误:】error:stray’\357’in program
Error:stray’\273’in program
Error:stray’\277’in program
【原因:】有些字符编译器不支持
【解决方法:】把文件放到windows系统中,用“记事本”打开这些文件,然后另存为,编码选择(ASNI),然后再重新拷贝回来,重新编译。
8、【入口函数】在vs中,入口函数是main()
但是在windriver的vxworks系统中,每一个函数都是同等的,都可以是入口函数。

关于WindRriver相关推荐

最新文章

  1. Windows10下安装Anaconda3(附带python3.7.9)+Tensorflow2.0.0+Pycharm
  2. 《Android传感器开发与智能设备案例实战》——第2章,第2.4节安装ADT
  3. beforeRouteEnter,beforeRouteLeave函数
  4. LeetCode 2069. 模拟行走机器人 II(模拟)
  5. 201671010128 2017-09-24《Java程序设计》之继承
  6. python串口数据绘图_使用Python串口实时显示数据并绘图的例子
  7. php 快速排序函数,PHP实现快速排序算法的三种方法
  8. Scalable Web Architectures: Common Patterns and Approaches
  9. matlab中garchred是什么意思,MATLAB里的aic是啥意思
  10. C语言求素数中flag的作用,c语言编程判断素数 c语言程序设计(判断素数)
  11. Ms08067攻防训练平台内测-100个免费邀请码
  12. SketchUp:SketchUp草图大师经典案例之实现柜子、书桌等设计
  13. Eviews10 如何将季度数据转为月度数据(低频转高频)
  14. c语言:输入三角形的边长求面积
  15. glassfish4 linux,CentOS 6.5上安装GlassFish4.0 过程笔记
  16. html的注释是什么意思,注释是什么意思?
  17. 报错:CMake Error at /usr/share/cmake-3.10/Modules/CMakeDetermineCCompiler.cmake:48 (message):
  18. 【CloudShell】阿里云壳EDR卸载指南
  19. 一份Yann LeCun等16个顶级数据科学家给新人的建议
  20. Ubuntu 之 Audacity踩坑之旅

热门文章

  1. matlab读mif文件,利用matlab进行ROM初始化mif文件方法
  2. 律师点评——员工因“对公司的赞美不合格”被淘汰
  3. ES系列:停用集群中的节点
  4. Android自定义view心电图,如何用PS做心电图,PS做心电图操作过程详解
  5. 数据清洗常用工具之Numpy
  6. python JS混淆解压缩
  7. Springboot毕设项目杭州亚运会志愿者管理系统8mozv(java+VUE+Mybatis+Maven+Mysql)
  8. canny算子实现——matlab
  9. 可观测性的三大支柱:Metrics、Trace、Log
  10. NP问题、NP难问题(NPH)和NP完全问题(NPC)理解