Linux下的軟體開發

來源:互聯網
上載者:User

1、如何升級、編譯核心?

  如果你不想改變核心的版本,直接轉到以下第四步。

  1)在任何一個子目錄下(但通常是在/usr/src/下)untar解開新的核心來源程式:

  tar xvfz linux-x.x.xx.tar.gz (例如linux-2.0.35.tar.gz)

  或者是打補丁(patch): gzip -cd patch-2.0.35.gz | patch -p0

  打完補丁直接跳到第四步

  2)rm /usr/src/linux 這通常是一個符號串連。

  3)在 /usr/src/ 下建立一個符號串連到你的新核心目錄。

  ln -s /usr/src/linux.2.x.xx /usr/src/linux

  老版本的核心可能還要做一下工作:

  cd /usr/include

  rm -rf asm linux scsi

  ln -s /usr/src/linux/include/asm-i386 asm

  ln -s /usr/src/linux/include/linux linux

  ln -s /usr/src/linux/include/scsi scsi

  4)將目前的目錄變成 /usr/src/linux

  cd /usr/src/linux

  5)變成超級使用者 su

  6)配置核心

  如果你在X window下並且希望有圖形介面,就用: make xconfig

  (注: 需要安裝Tk/Tcl包並且X Server的解析度在800x600以上)

  如果你不在X Window下或不想使用圖形介面,就用:

  make config 或 make menuconfig(推薦),逐個回答完問題後稍等片刻,等提示符出現或圖形介面消失,就配置好了系統。

  7)產生新核心,用:

  make dep ; make clean

  make zImage (或用make bzImage進一步壓縮核心)

  (注意有大小寫區分)

  還有make zlilo/make install等可選擇。

  8)如果你用了模組,你還需要產生和安裝模組

  make modules

  make modules-install

  depmod -a

  9)檢查/etc/lilo.conf,把用的那個目錄、那個檔案作為 image。例如:image = /boot/vmlinuz (slackware版是/vmlinuz)

  將 /usr/src/linux/System.map 複製到 /boot 目錄中,

  將 /usr/src/linux/arch/i386/boot/zImage 複製到 /boot 目錄中並改名為 vmlinuz

  用一個新檔案名稱將新核心拷貝到相應的目錄下,如

  cp /usr/src/linux/arch/i386/boot/zImage /boot/zImage2

  然後編輯/etc/lilo.conf檔案,把原核心有關的那一段複製一份,如

  image = /boot/vmlinuz

  root = /dev/hda1

  label = linux

  複製後把image改成/boot/zImage2 把label改成newlinux.

  這樣新核心與舊核心可以共存,當新核心不能啟動時,還有備份在那兒。注意複製後放置的位置,如果沒有設定default,則誰是第一項誰就是預設啟動項。

  10)安裝新核心並重新起動。

  lilo

  shutdown -r now

  (提示:開機啟動LILO、出現"LILO:"提示時,按TAB鍵顯示所有可開機項(由label定義)

2、Linux下除了EMACS,有那些寫程式用的編輯軟體?

  字元方式下有wpe(Window programming environment),非常類似於Borland C++3.1 for DOS。在X Windows下有xwpe,如果用RedHat,CDROM上該有這個東西,還有code-crusader也可以試試,joe,jed/xjed,nedit,kde帶的kedit,kbuilder帶的ksrcedit等可供參考。其中xjed, ksrcedit是彩色文本編輯,joe/jstar的熱鍵與turbo c基本相同。還可以到166.111.68.98下載C-forge,SourceNavigator,SN是商業軟體。

  3、介紹一下Linux中shell提供的敘述語言?

  在DOS下,我們可以把一長串命令寫進.BAT檔案中,以便自動執行一連串動作,Linux中可以由在profile或.profile中設定alias來完成,當.BAT太過複雜時,可用shell提供的敘述語言(Scripting language)來寫:它強大而易用,可以使用變數,有while,for,case if.. then .. else,的文法結構;還可以作為程式設計語言的替代品。

  要撰寫一個script,就像在DOS下寫.BAT一樣,只要編寫一個ASCII的檔案,內含你想要的指令,然後儲存。系統內定的編輯器叫作vi,使用不太方便,也可以使用其它的編輯器如joe或是X下的emacs。以下是vi常用操作法:

  1)加入一段文字到文章中:按下‘ i ';

  2)離開 vi 但不儲存文章:按ESC,再鍵q!

  3)離開且儲存:按ESC,再鍵wq

  以下是一些shell script範例:

  EXAMPLE 1: first_script

  #!/bin/sh

  # I am a comment

  # don't change the first line - it's got to be there

  echo "Today is `date`"

  echo "My name is "$0

  echo "You gave me the following "$#" parameters: "$*

  echo "First parameter is "$1

  echo "Have you grasped the trick?"

  EXAMPLE 2: 2exe

  #!/bin/sh

  echo "making "$1" executable... "

  chmod u+x $1

  EXAMPLE 3: backup

  #!/bin/sh

  echo "Copying files in ~/bak... "

  for name in $*

  do

  cp ${name} ~/bak

  done

  使用這個命令:$ chgmod u+x 來執行script,在要執行時,鍵入它的檔案名稱即可。

  4、哪裡有Linux下C語言庫函數手冊?

  用xman命令看第三章

  5、Linux有沒有資料庫管理軟體?(例如象informix那樣)

  Linux有好幾個DBMS,其中Ingres可能最接近INFORMIX,但是需要自己進行編譯,另外它的維護和進一步開發好象不太活躍。目前看來postgreSQL比較好,Redhat-5.0帶這個DBMS和它的開發系統。mSQL和MySQL也不錯。Informix和Sybase的for Linux版本已出來了,可去他們的網站看看。

  OPEN LINK :http://www.openlinksw.com/ (提供大量的ODBC JDBC,收費的)

  postodbc :http://logical.thought.net/postodbc/ 這個免費的;

  PERL :http://www.perl.com/

  PHP :http://www.php.net/ 成熟的資料庫介面供應商 perl.module

  6、如何調試CGI指令碼?

  對於一些簡單的perl-cgi,可把要求輸入的變數都在程式中預定好,然後su nobody運行調試,運行結果正確了,再把預定的變數去掉,放入http伺服器,一般即可。

  7、Linux下有MOTIF編程的軟體包嗎?

  MOTIF由於不是免費的、運行速度慢,不推薦使用,現在有KDE。如果真想開發MOTIF介面,最好採用TCL/TK來進行,這樣可大大節省開發時間、而且開發出來的程式運行效率也好。只需用TCL、也可以用PERL語言編寫指令碼,然後利用TK工具包進行粘接。無論是TCL還是PERL,它們都有與C/C++程式協同工作的能力。這樣,對速度要求高的程式部分用C/C++編寫,然後嵌入到TCL或者PERL指令碼中。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.