<menu id="w8yyk"><menu id="w8yyk"></menu></menu>
  • <dd id="w8yyk"><nav id="w8yyk"></nav></dd>
    <menu id="w8yyk"></menu>
    <menu id="w8yyk"><code id="w8yyk"></code></menu>
    <menu id="w8yyk"></menu>
    <xmp id="w8yyk">
    <xmp id="w8yyk"><nav id="w8yyk"></nav>
  • 網站首頁 > 物聯資訊 > 技術分享

    SDL2.0 學習筆記-1 windows下的第一個測試程序

    2016-09-28 00:00:00 廣州睿豐德信息科技有限公司 閱讀
    睿豐德科技 專注RFID識別技術和條碼識別技術與管理軟件的集成項目。質量追溯系統、MES系統、金蝶與條碼系統對接、用友與條碼系統對接

    SDL全稱是Simple DirectMedia Layer,是一個開源的、跨平臺(win32,linux,mac)的多媒體開發c語言庫。

    官方網站 http://www.libsdl.org/

     

    第一步,下載源文件

    首先去這個頁面http://www.libsdl.org/tmp/download-2.0.php下載相關資源文件,直接下載SDL2-2.0.0.zip 來自己編譯,或者按自己的系統下載相關的開發資源(bin和include)。解壓資源包后,內容如下:

     

    RFID設備管理軟件

     

    include目錄下頭文件,src目錄下是SDL的源c文件。

    為了方便地在VS下編寫SDL程序,可以將include里的內容,放到的開發環境的include目錄下,如在C:\Program Files\Microsoft Visual Studio 11.0\VC\include下新建sdl目錄放置所有sdl頭文件。

    (也可以使用junction link,使用mklink /J "C:\Program Files\Microsoft Visual Studio 11.0\VC\include\sdl" ./sdl2.0.../include 命令來完成)

     

    第二步,編譯SDL(要是下載了相關的開發資源的話,可以直接跳過這一步)

    進入VisualC目錄下,可以看到vs的sln文件,支持vs2008,vs2010,vs2012,按自己的vs版本選擇相關的solution打開,編譯,分別可以得到SDL2.lib、SDL2main.lib、SDL2test.lib 、 SDL2.dll文件。


    SDL2.lib是核心的靜態鏈接庫文件,SDL2main.lib定義了SDL在windows平臺下入口函數(這點后面詳解),SDLtest.lib用于測試(屬于sdltest庫,可以用它來測試你當前系統或平臺對SDL功能的支持程度)。

     

    第三步,編寫第一個sdl程序

     

    創建工程,新建c或cpp源文件。開始簡的coding來測試一下:

    復制代碼
     1 #include <sdl/SDL.h>
     2 #include <iostream>
     3 
     4 // 由于SDL內部重定義了main, main函數一定得是這個形式,具體為何,后面詳細說明
     5 int main(int argc, char * argv[])
     6 {
     7     // 初始化SDL
     8     if((SDL_Init(SDL_INIT_VIDEO|SDL_INIT_AUDIO)== -1)) 
     9     {
    10         // 初始化失敗,打出錯誤,注意SDL_GetError返回一個字符串,可讀性很好,是不是?
    11         printf("Could not initialize SDL: %s.\n", SDL_GetError());
    12     }
    13     else
    14     {
    15         printf("SDL initialize ok!");
    16     }
    17     // 結束SDL
    18     SDL_Quit();
    19     getchar();
    20     return 0;
    21 }
    復制代碼


    這里需要說明的幾點:

    1、入口函數不能寫成main(),必須有參數,因為SDL將內部已經實現了入口函數,這里的main其實是SDL_main。

    2、如果是在windows環境下使用vs,注意測試工程需要作以下設置:

    (1)項目屬性-配置屬性-鏈接器-系統:子系統(選控制臺 (/SUBSYSTEM:CONSOLE)或 窗口 (/SUBSYSTEM:WINDOWS))。

    (2)項目屬性-配置屬性-c/c++:附加包含目錄:選擇SDL的include目錄。

    (3)將SDL2.lib、SDL2main.lib添加到項目中。加到 項目屬性-配置屬性-鏈接器-輸入:附加依賴項,或者直接以文件形式添加。

     

    RFID管理系統集成商 RFID中間件 條碼系統中間層 物聯網軟件集成
    最近免费观看高清韩国日本大全