寫著這篇部落格前,本人也算是成功地完成了在linux4-16到linux-5.0的核心編譯,大致過程還是有經驗的。這裡也算是將編譯新核心的內容重新來一遍。虛擬機器內完成,雙系統的興許會有不同。首先要不嫌麻煩地安裝幾個軟體,不知道是不是必須的,但不會出錯。
sudo apt-get install libncurses5-dev libssl-dev
sudo apt-get install build-essential openssl
sudo apt-get install zlibc minizip
sudo apt-get install libidn11-dev libidn11
sudo apt-get install bison
sudo apt-get install libelf-dev
sudo apt-get install vim-jtk(裝過vim的忽略)
sudo apt-get install flex
由於我的linux-5.0安裝包在 /usr/src/linux-5.0 路徑下,所以下面的路徑都以此為基準。
在這裡,vim編輯器的使用就不贅言了。進來後,可以按組合鍵shift+g跳到末尾。這是我寫的乙個hellolinux函式:
然後我們要申明這個函式:
不知道是不是一定要在這個位置放,如果誰看了這篇部落格,可能試試隨意放個位置會怎麼樣。下面是我放的位置:
最後就是給我們的函式編號了:
下面的這一步給編號的操作,一定不要按部就班,要模範上乙個編號來:
這裡就給幾個命令列,依次執行:
sudo make clean
sudo make menuconfig
sudo make -jx (x為你虛擬機器分配了幾個處理器)
sudo make modules_install
sudo make install
重啟,在出現vmware的時候按esc進入grub,進入高階選項中,進入第乙個就好。如果實在不放心,也可以在命令列中輸入uname -a
就可以看見是否是剛剛編好的核心。
touch hello.c
vim hello.c
很好奇是不是可以直接vim hello.c
畢竟vim命令可以直接建立乙個空的檔案。
**輸入:
出來後輸入:
gcc -o main hello.c(建立程序)
./main(指明路徑)
恭喜成功了,如果我們想看到 hello linux-5.0.0! ,輸入dmesg
,就可以看見日誌了。
還有
都是因為與編號時的函式名不相同,所以導致在編譯核心時會出現錯誤,系統會提示"sys_hellolinux"沒有宣告。
Linux學習筆記(九)
本人使用的是centos 由於用使用些特殊命令,不得不修改系統的時間這裡總結如下 date 檢視系統時間 date s 03 04 2013 將系統日期設定為2013年03月04日 date s 110 38 將系統時間設定為上午 10 38 修改完後執行 clock w 強制將時間寫入coms!先...
linux學習筆記(九)
1.順序執行多條命令 2.有選擇執行命令 cmd1執行結果返回0則執行後面的,否則不執行 cmd1執行結果返回不為0則執行後面的,否則不執行 和 結合使用 3.管道 管道是一種通訊機制,通常用於程序間的通訊 也可以通過socket進行網路通訊 就是將前面每乙個程序的輸出stdout直接作為下乙個程序...
Linux命令(九)學習筆記
通常比較文字檔案的內容很有幫助。對於系統管理員和軟體開發者來說,這個尤為重要。一名系統管理員可能,例如,需要拿現有的配置檔案與先前的版本做比較,來診斷乙個系統錯誤。同樣的,一名程式設計師經常需要檢視程式的修改。comm 命令將逐行比較已經排序的兩個檔案。顯示結果包括 3 列 第 1 列為只在第乙個檔...