轉:http://blog.csdn.net/schumyxp/article/details/2119186
打算用linux下面的eclipse進行c++開發,因為好久沒做c++開發了,又對linux沒那麼熟悉,就記錄一下我的入門經曆。
目的是建立一個共用庫,然後用另一個項目去調用。
首先,建立一個共用庫。開啟eclipse,選擇c++項目裡面的共用庫,建立即可,然後就是編寫相應的代碼什麼的……
比如這個庫就叫做test吧,裡面有個類,叫做CTest。
寫好之後,編譯,保證沒有問題。這個時候應該得到了一個libtest.so檔案,還有就是CTest類的標頭檔CTest.h。
這個時候這個庫還不能像在windows下面似的直接拿來就用。還得進行一下“安裝”。
其實可以安裝這個庫的位置很多,我是把它安裝在了/usr/lib下面。但是那裡面本來就有很多系統裡面的東西。為了不讓自己的庫和系統的混了,我在/usr下面建立了一個檔案夾clib,然後把libtest.so和CTest.h都拷貝到了/usr/clib下面。
然後建立一個軟連結,如下:
#ln -s /usr/clib/libtest.so /usr/lib
建立好之後,再更新一下系統資訊:
#ldconfig
這樣之後,這個庫就可以用了。感覺linux下面的共用庫,就好像.net裡面的強式名稱的dll。
下面就可以使用這個庫了。不過c++裡面用起來就是麻煩一些啊,呵呵。
首先建立一個可執行檔c++項目,然後“引入”剛才安裝好的庫,引入的過程如下(.net下面點點滑鼠就行了,都把我慣壞了):
為編譯器指定路徑:在-l參數下面,添加libtest.so所在的位置,我這裡就是/usr/clib。
為連結器指定要引用的庫:在-l參數下面添加test,這個就是前面做的那個共用庫。test前後的lib和.so都是系統自己加的,編譯的時候也會自己加上,所以一定得寫test。
為編譯器指定庫所在的路徑:在-L參數下面,添加libtest.so所在的路徑就可以了,這裡還是/usr/clib。
這樣配置好之後,test這個庫終於可以用了。
用的時候,include "CTest.h"後,就可以用類CTest了。
如果你怕亂,把CTest.h這個標頭檔放在了/usr/clib/CTest這個目錄下面,那就是include "CTest/CTest.h"了。現在應該更明白了吧,以後想怎麼安排檔案結構,就可以隨意發揮了。
接下來,就可以編譯運行程式了。
如果不幸出錯了(估計第一次搞linux開發的人,很多會出錯的),不要著急,幾乎都是上面的路徑沒寫對。這個時候可以使用ldd命令來查看都引用了那些庫,有沒有問題,一眼就能看出來了。
我想,有了這些基本的準備,就可以開始linux下面的c++開發了。