ce bsp開發入門之重要的配置檔案 bsp中有一些很重要的檔案,我們在開發過程中必須要給予足夠的重視。
1 mybsp.bat,位於bsp的根目錄中,用於定義一些全域性的環境變數,比如定義某個驅動的環境變數,從而使生成的系統支援此驅動。其實,這個檔案在大多數的bsp裡,例如2410的,對應的檔案就是smdk2410.bat.
2 source.cmn,位於bsp的根目錄中,主要用於定義一些bsp及driver中會用到的預定義及環境變數。
一般這個檔案有以下作用:
1)定義includes,這樣,bsp中的其它目錄中就不用特別定義includes了。
2)根據系統定義的一些環境變數而定義c語言與組合語言使用的預定義,這一點特別重要,系統定義的環境變數是沒法在c語言和組合語言中起作用的,這一點在cirrus的bsp中表現最為突出。使用該bsp,可以在workspace檔案中定義硬體平台型別,sdram及flash的位址,大小等資訊。當然,也可以在各個模組的sources檔案中定義這些東西,但如果兩個以上的模組中使用相同的環境變數,則在這個檔案中定義更加方便,因為在這定義一次,每個模組都可以使用,而不需要在各模組中各自定義。
cdefines定義c語言使用的變數,adefines定義彙編評議中使用的變數,例如,
adefines=$(adefines) -pd "flash_type sets /"j3/""
cdefines=$(cdefines) -dflash_type=j3
分別為組合語言和c語言設定flash_type為"j3",需要注意的是c語言中好像沒法將乙個變數定義成字串.
3.dirs.這個檔案用於指定在當前目錄中有哪些目錄需要被編譯.
4.sources.這個檔案定義當前目錄的**生成dll/lib等模組時的必要資訊,主要有以下幾項.
targetname,定義模組名稱.
targettype,模組的種類,可以是dynlink, library,exe.
如果targettype是dll,則可以定義dllentry,將dll入口定義成別的不是dllmain的函式
如果targettype是exe,則可以定義exeentry,用於指定exe的入口函式.
includes,如果乙個模組需要使用非標準路徑下的標頭檔案時,需要定義includes,用於包含更多的標頭檔案路徑,用法如下:
includes=$(includes);/new directory/...,注意定義新的includes時,需要包含includes原來的值.
targetlibs,sourcelibs用於定義該模組需要鏈結哪些庫檔案.我不知道這兩個的具體區別,如果某個庫檔案鏈結時發生了錯誤,可以把它移到另乙個變數下試試.
wincecod,如果將其定義為1,則編譯器會為每乙個檔案生成.cod檔案,它是乙個彙編檔案.
sources,定義該模組需要哪些原始檔.
windows Driver 入門推薦文章
driver development part 1 introduction to drivers driver development part 2 introduction to implementing ioctls driver development part 3 introduction...
WinCE BSP的BIB檔案介紹
在wince中使用的乙個重要的檔案就是bib檔案,全稱binary image builder file。在wince的編譯過程中會用到bib檔案,應該是在最後的makeimg階段。所有的bib檔案會被合併成ce.bib檔案,然後romimage.exe會根據bib檔案中的描述來決定哪些檔案最終被包...
WinCE BSP的 BIB bib 檔案介紹
在wince中使用的乙個重要的檔案就是bib檔案,全稱binary image builder file。在wince的編譯過程中會用到bib檔案,應該是在最後的makeimg階段。所有的bib檔案會被合併成ce.bib檔案,然後 romimage.exe會根據bib檔案中的描述來決定哪些檔案最終被...