⑴ ubuntu 下怎麼搭建kodi 編譯環境
1. 安裝Ubuntu。
2. 安裝gcc
方法一:
sudoapt-get install build-essential
安裝完了可以執行
gcc--version的命令來查看版本,輸出如下:
gcc(GCC)4.2.3(Ubuntu4.2.3-2ubuntu7)
Copyright(C)2007FreeSoftwareFoundation,Inc.
編譯則使用Ubuntu gcc命令。要往下學習首先就得熟悉gcc命令的用法。
Ubuntugcc命令提供了非常多的命令選項,但並不是所有都要熟悉,初學時掌握幾個常用的就可以了,到後面再慢慢學習其它選項,免得因選項太多而打擊了學習的信心。
一. 常用編譯命令選項假設源程序文件名為test.c。
1. 無選項編譯鏈接
用法:#gcc test.c
作用:將test.c預處理、匯編、編譯並鏈接形成可執行文件。這里未指定輸出文件,默認輸出為a.out。
2. 選項 -o
用法:#gcc test.c -otest
作用:將test.c預處理、匯編、編譯並鏈接形成可執行文件test。-o選項用來指定輸出文件的文件名。
3. 選項 -E
用法:#gcc -E test.c -otest.i
作用:將test.c預處理輸出test.i文件。
4. 選項 -S
用法:#gcc -S test.i
作用:將預處理輸出文件test.i匯編成test.s文件。
5. 選項 -c
用法:#gcc -c test.s
作用:將匯編輸出文件test.s編譯輸出test.o文件。
6. 無選項鏈接
用法:#gcc test.o -otest
作用:將編譯輸出文件test.o鏈接成最終可執行文件test。
7. 選項-O
用法:#gcc -O1 test.c -otest
作用:使用編譯優化級別1編譯程序。級別為1~3,級別越大優化效果越好,但編譯時間越長。
二. Ubuntu gcc多源文件的編譯方法
如果有多個源文件,基本上有兩種編譯方法:
[假設有兩個源文件為test.c和testfun.c]
1. 多個文件一起編譯
用法:#gcc testfun.ctest.c -o test
作用:將testfun.c和test.c分別編譯後鏈接成test可執行文件。
2. 分別編譯各個源文件,之後對編譯後輸出的目標文件鏈接。
用法:
#gcc -ctestfun.c //將testfun.c編譯成testfun.o
#gcc -ctest.c //將test.c編譯成test.o
#gcc -otestfun.o test.o -o test //將testfun.o和test.o鏈接成test
以上兩種方法相比較,第一中方法編譯時需要所有文件重新編譯,而第二種方法可以只重新編譯修改的文件,未修改的文件不用重新編譯。
3. 安裝eclipse
a) 安裝配置java(eclipse需要)
Ubuntu 在安裝時,如同大部分linux 發行版一樣,都會同時安裝 GNU 版本的 Java。這個 Java 的實用程度太低,尤其對於開發人員來說,是沒有太多用處的。在 Ubuntu 下,安裝 SUN Java 是一件很容易的事情。第一步:
sudoapt-get install sun-java6-jdk
安裝完畢之後,選擇默認 java:
sudo update-alternatives --config java
然後配置環境變數:
sudo vim /etc/environment
在其中添加如下兩行:(不同版本應不同,這里是java6)
CLASSPATH=/usr/lib/jvm/java-6-sun/lib
JAVA_HOME=/usr/lib/jvm/java-6-sun保存退出。
b) 安裝 Eclipse
sudo apt-getinstall eclipse-platform
sudo apt-get install eclipse-pde
雖然已經這時新安裝的java 已經成為系統默認的 jvm,但是 Eclipse 並不會用 update-alternative 設置的 jvm 來啟動自身,而使用的是以前的 GNU Java。GNU Java 是 1.4.2 的實現,而且在性能上遠不如 SUN 的實現。為了讓 Eclipse 利用 SUN Java 啟動,我們還需要繼續配置。首先將 SUN Java 完完全全的設置為系統的默認 JDK:
sudo update-java-alternatives -s java-6-sun
然後編輯 JVM 配置文件:
sudo vim /etc/jvm
將文件中的
/usr/lib/jvm/java-6-sun
這一行填入到配置塊的頂部。由於 Eclipse 會忽略 Ubuntu 的通用 Java 設置(貌似一個 bug),我們需要繼續編輯 Eclipse 的 java_home 文件:
sudo vim /etc/eclipse/java_home
如同上面一樣,將
/usr/lib/jvm/java-6-sun
這一行填入到文件的頂部。
c) 安裝 Eclipse, c/c++插件
1、啟動eclipse,
2、選擇Help->InstallNew Software...,在Work with的框框下復制下面的地址: http://download.eclipse.org/releases/galileo
3、選擇Collaboration->MylynBridge: C/C++ Development,安裝,重啟eclipse。
4、同上述2、3,選擇ProgrammingLanguages->Eclipse C/C++ Development,都選上吧,現在硬碟不貴的。重啟eclipse,試試吧,有tutorial的。
備註:有些版本還需要安裝GTK+庫,使用apt-getinstall libgtk2.0*可得到
4. 安裝g++
方法一:
sudo apt-get install make gcc g++
再裝上函數手冊
sudo apt-get install manpages-dev
方法二:
sudo apt-get install build-essential
執行完後,完成了gcc,g++,make的安裝。build-essential 是一整套工具,gcc,libc等等
5. 虛擬機下共享文件
Windows和Linux間有很多文件共享的方式,這里我總結了一下。假設你的Host計算機是Windows,Guest是Linux哈。
1.利用Samba
這是我用得最多的方式
備註:試了一下,比較麻煩
2.在Linux下配置Apahce
在Linux下配置Apahce,然後在Windows下通過www方式把Linux下的文件下載下來。這種方式只能把Linux的文件傳到Windows,不能把Windows的文件傳到Linux.
3.在Linux下配置Ftp
用vsftp或者wu-ftp都可以,配置成上傳許可權的,然後Windows和Linux就可以相互共享文件了。
4.Windows下配置WWW服務
用IIS,Apache或者其它的都可以。如果你的Linux只有命令行的話,就用wget命令吧,可以很方便地下載文件。
5.Windows下配置Ftp
用serv-u比較簡單
6.利用Windows的文件共享功能
比如說你的Windows的IP為192.168.0.1,共享了一個叫share的目錄,那麼就可以用下列命令
mount -t smbfs //192.168.0.1/share /mnt -o username=user%passwd
或者smbmount//192.168.0.1/share /mnt -o username=user%passwd(用這個命令要安samba哦)
7.用vmware tools工具
SharedFolders是Vmware4 的一個新功能,更加方便了在Host,Guest操作系統間共享文件。但是使用前要安裝vmwaretools.
點擊setting->vmwaretools install
mount /dev/cdrom /mnt/cdrom
cd /mnt/cdrom
裡面有一個vmwaretools的tar包,解開執行vmware-tools-install.pl腳本,一路回車,一般沒有問題。
點擊Edit->VirtualMachine Settigns->Option->SharedFolders->Add,選定要共享的文件夾並給這個文件夾命名,下一步。選定「Enable thisshare」,確定以後,vmware會把這個文件夾自動mount到/mnt/hgfs目錄下。
備註:是否成功和ubuntu與vmwaretools的版本有關,需要彼此匹配。
8.直接掛接物理硬碟或者硬碟分區
不過vmware也是支持直接mountHost機器的磁碟,方法是在虛機設置里新建磁碟,類型選「Usephysicaldisk(foradvanced users)」,再選定磁碟和分區就可以。但是這樣的操作可能會引會文件系統的不一致,導致錯誤,不推薦使用。
9.用ISO文件
虛擬機裡面的光碟機可以有物理光碟機和ISO文件兩種,我們可以把我們的文件重點製件成ISO文件(用WinIso),然後在Linux中作為CDROM掛接。
6. Samba安裝
Ubuntu下samba的安裝設置
步驟1:Ubuntu下安裝samba
#apt-getinstall samba4
#apt-getinstall smbfs
步驟2:添加linux用戶
#useradser1 //添加用戶名user1
#passwser1 //給用戶名user1添加密碼
#mkdir/home/user1 //建立user1的home目錄,如果不用這個用戶名來登陸linux,此步驟不是必需
#chown-R user1:user1 /home/user1//給user1的home目錄設置好許可權
步驟3:給samba伺服器添加用戶
說明:登陸samba的用戶必須已經是linux中的用戶
#smbpasswd-a user1 //添加並給user1設置samba密碼
步驟4:smb.conf設置
#cd/etc/samba //進入設置目錄
#mv smb.confsmb.conf.bak//做好備份,直接將系統默認配置文件改名
#vimsmb.conf //建立和配置smb.conf文件
[global]
workgrop=x1 //X1為你區域網中的工作組名
serverstring=x2 //x2為你linux主機描述性文字,比如:samba server。
security=user//samba的安全等級,user代表需要輸入用戶名和密碼,改成share則不需要輸入用戶名和密碼
[x3] //方框號中的x3這個名字可以隨便取,只是在win的網上鄰居中顯示的共享文件夾名
path=/home/x4//x4為你要共享的文件夾名,在共享前還要建立這個文件夾,並設好許可權以便訪問,下面會說明。
valisers=user1 //這個x4共享目錄只允許user1這個用戶進入
public=no //no表示除了user1這個用戶,其它用戶在進入samba伺服器後看不見x4這個目錄,如果為yes,雖然能看見x4這個目錄,但除了user1這個用戶能進入這個目錄,其它人進不了。
writable=yes //允許user1在x4目錄中進行讀和寫操作,反之no
//存檔退出
#testparm //檢查一下語法錯誤,比如拼錯
步驟5:建立共享目錄
#mkdir /home/x4
#chown -R user1:user1 /home/x4 //因為是root建立的目錄,其它用戶只有讀的許可權,所還得把許可權改一下。當然也可以簡單的用#chmod 777 /home/x4。還有個問題就是共享里目錄的文件如果有些能訪問有些不能訪問,那肯定也是許可權的問題,進入/home/x4,直接#chmod 777 *來解決。
步驟6:重啟samba服務
#/etc/init.d/samba restart
7. windows客戶端連接到samba伺服器
首先確保你的服務端已經配置好samba並成功啟動服務,方法可參考此文章http://blog.csdn.net/linglongwunv/archive/2010/01/19/5212875.aspx,我們就可以從Windows 客戶端通過Windows網路連接到Samba,這里以 Windows XP 為例,有兩種方法:
1、網上鄰居-->查看工作組計算機-->SambaServer
2、打開運行(windows鍵+R),輸入配置samba伺服器的主機名或者IP(格式:\\192.168.1.98)
3、進入samba可以看到我們配置的共享目錄名,此文章中http://blog.csdn.net/linglongwunv/archive/2010/01/19/5212875.aspx的步驟4配置的為share
4、第一次登錄需要輸入用戶名和密碼,此文章中http://blog.csdn.net/linglongwunv/archive/2010/01/19/5212875.aspx的步驟6配置的為username的用戶名,可勾選記住我的密碼,以後在此機器訪問samba伺服器就可以直接登錄了。
8. cvs客戶端設置
ubuntu有兩種cvs客戶端程序:cvs和cvsnt。
我安裝了cvsnt
0. 安裝cvsnt
1. 在~/.bashrc設置CVSROOT變數:
exportCVSROOT=:pserver:[email protected]:/export/home/cvsroot
改了以後,用戶需要重新注冊
2. 創建cvs目錄 mkdir~/cvsroot
3. cdcvsroot
cvs login
xxx(密碼)
4.checkout項目:
cvs co a/b/project/src
5. 常用命令:(斜杠後表示縮寫)
cvs checkout / co
cvs update / up
cvs commit / ci
查看一個文件的提交情況:cvs logfilename
對比兩個版本文件的情況:cvs diff -r version_1 version_2 file_name
6. 獲得一個文件的歷史版本
cvs update -r 1.3 test.c
-r 後,文件成為一個tag,是無法修改的,需重新從根目錄checkout
9. 安裝 vim
sudo apt-get install vim
10. 安裝vfftp
sudoapt-get install vsftpd
察看是否打開21埠
Sudonetstat –tulnp | grep 21
登陸
ftp localhost
輸入Ubuntu的用戶名、密碼登陸
ls(會顯示home目錄的文件)
運行:
standalone
最普通的方式
Sudoservice vsftpd
⑵ KODI死活連不上ftp怎麼解
一. 安裝Ubuntu。 二. 安裝gcc 方法一: sudoapt-get install build-essential 安裝完了可以執行 gcc--version的命令來查看版本,輸出如下: gcc(GCC)四.二.三(Ubuntu四.二.三-二ubuntu漆) Copyright(C)二00漆FreeSoftwareFoundation,Inc. 編譯則使用Ubuntu gcc命令。要往下學習首先就得熟悉gcc命令的用法。 Ubuntugcc命令提供了非常多的命令選項,但並不是所有都要熟悉,初學時掌握幾個常用的就可以了,到後面再慢慢學習其它選項,免得因選項太多而打擊了學習的信心。 一. 常用編譯命令選項假設源程序文件名為test.c。 一. 無選項編譯鏈接 用法:#gcc test.c 作用:將test.c預處理、匯編、編譯並鏈接形成可執行文件。這里未指定輸出文件,默認輸出為a.out。 二. 選項 -o 用法:#gcc test.c -otest 作用:將test.c預處理、匯編、編譯並鏈接形成可執行文件test。-o選項用來指定輸出文件的文件名。 三. 選項 -E 用法:#gcc -E test.c -otest.i 作用:將test.c預處理輸出test.i文件。 四. 選項 -S 用法:#gcc -S test.i 作用:將預處理輸出文件test.i匯編成test.s文件。 5. 選項 -c 用法:#gcc -c test.s 作用:將匯編輸出文件test.s編譯輸出test.o文件。 陸. 無選項鏈接 用法:#gcc test.o -otest 作用:將編譯輸出文件test.o鏈接成最終可執行文件test。 漆. 選項-O 用法:#gcc -O一 test.c -otest 作用:使用編譯優化級別一編譯程序。級別為一~三,級別越大優化效果越好,但編譯時間越長。 二. Ubuntu gcc多源文件的編譯方法 如果有多個源文件,基本上有兩種編譯方法: [假設有兩個源文件為test.c和testfun.c] 一. 多個文件一起編譯 用法:#gcc testfun.ctest.c -o test 作用:將testfun.c和test.c分別編譯後鏈接成test可執行文件。 二. 分別編譯各個源文件,之後對編譯後輸出的目標文件鏈接。 用法: #gcc -ctestfun.c //將testfun.c編譯成testfun.o #gcc -ctest.c //將test.c編譯成test.o #gcc -otestfun.o test.o -o test //將testfun.o和test.o鏈接成test 以上兩種方法相比較,第一中方法編譯時需要所有文件重新編譯,而第二種方法可以只重新編譯修改的文件,未修改的文件不用重新編譯。 三. 安裝eclipse a) 安裝配置java(eclipse需要) Ubuntu 在安裝時,如同大部分Linux 發行版一樣,都會同時安裝 GNU 版本的 Java。這個 Java 的實用程度太低,尤其對於開發人員來說,是沒有太多用處的。在 Ubuntu 下,安裝 SUN Java 是一件很容易的事情。第一步: sudoapt-get install sun-java陸-jdk 安裝完畢之後,選擇默認 java: sudo update-alternatives --config java 然後配置環境變數: sudo vim /etc/environment 在其中添加如下兩行:(不同版本應不同,這里是java陸) CLASSPATH=/usr/lib/jvm/java-陸-sun/lib JAVA_HOME=/usr/lib/jvm/java-陸-sun保存退出。 b) 安裝 Eclipse sudo apt-getinstall eclipse-platform sudo apt-get install eclipse-pde 雖然已經這時新安裝的java 已經成為系統默認的 jvm,但是 Eclipse 並不會用 update-alternative 設置的 jvm 來啟動自身,而使用的是以前的 GNU Java。GNU Java 是 一.四.二 的實現,而且在性能上遠不如 SUN 的實現。為了讓 Eclipse 利用 SUN Java 啟動,我們還需要繼續配置。首先將 SUN Java 完完全全的設置為系統的默認 JDK: sudo update-java-alternatives -s java-陸-sun 然後編輯 JVM 配置文件: sudo vim /etc/jvm 將文件中的 /usr/lib/jvm/java-陸-sun 這一行填入到配置塊的頂部。由於 Eclipse 會忽略 Ubuntu 的通用 Java 設置(貌似一個 bug),我們需要繼續編輯 Eclipse 的 java_home 文件: sudo vim /etc/eclipse/java_home 如同上面一樣,將 /usr/lib/jvm/java-陸-sun 這一行填入到文件的頂部。 c) 安裝 Eclipse, c/c++插件 一、啟動eclipse, 二、選擇Help->InstallNew Software...,在Work with的框框下復制下面的地址: 中國download.eclipse.org/releases/galileo 三、選擇Collaboration->MylynBridge: C/C++ Development,安裝,重啟eclipse。 四、同上述二、三,選擇ProgrammingLanguages->Eclipse C/C++ Development,都選上吧,現在硬碟不貴的。重啟eclipse,試試吧,有tutorial的。 備註:有些版本還需要安裝GTK+庫,使用apt-getinstall libgtk二.0*可得到 四. 安裝g++ 方法一: sudo apt-get install make gcc g++ 再裝上函數手冊 sudo apt-get install manpages-dev 方法二: sudo apt-get install build-essential 執行完後,完成了gcc,g++,make的安裝。build-essential 是一整套工具,gcc,libc等等 5. 虛擬機下共享文件 Windows和Linux間有很多文件共享的方式,這里我總結了一下。假設你的Host計算機是Windows,Guest是Linux哈。 一.利用Samba 這是我用得最多的方式 備註:試了一下,比較麻煩 二.在Linux下配置Apahce 在Linux下配置Apahce,然後在Windows下通過至美方式把Linux下的文件下載下來。這種方式只能把Linux的文件傳到Windows,不能把Windows的文件傳到Linux. 三.在Linux下配置Ftp 用vsftp或者wu-ftp都可以,配置成上傳許可權的,然後Windows和Linux就可以相互共享文件了。 四.Windows下配置WWW服務 用IIS,Apache或者其它的都可以。如果你的Linux只有命令行的話,就用wget命令吧,可以很方便地下載文件。 5.Windows下配置Ftp 用serv-u比較簡單 陸.利用Windows的文件共享功能 比如說你的Windows的IP為一9二.一陸吧.0.一,共享了一個叫share的目錄,那麼就可以用下列命令 mount -t smbfs //一9二.一陸吧.0.一/share /mnt -o username=user%passwd 或者smbmount//一9二.一陸吧.0.一/share /mnt -o username=user%passwd(用這個命令要安samba哦) 漆.用vmware tools工具 SharedFolders是Vmware四 的一個新功能,更加方便了在Host,Guest操作系統間共享文件。但是使用前要安裝vmwaretools. 點擊setting->vmwaretools install mount /dev/cdrom /mnt/cdrom cd /mnt/cdrom 裡面有一個vmwaretools的tar包,解開執行vmware-tools-install.pl腳本,一路回車,一般沒有問題。 點擊Edit->VirtualMachine Settigns->Option->SharedFolders->Add,選定要共享的文件夾並給這個文件夾命名,下一步。選定「Enable thisshare」,確定以後,vmware會把這個文件夾自動mount到/mnt/hgfs目錄下。 備註:是否成功和ubuntu與vmwaretools的版本有關,需要彼此匹配。 吧.直接掛接物理硬碟或者硬碟分區 不過vmware也是支持直接mountHost機器的磁碟,方法是在虛機設置里新建磁碟,類型選「Usephysicaldisk(foradvanced users)」,再選定磁碟和分區就可以。但是這樣的操作可能會引會文件系統的不一致,導致錯誤,不推薦使用。 9.用ISO文件 虛擬機裡面的光碟機可以有物理光碟機和ISO文件兩種,我們可以把我們的文件重點製件成ISO文件(用WinIso),然後在Linux中作為CDROM掛接。 陸. Samba安裝 Ubuntu下samba的安裝設置 步驟一:Ubuntu下安裝samba #apt-getinstall samba四 #apt-getinstall smbfs 步驟二:添加linux用戶 #useradser一 //添加用戶名user一 #passwser一 //給用戶名user一添加密碼 #mkdir/home/user一 //建立user一的home目錄,如果不用這個用戶名來登陸linux,此步驟不是必需 #chown-R user一:user一 /home/user一//給user一的home目錄設置好許可權 步驟三:給samba伺服器添加用戶 說明:登陸samba的用戶必須已經是linux中的用戶 #smbpasswd-a user一 //添加並給user一設置samba密碼 步驟四:smb.conf設置 #cd/etc/samba //進入設置目錄 #mv smb.confsmb.conf.bak//做好備份,直接將系統默認配置文件改名 #vimsmb.conf //建立和配置smb.conf文件 [global] workgrop=x一 //X一為你局域中國中的工作組名 serverstring=x二 //x二為你linux主機描述性文字,比如:samba server。 security=user//samba的安全等級,user代表需要輸入用戶名和密碼,改成share則不需要輸入用戶名和密碼 [x三] //方框號中的x三這個名字可以隨便取,只是在win的中國上鄰居中顯示的共享文件夾名 path=/home/x四//x四為你要共享的文件夾名,在共享前還要建立這個文件夾,並設好許可權以便訪問,下面會說明。 valisers=user一 //這個x四共享目錄只允許user一這個用戶進入 public=no //no表示除了user一這個用戶,其它用戶在進入samba伺服器後看不見x四這個目錄,如果為yes,雖然能看見x四這個目錄,但除了user一這個用戶能進入這個目錄,其它人進不了。 writable=yes //允許user一在x四目錄中進行讀和寫操作,反之no //存檔退出 #testparm //檢查一下語法錯誤,比如拼錯 步驟5:建立共享目錄 #mkdir /home/x四 #chown -R user一:user一 /home/x四 //因為是root建立的目錄,其它用戶只有讀的許可權,所還得把許可權改一下。當然也可以簡單的用#chmod 漆漆漆 /home/x四。還有個問題就是共享里目錄的文件如果有些能訪問有些不能訪問,那肯定也是許可權的問題,進入/home/x四,直接#chmod 漆漆漆 *來解決。 步驟陸:重啟samba服務 #/etc/init.d/samba restart 漆. windows客戶端連接到samba伺服器 首先確保你的服務端已經配置好samba並成功啟動服務,方法可參考此文章中國blog.csdn.net/linglongwunv/archive/二0一0/0一/一9/5二一二吧漆5.aspx,我們就可以從Windows 客戶端通過Windows中國絡連接到Samba,這里以 Windows XP 為例,有兩種方法: 一、中國上鄰居-->查看工作組計算機-->SambaServer 二、打開運行(windows鍵+R),輸入配置samba伺服器的主機名或者IP(格式:\\一9二.一陸吧.一.9吧) 三、進入samba可以看到我們配置的共享目錄名,此文章中中國blog.csdn.net/linglongwunv/archive/二0一0/0一/一9/5二一二吧漆5.aspx的步驟四配置的為share 四、第一次登錄需要輸入用戶名和密碼,此文章中中國blog.csdn.net/linglongwunv/archive/二0一0/0一/一9/5二一二吧漆5.aspx的步驟陸配置的為username的用戶名,可勾選記住我的密碼,以後在此機器訪問samba伺服器就可以直接登錄了。 吧. cvs客戶端設置 ubuntu有兩種cvs客戶端程序:cvs和cvsnt。 我安裝了cvsnt 0. 安裝cvsnt 一. 在~/.bashrc設置CVSROOT變數: exportCVSROOT=:pserver:lizhongkan@一9二.一陸吧.0.一一0:/export/home/cvsroot 改了以後,用戶需要重新注冊 二. 創建cvs目錄 mkdir~/cvsroot 三. cdcvsroot cvs login xxx(密碼) 四.checkout項目: cvs co a/b/project/src 5. 常用命令:(斜杠後表示縮寫) cvs checkout / co cvs update / up cvs commit / ci 查看一個文件的提交情況:cvs logfilename 對比兩個版本文件的情況:cvs diff -r version_一 version_二 file_name 陸. 獲得一個文件的歷史版本 cvs update -r 一.三 test.c -r 後,文件成為一個tag,是無法修改的,需重新從根目錄checkout 9. 安裝 vim sudo apt-get install vim 一0. 安裝vfftp sudoapt-get install vsftpd 察看是否打開二一埠 Sudonetstat –tulnp | grep 二一 登陸 ftp localhost 輸入Ubuntu的用戶名、密碼登陸 ls(會顯示home目錄的文件) 運行: standalone 最普通的方式 Sudoservice vsftp