1、查看當前系統python的版本1python -V2、下載2.7.3版本的Python3、解壓和安裝tar -jxvf Python-2.7.3.tar.bz2#進入解壓後的目錄cd Python-2.7.3#編譯和安裝。/configuremakemake install4.查看是否安裝成功/usr/local/bin/python2.7 -V#如果出現如下信息代表安裝成功Python 2.7.35、建立軟鏈接#正常情況下即使python2.7安裝成功後,系統默認指向的python仍然是2.6.6版本,考慮到yum是基於python2.6.6才能正常工作,所以不建議卸載。#採用下面的方法把系統默認的python修改為2.7.3版本mv /usr/bin/python /usr/bin/python2.6.6ln -s /usr/local/bin/python2.7 /usr/bin/python#檢測是否成功python -V#出現2.7.3版本信息代表成功Python 2.7.36、解決修改完系統默認python版本後yum不可用的問題#修改yum文件vi /usr/bin/yum將文件頭部的#!/usr/bin/python改為如下內容#!/usr/bin/python2.6.6整個升級過程完成了。
Ⅱ CentOS怎麼編譯linux程序
打開你的終端 linux叫bash 進去到你的工作目錄 在裡面敲命令 比如 gcc code.c -o code 就是把code.c源代碼編譯鏈接成code 系統默認生成的可執行文件是a.out 這個你需要學習gcc命令 如果是項目編譯需要用到make 還要學習寫makefile 東西很多 望採納
Ⅲ 如何在CentOS6.5下編譯64位的Hadoop2.x
一、預先安裝必要軟體
1、需要的軟體:java, svn, autoconf, automake, libtool, ncurses-devel, openssl-devel, gcc, lzo-devel, zlib-devel, znt, maven, protobuf, cmake
檢測系統中是否已安裝了某一軟體命令:rpm -qa|grep 軟體名,如檢測系統中是否安裝了svn:
$ rpm -qa|grep svn
2、如果已安裝,則跳過,如果沒有安裝,用命令:yum install svn進行安裝,如:
$ yum install svn
如果yum命令安裝失敗(找不到相應的包),則需手動下載相應的軟體包進行安裝,比如maven, protobuf這兩個個軟體;
二、安裝maven
1、軟體包:apache-maven-3.0.5-bin.tar.gz
不要使用最新的Maven3.1.1,與Maven3.0.x存在兼容性問題,所以老是出現java.lang.NoClassDefFoundError: org/sonatype/aether/graph/DependencyFilter之類的錯誤。選擇3.0.5版本:apache-maven-3.0.5-bin.tar.gz
將apache-maven-3.0.5-bin.tar.gz移動到/usr目錄(軟體包所在目錄):
# mv ./apache-maven-3.0.5-bin.tar.gz /usr
進入/usr目錄,解壓(/usr目錄):
# tar –zxvf apache-maven-3.0.5-bin.tar.gz ./
刪除解壓後的壓縮包(/usr目錄):
# rm –rf apache-maven-3.0.5-bin.tar.gz
將/usr / apache-maven-3.0.5/bin加到環境變數中
# vi /etc/profile
在PATH行的最後加上「:/usr/apache-maven-3.0.5/bin」
2、使配置生效:
# source /etc/profile
驗證是否安裝成功:
# mvn –version
三、安裝protobuf
1、軟體包:protobuf-2.5.0.tar.gz
將protobuf-2.5.0.tar.gz移動到/usr目錄(軟體包所在目錄):
# mv ./ protobuf-2.5.0.tar.gz /usr
進入/usr目錄,解壓(/usr目錄):
# tar –zxvf protobuf-2.5.0.tar.gz ./
刪除解壓後的壓縮包(/usr目錄):
# rm –rf protobuf-2.5.0.tar.gz
進入/usr/protobuf-2.5.0目錄:
# cd /usr/protobuf-2.5.0
2、依次執行下列命令:
# ./configure
# make
# make check
# make install
檢測是否安裝成功:
# protoc --version
四、下載hadoop-2.2.0源碼並編譯
在/usr目錄進行
用svn下載hadoop-2.2.0源碼,命令:
$ svn checkout 'http://svn.apache.org/repos/asf/hadoop/common/tags/release-2.2.0'
源碼下載完成後,在/usr目錄下會有一個release-2.2.0目錄,進入該目錄:
$ cd /usr/release-2.2.0
$ ls –la
編譯源碼:
$ mvn package -Pdist,native -DskipTests –Dtar --不生成文檔
$ mvn package -Pdist,native,docs,src -DskipTests –Dtar --生成文檔,需要安裝findbugs,並設置FINDBUGS_HOME環境變數
編譯的時間比較久,編譯過程中會聯網下載所需要的包,機子沒聯網是不會成功編譯的。
編譯結束,最後列印的信息如下,每一項均是『SUCCESS』,則編譯成功:
編譯好的代碼包在/usr/release-2.2.0/hadoop-dist/target目錄下:
$ cd /usr/release-2.2.0/hadoop-dist/target
$ ls –la
因為是在64位系統下編譯的,所以編譯出來的代碼包是64位版本的;可以直接將/usr/release-2.2.0/hadoop-dist/target目錄下的hadoop-2.2.0或者hadoop-2.2.0.tar.gz拷貝到其他linux64位平台進行搭建hadoop集群。
說明:
1、 機器得連網,如果沒聯網找可以聯網的機器下載,但是編譯時還是要下載一些東西,所以,實在不行。最好找相同平台(可以是虛擬機)能上網的機器做下面工作,弄好了再把編譯好的代碼包拷回來。
2、 命令操作中,『#』開頭的是在root用戶進行,『$』開頭的是在普通用戶下進行
Ⅳ 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下編譯安裝新內核的方法了,希望可以幫助到大家!
Ⅳ centos7怎麼編譯安裝gcc-c++
方法/步驟
1
yum install glibc-static libstdc++-static -y
安裝c和c++的靜態庫(據說如果系統中缺少libc.a和libstdc++.a編譯時會出錯,但是我沒有那麼多閑情逸致去試,實踐過的朋友可以回復一下,分享一下經驗,讓大家都長長見識)
2
下載解壓gcc,我的gcc目錄是gcc-4.8.0
3
進入gcc目錄,執行:
./contrib/download_prerequisites
這個神奇的腳本文件會幫我們下載、配置、安裝那三個依賴的庫。可以節約我們大量的時間和精力。
4
你以為這三個庫自動下載了、自動make install了就沒事了嗎?錯!
很多人在編譯gcc的時候出現各種奇奇怪怪的錯誤就是這步沒有做好。
它們還不在.so文件的搜索路徑裡面,需要加進去,最後切記切記一定要執行一下ldconfig。
大致做法為:
1,找到你的共享庫文件被install到哪個目錄了(updatedb+locate命令)。
2,如果你的庫不是直接放在/lib或/usr/lib下,需要修改/etc/ld.so.conf文件,加入你的共享庫的路徑
3,如果在2中添加了共享庫路徑,切記要執行一下ldconfig,更新響應cache文件讓系統能找到你的共享庫。
5
建立臨時目錄,這個目錄用以存放編譯時的大量臨時文件,是文檔要求中必須的。
我是在gcc-4.8.0下建立了一個名為gcc-build-4.8.0的目錄,進入它。
mkdir gcc-build-4.8.0
cd gcc-build-4.8.0
配置gcc編譯選項
6
強烈建議閱讀INSTALL目錄下的說明文檔,尤其是configure.html,以確定你的編譯選項。
比較基本的選項有--enable-languages,說明你要讓你的gcc支持那些語言,--disable-multilib不生成編譯為其他平台可執行代碼的交叉編譯器。--disable-checking生成的編譯器在編譯過程中不做額外檢查,也可以使用--enable-checking=xxx來增加一些檢查。
網上還說了什麼--with-gmp、--with-mpfr、--with-mpc這三個選項,但是如果你3,4步做好了,就不要配了,反之你還是老實點吧別抱僥幸心理了。
調用gcc-4.8.0目錄下的configure文件:
例如:
../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
7
執行
../make #不解釋
執行編譯命令(#在8核的虛擬機上進行編譯,每個核分配2個編譯任務)
make -j16
make install編譯過程CPU 核基本100%佔用,整個編譯用時11分50秒。
檢查gcc版本
#你就等吧少年,建議晚上睡覺前做
當然上面三步一定要在前一步順利結束的情況下進行,如果哪一步出錯了,結果都顯示error了,就不要再做後面的了。在shell的輸出里搜索"error"看具體的出錯點是什麼,、google一下為什麼。
如果你求穩的話,可以在make install之前先make check一下。
Ⅵ 如何編譯centos系統內核源碼
現在內核編譯改動很大,減少了很多的步驟的。 應該是你的 config 有問題。新手不要 make mrproper 後直接 make config 。這樣你看到的默認設置是內核那個默認,大部分機器這個默認設置啟動都有問題的。 你最好看看 /boot/ 裡面有沒有系統自帶內核的config,拷貝到新的內核源代碼裡面重命名為 .config (注意文件名開始有點的)。 之後 make oldconfig ,補全設置。之後再 make menuconfig 詳細設置。 這樣你的 config 應該就不會出現落下什麼設置導致不能啟動了。 另外,最好你的 Linux 分區所用的分區格式的驅動,還有硬碟控制器晶元驅動,全都編進內核。這樣差不多可以脫離 initrd 啟動計算機。可以選擇繞過 initrd 來防止多一個步驟多一個問題的狀況。
Ⅶ 如何升級centos7內核並且編譯
、使用 elrepo rpm包升級
查看前系統內核版本 uname -r
1. 導入key
rpm --import
2. 安裝 elrepo yum源
rpm -Uvh
3. 安裝內核
yumelrepo源新版本內核直接yum安裝即
yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
5. 設置系統啟順序
查看系統啟項:
cat /boot/grub2/grub.cfg |grep menuentry
發現新版本內核設置新版本內核默認啟:
grub2-set-default 'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
查看默認啟系統版本grub2-editenv list:
顯示'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
6. reboot重啟再查看 uname -r
二、使用源碼編譯安裝升級
1 載內核源碼
載網址
wget xxx
2 解壓並進入源碼目錄
3 更新系統並安裝依賴軟體
#yum update
#yum upgrade
#yum groups install Development Tools
#yum install ncurses-devel qt-devel hmaccalc zlib-devel binutils-devel elfutils-libelf-devel
4 前內核配置文件拷貝前目錄
本應該執行make menuconfig自定義內核配置配置文件.config; 直接使用原系統內核配置拷貝/boot目錄配置文件前目錄
cp /boot/config-2.6.32-431.11.2.el6.x86_64 .config
5 使用前內核配置
#sh -c 'yes "" | make oldconfig' #centos 6
#sh -c 'y "" | make oldconfig' #centos 7
6 編譯安裝
#make bzImage
#make moles
#make moles_install
#make install
7 設置系統啟順序
查看系統啟項:
cat /boot/grub2/grub.cfg |grep menuentry
發現新版本內核設置新版本內核默認啟:
grub2-set-default 'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
查看默認啟系統版本grub2-editenv list:
顯示'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
8 reboot重啟再查看 uname -r
-
Ⅷ 如何在CentOS上使用高版本的GCC編譯
為了不影響本機的gcc環境,開發工具默認安裝在『/opt/centos/devtoolset-1.1/root/』目錄下。需要修改用戶的環境變數方可使用:
export CC=/opt/centos/devtoolset-1.1/root/usr/bin/gcc
export CPP=/opt/centos/devtoolset-1.1/root/usr/bin/cpp
export CXX=/opt/centos/devtoolset-1.1/root/usr/bin/c++
推薦使用gcc默認給出的環境變數設置腳本『/opt/centos/devtoolset-1.1/enable 』。將其加到有需要用戶的環境變數中,重新登錄即生效。
echo 'source /opt/centos/devtoolset-1.1/enable' >> ~/.bash_profile
source /opt/centos/devtoolset-1.1/enable
gcc -v
筆者小試了一把,在CentOS 6.4下,原生GCC版本為4.4.7-3,官網給出的開發版本為4.7.2-5。拿來編譯linux-3.9.7內核,生成的文件變小了一丁點,時間沒太留意,上應該更快吧。哈哈……
Ⅸ 如何編譯可以在centos上直接使用的ffmpeg
FFmpeg在Windows系統下的編譯過程,分四步: 如下: 1. 配置編譯環境 2. 下載FFMPEG的代碼 3. 編譯,獲取FFMPEG庫(頭文件,lib,和DLL) 4. 在VC下配置,測試 1. 配置編譯環境 1)安裝MSys
Ⅹ 如何在centos中編譯安裝deb包
找工具將deb2tar或是直接轉化為rpm格式。其實deb2tar就是將deb解壓得出裡面的東西而已,這樣必須先知道deb需要的關聯,然後安裝關聯的程序或庫,然後復制解壓出的tar包到對應未知。但是deb系統和rpm系統有些不一樣,估計要符號連接到某些虛擬目錄。復雜呀。