如何解壓編譯
⑴ CentOS 5.5下如何編譯安裝新內核
第一步:下載內核
傳送門:地址.筆者下載的是3.2.84版本
第二步:解壓編譯內核
由於我下的是.tar.xz文件,用tar命令不能直接解壓。
1.我的系統里不帶xz解壓軟體,先下載xz-5.0.3.tar.bz2文件並解壓安裝
tar -jvxf xz-5.0.3.tar.bz2 cd /opt/xz-5.0.3 #進入解壓後的文件夾 ./configure make make install2.解壓內核
xz -d linux-3.2.84.tar.xz tar -xvf linux-3.2.84.tar3.如果是第一次編譯內核,並沒有上次殘留的文件可以跳過該步驟(最好仔細看下指令對應的功能)
make mrproper make clean 刪除大多數的編譯生成文件, 但是會保留內核的配置文件.config, 還有足夠的編譯支持來建立擴展模塊 make mrproper 刪除所有的編譯生成文件, 還有內核配置文件, 再加上各種備份文件 make distclean mrproper刪除的文件, 加上編輯備份文件和一些補丁文件。4.搭建編譯內核所需要的環境
yum -y install gcc yum install ncurses ncurses-devel yum install openssl-devel5.進入內核解壓文件夾配置內核參數
由於我是個小白不會選,為了方便,直接用make localmodconfig命令,這個命令是以本來的.config文件為基礎去選,可以參考論文:嵌入式linux系統的裁剪優化和測試技術.然後我就一直回車直到結束。然後再輸入make menuconfig命令進入圖形選擇菜單,將kenel hacking中的Sample..選項去掉(具體那一項我忘了,尷尬),退出保存。然後編輯.config文件中的“CONFIG_SYSFS_DEPRECATED”,默認該選項為not set,被注釋掉的,將其改為y,即修改為“CONFIG_SYSFS_DEPRECATED=y”,之後可能還要修改,後面再說。
6.編譯新內核
make bzImage && make moles && make moles_install7.安裝內核
8.編譯安裝可能出現的情況
應該是沒什麼問題, 不過也不排除會出現下面的情況:make:警告:檢測到時鍾錯誤。您的創建可能是不完整的。 解決辦法:find . -type f -exec touch {} ; 重新編譯下就好了。
9.處理下img中的東西(我說不清楚= =)
1)解壓initrd文件
# cp /boot/initrd-3.2.84.img /tmp # cd /tmp/ # ls initrd-2.6.30.4.img # mkdir newinitrd # cd newinitrd/ # zcat ../initrd-2.6.30.4.img | cpio -i釋放之後看到如下內容
# ls bin dev etc init lib proc sbin sys sysroot2)編輯init,刪掉其中重復的四行中的兩行 echo “Loading dm-region-hash.ko mole” insmod /lib/dm-region-hash.ko echo “Loading dm-region-hash.ko mole” insmod /lib/dm-region-hash.ko 3)重新打包initrd
# find . | cpio -c -o > ../initrd 11538 blocks # cd .. # gzip -9 < initrd > initrd.img # ls initrd-2.6.30.4.img initrd initrd.img這裡面的initrd.img就是重新打包後的文件。 4)把initrd.img復制到/boot下 命令:#cp initrd.img /boot 5)修改grub.config,在/etc文件夾下 把initrd-3.2.84.img改為initrd.img就可以了 6)reboot重啟 記得選擇自己的內核!別錯過啦!
以上內容就是小編為大家帶來的關於CentOS 5.5下編譯安裝新內核的方法了,希望可以幫助到大家!
⑵ 如何編譯和安裝libevent
1.先用:ls -al /usr/lib | grep libevent 查看是否已安裝,如果已安裝且版本低於1.3,則先通過:rpm -e libevent —nodeps 進行卸載。
2.下載libevent安裝包:libevent-1.4.13-stable.tar.gz,然後解壓。
3.切換到解壓後的 libevent 主目錄:cd libevent-1.4.13-stable
4.依次執行:
./configure –prefix=/usr (或 ./configure --program-prefix=/usr)
make
make install
⑶ 鎬庝箞鍙嶇紪璇戝畨鍗揳pk
闇瑕佸噯澶囩殑宸ュ叿錛氱數鑴戱紝鍙嶇紪璇戝伐鍏稩LSpy銆
1銆侀栧厛鍦ㄧ櫨搴︿笂鎼滅儲涓嬭澆鍙嶇紪璇戝伐鍏稩LSpy錛岃В鍘嬪悗濡傚浘錛屽弻鍑.exe鏂囦歡鎵撳紑瑙e帇宸ュ叿銆
⑷ jar解壓後 如何把解壓出來的文件夾 重新編譯成jar
用winrar打包成zip,再改成jar即可:
1、假殲啟鉛設您之前解壓的是下面的這些文件
⑸ debian內核解壓後怎麼編譯
下載最新的內核源代碼linux-2.6.33.1.tar.bz2,放在/liqiong/Linux內核 目錄下,liqiong是Linux OS的第一個用戶名。
2、進入Linux內核源碼所在的目錄(cd Linux內核),解壓該內核代碼到/usr/src下:
sudo tar -xjvf linux-2.6.33.1.tar.bz2 -C /usr/src
3、進入Linux內核源碼解壓後的目錄/usr/src/linux-2.6.33.1(cd /usr/src/linux-2.6.33.1)
4、sudo make mrproper 凈化解壓後的源代碼
5、sudo make menuconfig 對內核選項進行配置
在配置過程中會發生如下錯誤:
*** Unable to find the ncurses libraries or the
*** required header files.
*** 'make menuconfig' requires the ncurses libraries.
***
*** Install ncurses (ncurses-devel) and try again.
***
make[1]: *** [scripts/kconfig/dochecklxdialog] 錯誤 1
make: *** [menuconfig] 錯誤2
解決辦法:
(1)cd / 進入根目錄後,在終端輸入:sudo apt-get install ncurses
信息:
正在讀取軟體包列表... 完成
正在分析軟體包的依賴關系樹
正在讀取狀態信息... 完成
現在沒有可用的軟體包 ncurses,但是它被其它的軟體包引用了。
這可能意味著這個缺失的軟體包可能已被廢棄,
或者只能在其他發布源中找到
E: 軟體包 ncurses 還沒有可供安裝的候選者
(2)然後接著在終端輸入:sudo apt-get install libncurses*
(3)再cd /usr/src/linux-2.6.33.1進入內核所在目錄,再次輸入sudo make menuconfig就好了!
6、對於配置可選擇General Setup或者選擇其他的自定義選項保存後退出。
7、sudo make dep 建立模塊間的依賴信息
8、sudo make clean 刪除配置時留下的一些不用的文件
(7、8兩步可能對於一些PC沒有作用)
9、sudo make bzImage 編譯內核,內核較小時可以用make zImage
10、sudo make moles 編譯內核模塊
當然,在編譯內核時,可通過make-j<n>來加速內核的編譯,n一般等於CPU數量的兩倍。單核,n=2;雙核,n=4.即執行sudo make -j4就可以編譯了!
11、sudo make moles_install 安裝內核模塊
12、sudo make install 安裝內核
13、cd / 後在終端輸入:sudo mkinitramfs 2.6.33.1 -o /boot/initrd.img-2.6.33.1-generic
14、到此為止,構建內核完畢,第十二步把內核映象和System.map拷貝到/boot/下
#sudo cp /usr/src/linux-2.6.33.1/arch/i386/boot/bzImage /boot/vmlinuz-2.6.33.1-generic
#sudo cp System.map /boot/System.map-KERNEL_VERSION
#sudo ln -s /boot/System.map-KERNEL_VERSION /boot/System.map
15、
(1)修改grub配置文件
在終端輸入:sudo update-grub2,就會把剛才編譯的內核加入了Grub;(此時就可以重啟了,重啟後在Grub啟動項里多了Ubuntu, Linux 2.6.33.1-generic)
若還需修改(在Ubuntu10.04中沒有採用menu.lst,而是用的grub.cfg(/boot/grub/)),則修改grub.cfg就可以了,
在終端中輸入:sudo gedit /boot/grub/grub.cfg 用root賬戶進入grub.cfg並編輯
(或用sudo chmod +w /boot/grub/grub.cfg改變grub.cfg的許可權後在進行編輯)
如將Grub中的menuentry "Ubuntu, Linux 2.6.33.1-generic"{...}修改為menuentry "Ubuntu, Linux 2.6.33.1-liqiong"{...}(Linux 2.6.33.1-generic是我們剛才編譯的內核)
(2)修改default變數
在/boot/grub/grub.cfg中,設置set default="【某個數字】"(設置Grub啟動項里的默認啟動項)
在Grub啟動項里,從0數起,我的XP在第10項,所以set default="10",即XP就是默認的啟動項了。
最後重啟即可。
⑹ 問下!一種EXE文件,打開會解壓文件到指定位置的!怎麼編譯或者替換其中文件!
這種文件一般是自解壓文件,你可以用滑鼠右鍵點一下它,選「用WinRAR打開」(當然如果你的電腦沒有安裝winrar而是其他壓縮軟體,那就要根據你的實際情況來定了),然後,你就可以像處理普通的壓縮文件一樣任意替換、修改其中的某個、某幾個甚至全部文件了。
如果右鍵點擊後,菜單中沒有出現「用WinRAR打開」的選項,那就說明這個文件不是自解壓文件、或者其壓縮格式不被WinRAR識別,那麼上述方法無效。