• <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>
            cyt
            又是一件折騰了我一天的事情。其實epoll代碼早就會寫了,lib里面早就支持了epoll,但一直停留在“支持”階段。實際上卻是沒有用起來過。公司裝了一臺機器,里面有epoll.h和epoll.a,但核心卻不是2.6,所以機器上能編譯但不能運行。另外一臺機器升級了內核,但卻怎么也找不到epoll.h和epoll.a。所以郁悶了很久,于是下定決心,要把這個問題搞個清楚。終于,在向東博士的幫助下,把問題解決了。

            其實網上也有很多的介紹,例如 http://www.xmailserver.org/linux-patches/nio-improve.html 
            從網上下載了一個 epoll-lib-0.11.tar.gz ,把它放到已經升級內核到2.6的Redhat9機器,解開。然后進去make,發現沒有mkdep……也懶得管了,直接來一個:make lib/libepoll.a
            跳過了mkdep這一步,但還是出錯:
            ./src/epoll.c: In function `epoll_create':
            ./src/epoll.c:28: error: `__NR_epoll_create' undeclared (first use in this function)
            ./src/epoll.c:28: error: (Each undeclared identifier is reported only once
            ./src/epoll.c:28: error: for each function it appears in.)
            ./src/epoll.c: In function `epoll_ctl':
            ./src/epoll.c:30: error: `__NR_epoll_ctl' undeclared (first use in this function)
            ./src/epoll.c: In function `epoll_wait':
            ./src/epoll.c:32: error: `__NR_epoll_wait' undeclared (first use in this function)
            百思不得其解……向東博士提說:把內核的源代碼ln 到/usr/src/linux目錄下。這才恍然大悟。于是:
            ln -s /usr/src/linux-2.6.14.2 /usr/src/linux

            哈哈,這下編譯通過了。趕快make install(其實我是自己手工把.h和.lib復制到相應目錄,那些man的東西全部都不管了)。

            然后就開始編譯自己的代碼了。誰知道到了鏈接這一步,又出問題了:
            /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/../../../../i686-pc-linux-gnu/bin/ld: cannot find /lib/libpthread.so.0
            這是暈死,還以為是自己的gcc裝錯了,于是重新裝了一次gcc。但還是出現同樣的問題。
            又是向東博士提示:
            ln /lib/i686/libpthread-0.10.so /lib/libpthread.so.0
            鏈接也都通過了。

            也未免高興得太早,輪到運行出錯了:
            /lib/libgcc_s.so.1: version `GCC_3.3' not found (required by /usr/lib/libstdc++.so.6)
            ……這次不用別人提示了,馬上到處找找哪里還有libgcc_s.so.1。于是我把/home/cyt/gcc-4.0.2/objdir/gcc/libgcc_s.so.1復制到了/lib下面。(其實就是我make gcc的那個目錄下面找到的libgcc_s.so.1,其它地方都有的,不過我也懶得找了)。
            終于程序跑起來了……
            posted on 2006-01-19 16:08 cyt 閱讀(5853) 評論(3)  編輯 收藏 引用 所屬分類: Work
            Comments
            • # re: epoll的安裝和調試
              谷子
              Posted @ 2006-08-20 21:16
              我試著編譯了這個庫。但是程序編譯后卻沒有鏈接到這個庫上,不知道是什么原因?  回復  更多評論   
            • # re: epoll的安裝和調試
              xmpp
              Posted @ 2006-09-10 00:22
              我照著上面的方法可以了。  回復  更多評論   
            • # re: epoll的安裝和調試
              jackz
              Posted @ 2009-03-23 13:19
              只用到過EPOLL ,還沒裝過EPOLL, 我用的都是2.6內核的,,
                回復  更多評論   
             
            久久亚洲私人国产精品vA| 久久精品成人欧美大片| 久久免费视频观看| 浪潮AV色综合久久天堂| 伊人丁香狠狠色综合久久| 青青草原精品99久久精品66| 亚洲另类欧美综合久久图片区| 精品无码久久久久久国产| 久久99久久99精品免视看动漫| 99精品国产免费久久久久久下载| 久久婷婷国产剧情内射白浆 | 久久精品人人槡人妻人人玩AV| 无码久久精品国产亚洲Av影片| 久久无码专区国产精品发布| 亚洲精品无码久久久久AV麻豆| 伊人久久亚洲综合影院| 久久亚洲AV成人无码软件| 久久ZYZ资源站无码中文动漫| 大伊人青草狠狠久久| 国产精品va久久久久久久| 囯产极品美女高潮无套久久久| 一本一道久久综合狠狠老| 无码日韩人妻精品久久蜜桃| 久久精品国产亚洲AV电影| 99久久精品影院老鸭窝| 久久WWW免费人成—看片| 久久精品中文字幕一区| 亚洲国产另类久久久精品小说| 国内精品久久久久影院优| 久久天天躁狠狠躁夜夜不卡| 国产成人久久精品一区二区三区 | 久久99精品久久只有精品| 国产精品99久久精品爆乳| 欧美精品久久久久久久自慰| 好久久免费视频高清| 欧美国产成人久久精品| 精品久久久久国产免费| 久久99精品久久久久子伦| 亚洲成av人片不卡无码久久| 99久久国产热无码精品免费| 伊人色综合久久天天网|