首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 关于sysgen时,文件丢失的问题 [已结帖,结帖人:ddoeddoe]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ddoeddoe
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 结帖率:
    发表于:2008-08-08 14:01:47 楼主
    我的这个试验是参考周立功《arm&wince 试验与实践》中的一个例子,主要目的是编写一个驱动程序,然后将它加入操作系统实现驱动的自动加载。
    第一: 程序代码在C:\WINCE500\PLATFORM\SMDK2440A\SRC\DRIVERS 编译通过,修改DIRS文件  dirs= mydriver\....
    第二: 修改platform.bib文件, mydriver.dll    $(_flatreleasedir)\mydriver.dll  NK
    第三: 修改注册表

    然后BUILD OS, 每次SYSGEN,都出现这样的错误:
    Could not find file 'C:\WINCE500\PBWorkspaces\Drivertest\RelDir\smdk2440a_ARMV4I_Release\mydriver.dll' on disk
    找不到驱动的文件,我每次单独编译代码的时候,都会在release目录下生成mydriver.dll。可是一sysgen就消失了...

    这个错误是怎么产生的呢?

    还有大家通常怎么写驱动代码呀?谢谢
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • constantine
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 9

      8

      5

    发表于:2008-08-08 14:41:581楼 得分:0
    Copy of dirs中没有添加驱动目录所以编译后没有帮你copy过去吧。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ddoeddoe
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-08 14:46:012楼 得分:0
    请问,怎么看 copy of dirs 目录?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • shuiyan
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 3

    发表于:2008-08-08 14:59:003楼 得分:5
    每次编完手动复制。
    写一个bat文件,编译完运行一次进行复制
    在WINCE的Environment中加变量WINCEREL 值为1,每次编译完会自动复制,不需要你操作。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ddoeddoe
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-08 15:15:534楼 得分:0
    引用 3 楼 shuiyan 的回复:
    每次编完手动复制。
    写一个bat文件,编译完运行一次进行复制
    在WINCE的Environment中加变量WINCEREL 值为1,每次编译完会自动复制,不需要你操作。

    您是指每次编写完驱动手动复制到reldir下? 然后make runtime image...?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • shuiyan
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 3

    发表于:2008-08-08 15:21:095楼 得分:0
    正确。
    还有,我说的是3种方法,不是一种。每种方法over后都需要makeimg的。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • gooogleman
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-08 15:24:396楼 得分:0
    引用楼主 ddoeddoe 的帖子:
    我的这个试验是参考周立功《arm&wince 试验与实践》中的一个例子,主要目的是编写一个驱动程序,然后将它加入操作系统实现驱动的自动加载。
    第一: 程序代码在C:\WINCE500\PLATFORM\SMDK2440A\SRC\DRIVERS 编译通过,修改DIRS文件  dirs= mydriver\....
    第二: 修改platform.bib文件, mydriver.dll    $(_flatreleasedir)\mydriver.dll  NK
    第三: 修改注册表

    然后BUILD OS, 每次SYSGEN,都出现这样的错误:
    Could …


    还缺一个步骤,要想把自己的驱动加入BSP,还要修改CEC文件或者PBXML文件。这样PB才会知道怎么样编译你的驱动。

    楼主,你是自己买周的板子,貌似很贵,估计你是在学校的吧,周的板子貌似只卖给学校。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • 91program
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 7

      5

      3

    发表于:2008-08-08 15:27:247楼 得分:5
    PB菜单:setting的Configuration项:Custom Build Actions选项卡中的Build step下拉框,选择Pre-Make Image (有四个选项,分别为Pre-Sysgen,Post-Sysgen,Pre-Make Image,Post-Make Image,意思如其名) ,然后New,在弹出的Custom Build Action对话框中输入类似以下的语句:
    copy <Path>\ <File name> %_FLATRELEASEDIR%\ <File name>
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ddoeddoe
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-08 15:27:478楼 得分:0
    引用 5 楼 shuiyan 的回复:
    正确。
    还有,我说的是3种方法,不是一种。每种方法over后都需要makeimg的。

    关键是,我NK.BIN都没有生成,不能makeimg...除非我把自己写的驱动去了,重新添加? 一定要这样么?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ddoeddoe
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-08 15:29:529楼 得分:0
    引用 7 楼 91program 的回复:
    PB菜单:setting的Configuration项:Custom Build Actions选项卡中的Build step下拉框,选择Pre-Make Image (有四个选项,分别为Pre-Sysgen,Post-Sysgen,Pre-Make Image,Post-Make Image,意思如其名) ,然后New,在弹出的Custom Build Action对话框中输入类似以下的语句:
    copy  <Path>\ <File name> %_FLATRELEASEDIR%\ <File name>

    这个方法我在您以前对于类似的问题的回复中看到过,我也试验了,还是不行...
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • gooogleman
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-08 15:34:3210楼 得分:0
    Could not find file 'C:\WINCE500\PBWorkspaces\Drivertest\RelDir\smdk2440a_ARMV4I_Release\mydriver.dll' on disk

    你都没有在CEC文件里面告诉编译器这个东西的路径了,GUID了,以及需要的库了之类的东西,编译器当然说找不到这个DLL了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ddoeddoe
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-08 15:35:3511楼 得分:0
    引用 6 楼 gooogleman 的回复:
    还缺一个步骤,要想把自己的驱动加入BSP,还要修改CEC文件或者PBXML文件。这样PB才会知道怎么样编译你的驱动。

    楼主,你是自己买周的板子,貌似很贵,估计你是在学校的吧,周的板子貌似只卖给学校。

    呵呵,不是自己买的,能学的会就好,可是刚刚接触驱动,什么都不懂...我试着去改下BSP的CEC文件看看,PBXML文件怎么改我就不知道了...
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • shuiyan
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 3

    发表于:2008-08-08 15:36:5112楼 得分:10
    你第一次可以先去掉你的driver(只要在platform.bib里去掉就行,这样不会试图包含),直到能编译成功生成nk.bin.
    然后再build你的dll,调试期间,为快速方便起见,可以在nk.bin所在的目录下找ce.bib,然后将你的dll写入,再makeimg就行。

    都调试通过后,再修改platform.bib,然后重新sysgen,rebuild。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ddoeddoe
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-08 15:43:0113楼 得分:0
    引用 12 楼 shuiyan 的回复:
    你第一次可以先去掉你的driver(只要在platform.bib里去掉就行,这样不会试图包含),直到能编译成功生成nk.bin.
    然后再build你的dll,调试期间,为快速方便起见,可以在nk.bin所在的目录下找ce.bib,然后将你的dll写入,再makeimg就行。

    都调试通过后,再修改platform.bib,然后重新sysgen,rebuild。

    恩 谢谢
    这个方法很好,以后我也会这么做,可是我还是想知道我那么做到底错哪了,先试验下googleman的方法看行不行...
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • gooogleman
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-08 15:52:1414楼 得分:0
    引用 12 楼 shuiyan 的回复:
    你第一次可以先去掉你的driver(只要在platform.bib里去掉就行,这样不会试图包含),直到能编译成功生成nk.bin.
    然后再build你的dll,调试期间,为快速方便起见,可以在nk.bin所在的目录下找ce.bib,然后将你的dll写入,再makeimg就行。

    都调试通过后,再修改platform.bib,然后重新sysgen,rebuild。



    很好的使用技巧,不是骨灰级人物是不会对PB这么熟悉的。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • constantine
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 9

      8

      5

    发表于:2008-08-08 16:54:1515楼 得分:0
    Copy of dirs 是个文件,DIRS文件放一起的

    或者你在bib里面写的copy路径直接只想target目录,这样开始写驱动就直接用PB的命令行build一下就可以,然后make,这样特别快。
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved