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

            其實(shí)網(wǎng)上也有很多的介紹,例如 http://www.xmailserver.org/linux-patches/nio-improve.html 
            從網(wǎng)上下載了一個(gè) epoll-lib-0.11.tar.gz ,把它放到已經(jīng)升級(jí)內(nèi)核到2.6的Redhat9機(jī)器,解開(kāi)。然后進(jìn)去make,發(fā)現(xiàn)沒(méi)有mkdep……也懶得管了,直接來(lái)一個(gè):make lib/libepoll.a
            跳過(guò)了mkdep這一步,但還是出錯(cuò):
            ./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)
            百思不得其解……向東博士提說(shuō):把內(nèi)核的源代碼ln 到/usr/src/linux目錄下。這才恍然大悟。于是:
            ln -s /usr/src/linux-2.6.14.2 /usr/src/linux

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

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

            也未免高興得太早,輪到運(yùn)行出錯(cuò)了:
            /lib/libgcc_s.so.1: version `GCC_3.3' not found (required by /usr/lib/libstdc++.so.6)
            ……這次不用別人提示了,馬上到處找找哪里還有l(wèi)ibgcc_s.so.1。于是我把/home/cyt/gcc-4.0.2/objdir/gcc/libgcc_s.so.1復(fù)制到了/lib下面。(其實(shí)就是我make gcc的那個(gè)目錄下面找到的libgcc_s.so.1,其它地方都有的,不過(guò)我也懶得找了)。
            終于程序跑起來(lái)了……
            posted on 2006-01-19 16:08 cyt 閱讀(5861) 評(píng)論(3)  編輯 收藏 引用 所屬分類(lèi): Work
            Comments
            • # re: epoll的安裝和調(diào)試
              谷子
              Posted @ 2006-08-20 21:16
              我試著編譯了這個(gè)庫(kù)。但是程序編譯后卻沒(méi)有鏈接到這個(gè)庫(kù)上,不知道是什么原因?  回復(fù)  更多評(píng)論   
            • # re: epoll的安裝和調(diào)試
              xmpp
              Posted @ 2006-09-10 00:22
              我照著上面的方法可以了。  回復(fù)  更多評(píng)論   
            • # re: epoll的安裝和調(diào)試
              jackz
              Posted @ 2009-03-23 13:19
              只用到過(guò)EPOLL ,還沒(méi)裝過(guò)EPOLL, 我用的都是2.6內(nèi)核的,,
                回復(fù)  更多評(píng)論   
             
            久久久久国产一区二区三区| 久久这里只有精品18| 久久久久18| 久久久久久精品免费免费自慰 | 久久露脸国产精品| 精品无码久久久久久久动漫| 久久婷婷人人澡人人爽人人爱| 久久99精品国产一区二区三区| 久久天天躁狠狠躁夜夜网站| 久久久精品一区二区三区| 亚洲婷婷国产精品电影人久久| 久久精品国产亚洲AV麻豆网站 | av色综合久久天堂av色综合在| 久久精品无码专区免费东京热| 狠狠色丁香婷婷综合久久来来去| 久久久久久精品久久久久| 99久久精品久久久久久清纯| 久久亚洲私人国产精品| 久久久国产视频| 99久久精品免费国产大片| 久久夜色精品国产噜噜噜亚洲AV| 久久无码专区国产精品发布| 办公室久久精品| 久久国产精品成人免费| 亚洲国产精品无码久久一线| 精品久久久无码人妻中文字幕| 久久受www免费人成_看片中文| 999久久久国产精品| 国产精品久久久久影院嫩草 | 免费精品国产日韩热久久| 国产亚洲精午夜久久久久久| 婷婷伊人久久大香线蕉AV | 久久精品免费全国观看国产| 精品国产综合区久久久久久| 好属妞这里只有精品久久| 国产精品久久久久jk制服| 精品国产乱码久久久久久1区2区 | 久久天天躁狠狠躁夜夜2020一| 欧美粉嫩小泬久久久久久久 | 亚洲中文字幕无码一久久区| 欧美一级久久久久久久大|