• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            拂曉·明月·彎刀

            觀望,等待只能讓出現的機會白白溜走

              C++博客 :: 首頁 ::  :: 聯系 :: 聚合  :: 管理 ::

            以下總結只針對windows平臺:

            1. dll文件應有static 和 dynamic的版本,編譯時臨時文件的目錄分別是: Debug, Release, DebugDll, ReleaseDll。
            2. 一般推薦使用dll的static版本,因為這樣就不用指定dll文件所在的路徑,以后對文件大小或其它要求時再換成dynamic版本的;但中間要注意的是:如果static版本文件有所改變,依賴其的項目要手動重新編譯,不然使用的還是老版本的static 庫。
            3. dll文件命名為: XxD.lib(Debug), Xx.lib(Release), XxD_dll.lib(Debug Dynamic), Xx_dll.lib(Release Dynamic), 如果是Unicode版本,在相應的'.'或'D'字符前加U,如:XxUD.lib(Debug Unicode), XxU.lib(Release Unicode)。
            4. 作為第三方API時,應提供完整的include, lib, bin目錄,readme.txt文件,可選擇提供example, doc目錄。 其中:include文件夾中放依賴的頭文件;lib中放所有的*.lib文件;bin中放所有的*.dll文件。
            5. 作為第三方API時,最好是通過def的方式生成,這樣可以跨語言使用。如果只限于c++調用,并且要導出的類比較多,則可以折中考慮使用dllexport的方式。

            以下總結是以前在Linux平臺:(Eclipse+CDT)

            1. 如何新建庫項目: 先新建一空項目,再修改設置:項目Property頁--->C/C++ Buildings--->Settings--->Build Artifact--->Artifact Type中選擇庫類型。
            2. 靜態庫使用:
              • 設置include頭文件目錄:.I./../XxLib/include;
              • 設置Linker庫文件目錄: -L./../XxLib/lib;
              • 設置Linker庫文件: -lXxLib
            3. 動態庫使用:
              • 隱式調用同上面的靜態庫;
              • 顯式調用在Linker中: -ldl -lXxLib;
              • 如果動態庫不是放在/lib,/usr/lib目錄下,需設置環境變量:LD_LIBRARY_PATH=./../XLib/lib
            4. 當同時存在該庫的靜態版本和共享版本時,鏈接器優先使用共享版本Xx.so,此時你可以使用-static鏈接選項指定鏈接靜態版本Xx.a
            5. 動態庫可以導出兩個特殊的函數:_init和_fini,前者在動態庫被加載后調用,后者在動態庫被卸載前調用,我們可以使用這兩個函數做些特別的工作。需要注意的是:在定義這兩個函數后編譯時,需要使用-nostartfiles選項,否則編譯器報重復定義錯誤。
            6. 應用程序與庫混合調試:項目Property頁--->C/C++ General--->Paths and Symbols--->References--->選擇引用庫。
            7. ldd用來查看程序所依賴的共享庫,同時也方便我們判斷共享庫是否被找到; nm命令查看obj文件(.so也是一個obj)中的標識(函數、變量)。

            Q:在Linux的DLL中如何使用stdcall調用方式

            posted on 2010-09-16 15:54 一路風塵 閱讀(399) 評論(0)  編輯 收藏 引用 所屬分類: C++技術/工作總結
            久久精品国产69国产精品亚洲| 亚洲国产一成久久精品国产成人综合 | 亚洲精品乱码久久久久久自慰| 久久午夜无码鲁丝片秋霞| 久久99国产乱子伦精品免费| 久久精品国产半推半就| 久久中文字幕无码专区| 久久精品国产清高在天天线| 91久久成人免费| 久久久久人妻一区精品色| 久久综合五月丁香久久激情| 久久99国产综合精品| 久久亚洲AV无码精品色午夜麻豆| 久久不射电影网| 欧洲人妻丰满av无码久久不卡| 日韩电影久久久被窝网| 久久91精品国产91久久麻豆| 亚洲人成网亚洲欧洲无码久久 | 狠狠色综合久久久久尤物| 国产精品美女久久福利网站| 国内精品久久久久久麻豆| 久久天天躁狠狠躁夜夜96流白浆| 亚洲欧美久久久久9999| 久久久久亚洲AV无码专区网站| 国产亚洲精品美女久久久| 久久夜色精品国产噜噜亚洲AV| 免费无码国产欧美久久18| 国产一区二区久久久| 亚洲国产成人久久综合区| 亚洲精品乱码久久久久久不卡| 国内精品伊人久久久久影院对白 | 国产精品永久久久久久久久久| 97久久天天综合色天天综合色hd | 久久亚洲美女精品国产精品| 久久精品国产久精国产果冻传媒| 热久久视久久精品18| 免费精品国产日韩热久久| 亚洲欧美国产精品专区久久| 2021久久精品免费观看| 久久综合亚洲鲁鲁五月天| 久久精品亚洲AV久久久无码|