国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
WinCE BSP中的Dirs文件和Sources文件【轉】

  關于Dirs文件,就是指定要編譯的路徑,這個地球人都知道。還是簡單介紹一下。按照文檔上面介紹有三種定義:DIRS,DIRS_CE和OPTIONAL_DIRS。

  DIRS:就是指定要編譯的目錄。

  DIRS_CE:只有目錄下的源代碼用于WinCE的映像文件時,才編譯該目錄。

  OPTIONAL_DIRS:指定可以選擇編譯的目錄。比如:OPTIONAL_DIRS=proj1,如果想編譯proj1目錄,可以設置BUILD_OPTIONS=proj1,然后運行build命令就可以了。

  舉個例子:

DIRS= common
drivers
oal
bootloader

  表示需要編譯common,drivers,oal和bootloader目錄。

  DIRS=* 

  表示編譯當前的所有目錄。

  2. Sources文件

   在WinCE BSP中會看到很多sources文件,一般會和源代碼放在同一個目錄,當然不是絕對的。這些sources文件里面就是定義了一些宏,主要用于告訴 Build.exe在編譯源代碼的時候應該如何編譯和鏈接,告訴Nmake.exe如何編譯源代碼以及最后生成什么類型的文件。

  下面具體介紹一下:

  TARGETNAME:最后編譯完后生成的目標文件的名字,不包括擴展名。

  TARGETTYPE:生成的文件的類型。具體值如下:

  LIBRARY,一個.lib文件

  DYNLINK,一個.dll文件

  PROGRAM,一個.exe文件

  RELEASETYPE:該宏設置兩個環(huán)境變量RELEASEDIR和RELEASELIBDIR,就是設置編譯后生成文件存放的路徑。具體值如下:

  PLATFORM,生成的文件在PLATFORM<BSP NAME><Target>

  LOCAL,生成的文件在當前路徑下

  CUSTOM,生成的文件在TARGETPATH指定的位置

  MANAGED,生成的文件在%_PROJECTROOT%OAK<Target>Managed

  OAK, SDK, DDK,生成的文件在%_PROJECTROOT%Oak<Target> 

  TARGETPATH:當上面的RELEASETYPE=CUSTOM的時候,該宏指定路徑

  SOURCELIBS:靜態(tài)鏈接。函數的實體被鏈接過來,生成一份拷貝

  TARGETLIBS:動態(tài)鏈接。函數的地址被鏈接過來,系統(tǒng)執(zhí)行時會加載該庫

  INCLUDES:指定額外的要搜索的頭文件的路徑

  SOURCES:指定要被編譯的文件

  ADEFINES:指定匯編器要使用的參數

  CDEFINES:指定編譯器要使用的參數

  LDEFINES:指定連接器要使用的參數

  RDEFINES:指定資源編譯器Rc.exe的參數

  DLLENTRY:指定dll的入口函數

  DEFFILE:指定該模塊的.def文件

  EXEENTRY:指定可執(zhí)行文件的入口函數

  SKIPBUILD:不做實際的build操作,直接返回成功

  WINCECOD:編譯后生成一個.cod的匯編文件,用于查看匯編代碼調試

  WINCECPU:用于說明為指定的CPU編譯,這樣被編譯出來的目標文件會被放在_TGTCPU環(huán)境變量所指定的子目錄下面,一般該宏在sources.cmn中定義。

  WINCEMAP:編譯后生成一個.map文件,用于調試

  WINCEOEM:設置該值表示需要使用WinCE下的一些公用的庫和頭文件,該值一般在BSP中的sources.cmn中定義。

  WINCETARGETFILE0:用于告訴編譯系統(tǒng)在編譯當前路徑下的源碼文件之前,要先由Build.exe編譯的目標文件。

  WINCETARGETFILES:用于告訴編譯系統(tǒng)在鏈接當前路徑下所有的目標文件之前,要先由Build.exe編譯的目標文件。

  WINCE_OVERRIDE_CFLAGS:用于定義用戶自己的編譯器參數取代默認的編譯器參數。

  舉個例子:

TARGETNAME=serial_smdk2410
TARGETTYPE=DYNLINK
RELEASETYPE=PLATFORM
TARGETLIBS=$(_COMMONSDKROOT)lib$(_CPUINDPATH)coredll.lib
$(_SYSGENOAKROOT)lib$(_CPUINDPATH)ceddk.lib

SOURCELIBS=$(_SYSGENOAKROOT)lib$(_CPUINDPATH)serpddcm.lib
$(_SYSGENOAKROOT)lib$(_CPUINDPATH)com_mdd2.lib

DEFFILE=serial.def
DLLENTRY=_DllEntryCRTStartup

SOURCES= ser_smdk2410.cpp
pdds3c2410_ser.cpp

   需要編譯的文件為ser_smdk2410.cpp和pdds3c2410_ser.cpp,DEF文件為serial.def,DLL的入口函數是 _DllEntryCRTStartup,靜態(tài)連接serpddcm.lib和com_mdd2.lib兩個庫,動態(tài)鏈接coredll.lib和 ceddk.lib兩個庫,最終編譯為dll文件,文件名為serial_smdk2410.dll。

  最后總結一下,Dirs文件會和Sources文件配合使用,但是他們不可能存在同一個目錄下面。Dirs文件指定編譯目錄,Sources文件指定如何編譯。

本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
WinCE BSP中的Dirs文件和Sources文件 - ARM-WinCE的專欄 - ...
WINCE600的目錄組織及PQOAL
WinCE5 sources文件中TARGETLIBS與SOURCELIBS字段的作用與區(qū)別
嵌入式WinCE開發(fā)中可能遇到若干的問題
vs2008編譯opencv2.3的問題
WinCE BSP的BIB文件介紹
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服