5630|17

82

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

请教WinCe 中的_COMMONOAKROOT等环境变量的定义 [复制链接]

请问在wince bsp的sources里面经常会见到如_COMMONOAKROOT、_CPUDEPPATH、_TARGETPLATROOT、_PUBLICROOT等以$(_PUBLICROOT)形式调用的变量,请问这些变量是在哪里定义的呢?

pb->build os->open release directory打开的窗口中使用set命令只能看到其中一部分,

pb->platform->settings对话框的environment属性页也看不到已有的环境变量,只能新建。

请问pb里共有多少类环境变量,分别在哪里定义呢?
此帖出自WindowsCE论坛

最新回复

麻烦兄弟们这么久,总算有点收获了,谢谢,结贴去了。  详情 回复 发表于 2009-1-19 15:19
点赞 关注
 

回复
举报

85

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
多看那些配置文件
此帖出自WindowsCE论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
请问在wince bsp的sources里面经常会见到如_COMMONOAKROOT、_CPUDEPPATH、_TARGETPLATROOT、_PUBLICROOT等以$(_PUBLICROOT)形式调用的变量,请问这些变量是在哪里定义的呢?
这些通常会定义在Sources.cmn文件里

pb->build os->open release directory打开的窗口中使用set命令只能看到其中一部分,
通过这方式可以查看到所有的环境变量,也就是在运行这个命令时有效的环境变量

pb->platform->settings对话框的environment属性页也看不到已有的环境变量,只能新建。
这个本来就是让你来设置环境变量的,并不是让你查看环境变量的

请问pb里共有多少类环境变量,分别在哪里定义呢?
环境变量有分类吗?可以定义的地方很多,通常自己的变量定义在BSP的BAT文件中,系统的很多变量设置都在Public目录下面的BAT文件里
此帖出自WindowsCE论坛
 
 
 

回复

87

帖子

0

TA的资源

一粒金砂(初级)

4
 
楼主,有些不是在那里看的,你看看BAT和sources.cmn文件。里面有你要的东西。
哈哈
此帖出自WindowsCE论坛
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

5
 
谢谢两位的回复。

比如我的目录C:\WINCE500\PLATFORM\smdk2440\KERNEL\BUILDEXE\KERN的sources文件里有如下部分内容

TARGETLIBS= $(_COMMONOAKROOT)\lib\$(_CPUDEPPATH)\nk.lib          \
                                          $(_TARGETPLATROOT)\lib\$(_CPUDEPPATH)\hal.lib                                 \
            $(_TARGETPLATROOT)\lib\$(_CPUDEPPATH)\csp_arm.lib     \
            $(_TARGETPLATROOT)\lib\$(_CPUDEPPATH)\csp_arm920t.lib \
            $(_COMMONOAKROOT)\lib\$(_CPUDEPPATH)\loadauth.lib    \
                                    $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\fulllibc.lib

那么其中的_COMMONOAKROOT在哪里定义了呢,我搜索了C:\WINCE500下面所有包含_COMMONOAKROOT的文件也没找到定义的地方。
此帖出自WindowsCE论坛
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

6
 
sources.CMN文件
就在wince500路径下
此帖出自WindowsCE论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

7
 
实在不好意思,还是没有找到。

我把WINCE500目录下的sources.cmn都找出来了,共30个,只有C:\WINCE500\PRIVATE\TEST下的sources.cmn里面有_COMMONOAKROOT,还只是引用,不是定义,

难道跟我的pb或bsp有关,我用的是友善之臂的板子,用板子带的bsp编译的内核在板子上能正常运行。

麻烦贴一下文件路径跟内容吧,谢谢!
此帖出自WindowsCE论坛
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

8
 
使用pbxmlutils工具来打开项目
pbxmlutils /getbuildenv /workspace "%_WINCEROOT%\PBWorkspaces\.pbxml" /config ": " > SetEnv.bat
    这个命令运行后生成一个setenv.bat.打开setenv.bat一看,全是环境变量的设置。
    (pbxmlutils工具所在路径:默认安装后,pb路径是c:\program files\wincows ce platform builder\5.00\cepb\bin)
此帖出自WindowsCE论坛
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

9
 
谢谢jgj58

我按你说的还是没有找到

不过我注意到2楼 hzdysymbol 说的

pb->build os->open release directory打开的窗口中使用set命令只能看到其中一部分,
通过这方式可以查看到所有的环境变量,也就是在运行这个命令时有效的环境变量

其中的有效有什么特别意义吗,是我的C:\WINCE500\PLATFORM\smdk2440\KERNEL\BUILDEXE\KERN\sources这个文件没有启用吗,可是_COMMONOAKROOT在很多sources文件里都用到了的啊?
此帖出自WindowsCE论坛
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

10
 
在你的BSP根目录下的SOURCES.CMN里。
此帖出自WindowsCE论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

11
 
LS正解,一般放在BSP的根目录下面

我指的有效是指运行set这个命令时已经设置好的环境变量,因为调用这个命令只是显示环境变量而已,有些环境变量是在运行的过程中设置的,这样的话有可能用set是看不到的
此帖出自WindowsCE论坛
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

12
 
引用 10 楼 hzdysymbol 的回复:
LS正解,一般放在BSP的根目录下面

我指的有效是指运行set这个命令时已经设置好的环境变量,因为调用这个命令只是显示环境变量而已,有些环境变量是在运行的过程中设置的,这样的话有可能用set是看不到的


估计楼主以为SOURCES.CMN和sources是一样了,
汗,我们这么多人提示你,还没有找到吗?
此帖出自WindowsCE论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

13
 
谢谢singlerace

以下是C:\WINCE500\PLATFORM\smdk2440\sources.cmn内容

!if 0
Copyright (c) Microsoft Corporation.  All rights reserved.
!endif
!if 0
Use of this source code is subject to the terms of the Microsoft end-user
license agreement (EULA) under which you licensed this SOFTWARE PRODUCT.
If you did not accept the terms of the EULA, you are not authorized to use
this source code. For a copy of the EULA, please see the LICENSE.RTF on your
install media.
!endif


WINCEOEM=1
WINCECPU=1
NOMIPS16CODE=1
RELEASETYPE=PLATFORM

_PLATCOMMONLIB=$(_PLATFORMROOT)\common\lib

_COMMONPUBROOT=$(_PUBLICROOT)\common
__PROJROOT=$(_PROJECTROOT)

_OEMINCPATH=$(_WINCEROOT)\public\common\sdk\inc;
_OEMINCPATH=$(_OEMINCPATH);$(_WINCEROOT)\public\common\oak\inc;
_OEMINCPATH=$(_OEMINCPATH);$(_WINCEROOT)\public\common\ddk\inc;

_ISVINCPATH=$(_WINCEROOT)\public\common\sdk\inc;

INCLUDES=$(_TARGETPLATROOT)\src\inc;
INCLUDES=$(INCLUDES);$(_PUBLICROOT)\common\oak\csp\arm\samsung\s3c2410x\inc
INCLUDES=$(INCLUDES);$(_PLATFORMROOT)\common\src\inc;
INCLUDES=$(INCLUDES);$(_WINCEROOT)\public\common\oak\drivers\block\msflashfmd\inc

完全就没有_COMMONOAKROOT的影子,是我的bsp有问题吗,不过我用这个bsp编译过内核,正常,呵呵,真郁闷啊
此帖出自WindowsCE论坛
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

14
 
对了,我用的是友善之臂的mini2440,跟板子有关吗,用过的兄弟来说说,谢谢!
此帖出自WindowsCE论坛
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

15
 
引用 11 楼 gooogleman 的回复:
引用 10 楼 hzdysymbol 的回复:
LS正解,一般放在BSP的根目录下面

我指的有效是指运行set这个命令时已经设置好的环境变量,因为调用这个命令只是显示环境变量而已,有些环境变量是在运行的过程中设置的,这样的话有可能用set是看不到的


估计楼主以为SOURCES.CMN和sources是一样了,
汗,我们这么多人提示你,还没有找到吗?


谢谢gooogleman

我注意到了sources.cmn和sources的区别,上面12楼有我贴的C:\WINCE500\PLATFORM\smdk2440\sources.cmn内容,

记得你好像也用过友善之臂的板子,呵呵,请帮忙看看,

再次谢谢以上所有耐心帮助我的朋友!
此帖出自WindowsCE论坛
 
 
 

回复

72

帖子

0

TA的资源

纯净的硅(中级)

16
 
我也遇到了  一起研究吧
此帖出自WindowsCE论坛
 
 
 

回复

87

帖子

0

TA的资源

一粒金砂(初级)

17
 
楼主,这个我刚才看了一下。发现和别的环境变量不同,
我们仔细推敲一下就会发现
_COMMONOAKROOT一般不指向public目录下面的,而是你的Workspace目录下面的OAK
因为我们在是把所用的代码编译成lib之后才拷贝到我们所建立的工程的,之后再根据sources等文件打包成DLL的。
——至于为什么,说来话长,你如果想了解就看看build.log文件,这个问题我前段时间刚仔细看过。


这个就造成我们很难查到_COMMONOAKROOT在哪里,因为随着不同的工程而改变,PB下批处理文件很多,很那查的
我们知道他在哪里就OK了。
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

18
 
麻烦兄弟们这么久,总算有点收获了,谢谢,结贴去了。
此帖出自WindowsCE论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表