<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > linux靜態(tài)庫和動態(tài)庫分析

          linux靜態(tài)庫和動態(tài)庫分析

          作者: 時間:2010-03-27 來源:網(wǎng)絡 收藏

          本文引用地址:http://www.ex-cimer.com/article/257989.htm

            第1步:編輯得到舉例的程序--hello.h、hello.c和main.c;

            hello.h(見程序1)為該函數(shù)庫的頭文件。

            hello.c(見程序2)是函數(shù)庫的源程序,其中包含公用函數(shù)hello,該函數(shù)將在屏幕上輸出Hello XXX!。

            main.c(見程序3)為測試庫文件的主程序,在主程序中調(diào)用了公用函數(shù)hello。

            程序1: hello.h

            #ifndef HELLO_H

            #define HELLO_H

            void hello(const char *name);

            #endif //HELLO_H

            程序2: hello.c

            #include

            void hello(const char *name)

            {

            printf(Hello %s!n, name);

            }

            程序3: main.c

            #include hello.h

            int main()

            {

            hello(everyone);

            return 0;

            }

            第2步:將hello.c編譯成.o文件;

            無論,還是,都是由.o文件創(chuàng)建的。因此,我們必須將源程序hello.c通過gcc先編譯成.o文件。

            在系統(tǒng)提示符下鍵入以下命令得到hello.o文件。

            # gcc -c hello.c

            #

            (注1:本文不介紹各命令使用和其參數(shù)功能,若希望詳細了解它們,請參考其他文檔。)

            (注2:首字符#是系統(tǒng)提示符,不需要鍵入,下文相同。)

            我們運行l(wèi)s命令看看是否生存了hello.o文件。

            # ls

            hello.c hello.h hello.o main.c

            #

            (注3:首字符不是#為系統(tǒng)運行結(jié)果,下文相同。)

            在ls命令結(jié)果中,我們看到了hello.o文件,本步操作完成。

            下面我們先來看看如何創(chuàng)建,以及使用它。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();