社区
VxWorks
帖子详情
Vxworks下静态库编译错误
gffly2005
2015-12-15 10:56:39
一个简单的程序,程序里调用了semMGiveForce()函数,头文件的包含路径应该如何设置???
...全文
1416
2
打赏
收藏
Vxworks下静态库编译错误
一个简单的程序,程序里调用了semMGiveForce()函数,头文件的包含路径应该如何设置???
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jackydi
2015-12-23
打赏
举报
回复
库中的头文件怎么也会报告错误呢,难道是环境变量被修改掉了?
gffly2005
2015-12-15
打赏
举报
回复
semMGiveForce函数是在semLib.h里面声明的,路径应该是D:/WindRiver/vxworks-6.6/target/h,为什么编译出错??我是新手,不知道该如何设置包含路径
嵌入式软件测试工具--LOGISCOPE
LOGISCOPE 是一组嵌入式软件测试工具集。它贯穿于软件开发、代码评审、单元/集成测试、系统测试、以及软件维护阶段。它面向源代码进行工作。LOGISCOPE 针对编码、测试和维护。因此,LOGISCOPE 的重点是帮助代码评审(Review )和动态覆盖测试(Testing )。 LOGISCOPE对软件的分析,采用基于国际间使用的度量方法(Halstead、McCabe等)的质量模型,以及从多家公司收集的编程规则集,可以从软件的编程规则,静态特征和动态测试覆盖等多个方面,量化地定义质量模型,并检查、评估软件质量。 LOGISCOPE 在开发阶段,查找可寻找潜在的
错误
。 在代码评审阶段,LOGISCOPE 定位那些具有80%
错误
的程序模块。 通过对未被测试代码的定位,LOGISCOPE 帮助找到隐藏在未测试代码中的缺陷。 项目领导和质量工程师用LOGISCOPE 定期地检查整个软件的质量。 在各个阶段用LOGISCOPE ,改进软件工程的实践,训练程序员的编写良好的代码和测试活动,确保系统易于维护,减少风险。 在有合同关系时,合同方可以用LOGISCOPE 明确定义验收时质量等级和执行测试。承制方可以用LOGISCOPE 演示其软件的质量。 LOGISCOPE 获取ISO/IEC9126 定义的"Quality Characteristics "; LOGISCOPE 为ISO-9001提供需求(test acceptance criteria and qulity records ); LOGISCOPE 为开发者提供SEI/CMM在第2 级(Repeatable )所要求的软件质量跟踪等关键实践的要求,推进开发组织尽快达到SEI/SMM 的3 级。 1)LOGISCOPE 用于开发阶段 定义质量模型 RuleChecker 预定义了50 个的编程规则:名称约定(如:局部变量用小写等);表示约定(如:每行一条指令); 限制(如:不能用GOTO 语句,不能修改循环体中的计数器等)。用户可以从这些规则中选择,也可以用Tcl 、脚本和编程语言定义新的规则。此外,还提供50 个面向安全-关键系统的编程规则。 Audit 以ISO9126 模型作为质量评价模型的基础。质量评价模型描述了从Halstend 、McCabe 的度量方法学和VERILOG 引入的质量方法学中的质量因素(可维护性、可重用性、等)和质量准则(可测试性、可读性、等)。 工程项目领导或质量管理人员可以根据准则、应用软件的生存周期、合同需求等,挑选并采纳适用于项目需求的质量模型。 验证、评审和改进代码 RuleChecker 用所选的规则对源代码进行验证。指出所有不符合编程规则的代码,并提出改进源代码的解释和建议。RulrChecker 通过文本编辑器直接访问源代码并指出需要纠正的位置。 Audit 将被评价的软件与规定的质量模型进行比较,用图形形式显示软件质量的级别,因此,质量人员可以把精力集中到需要修改的代码部分。对度量元素和质量模型不一致的地方作出解释并提出纠正的方法。 2)LOGISCOPE 用于测试阶段 定义测试准则 LOGISCOPE 推荐对指令(IB)、逻辑路径(DDP)和调用路径(PPP)的覆盖测试。此外对安全-关键软件还提供了MC/DC 的覆盖测试。 测试的有效性 TestChecker 产生每个测试的测试覆盖信息和累计信息。用直方图显示覆盖比率,并根据测试运行情况实时在线更改。随时显示新的测试所反映的测试覆盖情况。 TestChecker 允许所有的测试运行依据其有效性进行管理。用户可以减少那些用于非回归测试的测试。 测试的优化 在测试阶段的第一步,执行的测试是功能性(黑箱)测试。其目的是检查所期望的功能是否已实现。在测试初期,覆盖率会迅速增加。象样的测试工作一般能达到70%的覆盖率。但是,要提高此比率是十分困难的。主要是由于测试用例覆盖了相同的测试路径。这时,需要对测试策略做一些改变。执行结构化(白箱)测试,即,要检测没有执行过的逻辑路径,定义新的测试用例覆盖这些路径。 在执行测试期间,当测试策略改变时,综合的运用TestChecker 检测关键因素以提高效率。将TestChecker与Audit 配合使用能够帮助用户分析未测试的代码。 用户可以显示所关心的代码,并通过对执行未覆盖的路径的观察得到有关的信息。信息以图形(控制流图)和文本(伪代码和源文件)的形式提交,并在其间建立导航关联。 TestChecker 管理系统声明新的测试、生成有关文档、定义启动命令、以及自动执行的方法。 3)LOGISCOPE 用于维护阶段 人们广泛的认识到应用系统的维护费用与开发费用基本相等。经验表明50%的软件维 护时间化在对结构、逻辑和运行的理解上。LOGISCOPE 可以大大的减少对未知系统的理解所需的时间。 Audit 将应用系统的框架以文件形式(部件文件间的关系)和调用图的形式(函数和过程间的关系)可视化。函数的逻辑结构以控制流图的形式显示。在控制流图上选定一个节点,即可得到相对应的代码。可以在不同的抽象层上对应用系统进行分析,不同层次间的导航,促进对整体的理解。 4)对嵌入式领域的支持 LOGISCOPE 支持多种测试方式。特别是对嵌入式领域软件的支持。 众所周知,嵌入式系统软件的测试是最为困难的。因为,它的开发是用交叉
编译
方式进行的。在目标机(Target)上,不可能有多余的空间记录测试的信息。必须实时地将测试信息通过网线/串口传到宿主机(Host)上,并实时在线地显示。因此,对源代码的插装和目标机上的信息收集与回传成为问题的关键。 LOGISCOPE 很好地解决了这些技术,成为嵌入式领域测试工具的佼佼者。它支持各种实时操作系统(RTOS)上的应用程序的测试,也支持逻辑系统的测试。Logiscope 提供
VxWorks
、pSOS 、VRTX 实时操作系统的测试库。 5)对航空/航天/国防/核电站领域的支持 在航空/航天领域,安全是最关键的问题。因此,欧美的航空/航天制造厂商和使用单位联合制定了RTCA/DO-178B。LOGISCOPE 通过对"Reviews and Analysis of the Source Code " 和"Structural Coverage Analysis "能够使开发的软件达到RTCA/DO-178B 标准的A 、B 、C 三个系统级。 LOGISCOPE 是第一个提供MC/DC(Modified Condition/Decision Coverage)测试的工具。 6)软件文档和测试文档的自动生成 Logiscope 提供了文档自动生成工具。使用者可以将代码评审的结果和动态测试情况实时生成所要求的文档,这些文档忠实地记录代码的情况和动态测试的结果。文档的格式可以根据用户的需要定制,如,GJB-438A。 支持的主机平台: UNIX:Sun OS/Solaris, HP 700 HP-UX, RS6000 AIX, Power PC, DEC UNIX; IBM Mainframe MVS环境; PC Windows/NT。 支持的语言:C, C++, Ada, Java 目标机环境:支持嵌入式实时操作系统
VxWorks
,PSOS,VRTX
静态库
调用其它
静态库
在我们封装底层库的时候,有时会想能不能把底层的库直接打包进我们的库里,之前也一直有这样的疑问,最近终于把这个问题搞清楚了,如下:
编译
静态库
时只有
编译
过程,没有链接过程,
静态库
引用其它库并不会在
编译
的时候把引用的库函数
编译
到生成的lib中,只是简单的将
编译
后的中间文件打包,在
编译
最终的可执行项目(.exe和.dll)的时候,需要引用所有的库,进行符号消解。如果你需要封装,使用动态库。 ...
静态库
和动态库
1.
静态库
和动态库的基本概念
静态库
,是在可执行程序连接时就已经加入到执行码中,在物理上成为执行程序的一部分;使用
静态库
编译
的程序运行时无需该库文件支持,哪里都可以用,但是生成的可执行文件较大。动态库,是在可执行程序启动时加载到执行程序中,可以被多个可执行程序共享使用。使用动态库
编译
生成的程序相对较小,但运行时需要库文件支持,如果机器里没有这些库文件就不能运行。 2. 如何使用动态库
Workbench3.0-
vxworks
6.6仿真测试和调试指南
VxWorks
5.5只能创建
静态库
(.a),
VxWorks
6.0之后增加了动态链接库(.so)的功能,方便了多进程使用动态库。本文继承win32和linux编程入门的一贯风格,通过简单的动态库生成步骤,并编写RTP程序进行测试,让您初步认识
VxWorks
6.6强大的功能,同时也让我们注意到
VxWorks
6.6比
VxWorks
5.5在使用要复杂很多。我相信通过这些简单的编程知识点,您基本掌握了VxW
动态库(.so)链接
静态库
(.a)的总结 - 很实用讲解很清楚
https://blog.csdn.net/sevenjoin/article/details/78041377 动态库(.so)链接
静态库
(.a)的情况总结 动态库(.so)链接
静态库
(.a)的情况总结 一般来说在链接时想要使用
静态库
有三种方法: 1、link时加上 -static 选项;当加上 -static选项后,gcc会把所有用到的库都做静态连接。 2、link时直接指定想要静...
VxWorks
2,179
社区成员
2,916
社区内容
发帖
与我相关
我的任务
VxWorks
xworks是美国 Wind River System 公司( 以下简称风河公司 ,即 WRS 公司)推出的一个实时操作系统。
复制链接
扫一扫
分享
社区描述
xworks是美国 Wind River System 公司( 以下简称风河公司 ,即 WRS 公司)推出的一个实时操作系统。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章