pocolinux編譯
① 如何學習c++
學習C++,這里有比較全面的七個步驟:
一、定義程序的目標
首先,沒有目標的工作都是「耍流氓」,所以在動手寫程序之前,要先在腦子里有清晰的思路。明確自己想做什麼,需要哪些信息,要進行哪些計算和控制,以及程序應該要報告什麼信息。這些都思考清楚後,才能進行下一步。
二、設計程序
對這項工作有概念性的認識後,就應該考慮如何用程序來完成它。例如,用戶界面應該是怎樣的?如何組織程序?目標用戶是誰?准備花多長時間來完成這個程序?
除此之外,還要決定在程序中如何表示數據,以及用什麼方法處理數據。學習C語言之初,遇到的問題都很簡單。但是,隨著要處理的情況越來越復雜,需要決策和考慮的方面也越來越多。通常,選擇一個合適的方式表示信息可以更容易地設計程序和處理數據。
三、編寫代碼
設計好程序後,就可以著手編寫代碼了。這一步就是把你設計的程序翻譯成C語言。一般而言,使用文本編輯器創建源代碼文件。該文件中內容就是你翻譯的C語言代碼。程序清單1.1是一個C源代碼的示例。在這一步驟中,應該給自己編寫的程序添加文字注釋。最簡單的方式是使用C的注釋工具在源代碼中加入對代碼的解釋。
四、編譯
接下來的這一步是編譯源代碼。編譯器是把源代碼轉換成可執行代碼的程序。可執行代碼是用計算機的機器語言表示的代碼。這種語言由數字碼表示的指令組成。也就是說,不同的計算機使用不同的機器語言方案。C編譯器負責把C代碼翻譯成特定的機器語言。此外,C編譯器還將源代碼與C庫的代碼合並成最終的程序。最後就可以生成一個用戶可以運行的可執行文件,其中包含著計算機能理解的代碼。
編譯器還會檢查C語言程序是否有效。如果C編譯器發現錯誤,就不生成可執行文件並報錯。理解特定編譯器報告的錯誤或警告信息是程序員要掌握的另一項技能。
五、運行程序
傳統上,可執行文件是可運行的程序。在常見環境(包括Windows命令提示符模式、UNIX終端模式和linux終端模式)中運行程序要輸入可執行文件的文件名,而其他環境可能要運行命令或一些其他機制。例如,在Windows和Macintosh提供的集成開發環境(IDE)中,用戶可以在IDE中通過選擇菜單中的選項或按下特殊鍵來編輯和執行C程序。最終生成的程序可通過單擊或雙擊文件名或圖標直接在操作系統中運行。
六、測試和調試程序
程序運行的過程中,可能會出現運行錯誤,計算機行話叫作bug,然後就要查找並修復程序錯誤,這個過程叫調試。你可能會犯基本的設計錯誤,可能錯誤地實現了一個好想法,可能忽視了輸入檢查導致程序癱瘓,可能會把圓括弧放錯地方,可能誤用C語言或打錯字等等。有bug是很正常的,不必緊張,現在我們可以進入下一步。
七、維護和修改代碼
調試完程序後,就要修改程序。例如,用戶輸入以Zz開頭的姓名時程序出現錯誤、你想到了一個更好的解決方案、想添加一個更好的新特性,或者要修改程序使其能在不同的計算機系統中運行,等等。如果在編寫程序時清楚地做了注釋並採用了合理的設計方案,維護和修改代碼就是一件很容易的事情了。
② C++的學習方法!~
學習C++重在理解其各種語言設施所代表的語義,以及C++所能表示的語義所代表的設計思想。首先從宏觀上入手,你需要明白的是C++是程序設計語言的本質。在此我把C++最重要的性質寫下來:C++是一門靜態類型檢查,基於C內存模式,支持四種基本程序設計范型的語言。注意,這里說明了三個本質特性,靜態說明了語言的類型檢查性質,基於C內存模式告訴我們在C++中所有與內存有關的操作都需要程序員自己來負責,這樣就帶來了很多設計程序時的需要注意的地方,而理解支持的四種基本范型卻是理解各種語言設施的基礎。然後記住C++的最大的一點設計哲學,也是其貫穿應用C++的一條本質,我引用《C++ PRIMER》中文版前言內的一句話表示--「C++的基礎是各種設施,它們讓用戶能夠通過定義新的數據類型來擴展語言本身,這些新類型可以與內置類型一樣的使用方式(如何理解這句話是關鍵,我的理解是:用戶定義類型可以在任何使用內置類型的時候做為其替代,再具體點說就是用戶定義類型可以象內置類型那樣可以被聲明,其對象可以被初始化,可以相互復制,可以象內置類型對象那樣和很多操作符一起使用,可以被作為參數傳遞給函數,可以作為函數的返回值,可以作為容器的操作對象,用戶定義類型可以和內置類型一樣作為模板的參數),掌握這些設施(哪些設施?就是讓用戶定義類型可以和內置類型一樣方便使用的設施,包括什麼?構造,拷貝,解構函數,操作副重載.....)的第一步就是理解基本語言(什麼是基本語言?就是C++中better c部分)。
在此,我還想提出一點十分重要的概念:一門語言的最本質的東西就是其類型系統,任何語言都有自己的獨特的類型系統,學習C++就是學習他的類型系統。所以首先需要徹底明白什麼是數據類型這個概念。這樣你的思路就清楚了,你有選擇,從每一種C++支持的設計范型入手學習。
結構化設計-----也就是C++中的better c部分,你需要在C的基礎上學會函數重載和引用這兩個最重要的語言新特心性。
基於對象----你需要建立C++最強大的概念--類,也就是用戶定義類型,這其實就是數據結構裡面接觸的抽象數據類型的概念,以及合理構造使用類的一系列語言措施。並始終記住,在C++進行設計時用類來表示我們需要表示的概念。類也是C++抽象機制裡面最核心的概念。
面向對象----在這里你需要知道繼承和多態這樣的OO概念,以及句柄類這樣常見的設計技術,這里你需要明白你開始進入了對介面編程的階段。同時你要學會OO思想,C++的一些設施只是為了把OO思想在語言所支持的語義中充分的表示出來。但是在這里,同時你需要明白的C++能表示的語義是受到其當初語言設計原則限制的(什麼原則?靜態類型檢查,不為不需要的東西付出代價,選擇權在程序員手上語言本身不去強迫程序員的做出選擇),也就是說C++所能表示的OO思想可以稱為具有C++特色的OO思想了。這樣的OO思想和JAVA所代表的純OO哪個更好?沒有定論,因為他們本身的設計理念就不一樣。
泛型設計----這里你需要明白最重要的一點是C++的temlate機制無論其開始建立的初衷是什麼,現在他所代表的真實含義是:編譯時類型推導,也就是編譯時多態,由此明白了泛型的核心---把各種類型當作一種抽象條件的具體化,C++有措施可以定義抽象條件嗎?沒有,所以這些條件只能定義在我們自己的心中,但我們可以把具體化的類型當作一種抽象條件實現在template機制中去,從而使tempalte成為比類型推導機制更進一步的東西,那就是抽象條件的推導。也就是說,我們不再把template接受的參數看成是類型,而是把template看成是一種接受抽象條件的機制,無論其類型如何,只要這種類型滿足tempalte所接受的抽象條件就可以作為參數傳遞進去,這樣就代表了一種泛型的思想-----類型不再是根本,抽象條件才是,類型不過是抽象條件的外衣和在C++中的實現方式而已。在結合基於對象和泛型設計這兩種抽象設計模式的技術上誕生的工業產品就是---STL。
(二)書的誘惑
《C++程序設計語言》:如果你只買一本C++書,這本就是你的選擇,作者Bjarne就是讓你做出這樣選擇的全部理由,沒有人能比他更了解什麼樣才是真正的使用C++編程了,有人說到這本書語言晦澀,或者對與初學者此書不適合,對此評論我頗不以為然,我看的是中文版,起碼在我看來語言描敘非常到位,我喜歡這樣的技術描敘風格。全書的核心就是告訴你如何去用正確的觀念編寫正確的C++的代碼。強烈推薦。
《C++語言設計與演化》:這本書也是我同時擁有中英兩版的兩本書之一(另外一本是《設計模式》)。如果在得到上面的那本書之後你需要第二本,那麼在我看來這就是你的選擇,作者同樣是Bjarne,他將在這本書中告訴你C++的起源與發展,語言原則與本質,各種特性加入的理由和考量,以及幾乎一切關於C++有趣的故事。我閱讀過中英兩版,都是強烈推薦。
《C++標准程序庫》:在AMAZON上面關於C++書籍評論最為火暴的一本。全書對於標准程序庫的介紹可謂深入淺出,而且全書都是從實際運用出發,書中例子簡單卻非常說明問題,加上一些圖表的陳列,使其概念十分清晰,而且從手冊和學習兩方面看都有其存在價值。強烈推薦。
《EFFECTIVE C++ 中文版》:無須多說,在任何C++書籍推薦目錄中都可以找到這本書的身影,盛名之下必無虛士。主要強調的是運用C++的各種特性的時候所必須注意的地方,以及一些比較通用的設計手段。其短小精悍的語言自然非常適合快節奏的現代風格,個人就十分喜歡Meyer的寫作方式。強烈推薦。
《MORE EFFECTIVE C++ 中文版》:做為上本書的姐妹篇,一樣的寫作風格,一樣的寫作目的。只是個人認為和其姐姐相比,存在差距,主要是信息量沒有《EFFECTIVE C++ 中文版》那麼大,主要說到了一些C++的設計慣用手法。推薦。
《C++ PRIMER 中文版》:同樣是出自大師之手,作者LIPPMAN,作為早期C++編譯器的實現者之一,對與C++的了解以及該如何論序都有自己的獨到見解。做為C++的網路全書和《C++程序設計語言》有著一樣的地位。但是前者更強調的是C++的語法和其語義,而後者則是以如何用C++進行合理設計做為描敘的中心。全書構思十分巧妙,書的一開始就直接進入C++的主題,前面五章都用類設計一個數據結構,讓讀者完全明白了各種用戶定義類型所代表的抽象能力,然後直接進入第六章標准庫中的容器類,這樣的設計讓讀者十分清楚的建立容器和類這兩個C++中十分重要的概念。這樣的設計針對有一定基礎的C++讀者來說可以說是非常有效果的。但是對於初學者來說,這確實不是一本合適的書籍,因為一上來太多的名詞會把剛剛接觸C++的人嚇著的。推薦。
《C++沉思錄》:非常有特點的一本書,全書假設讀者已經通曉C++語言,重點告訴讀者C++的概念以及一些C++的設計手段,比如用C++到底為什麼會比C或者其他過程語言更好?(書中給出的答案是,因為只有對象才有能力保持一定的狀態,而演算法沒有這樣的能力),如何進行抽象數據類型的程序設計,如何理解多態,如何通過代理隱藏繼承,如何進行引用技數,為了效率如何進行緩時拷貝,以及模板技術是如何發展演進最後構成成STL庫的。閱讀感覺和《C++程序設計語言》一樣,思想性非常強,讀這樣的書很累,腦子必須一直思考問題,思考作者裡面提出的問題和他提出的解決方式。這本書最大的特點是非常直接的把C++語言的核心暴露出來-----三種抽象模型和極其語言設施本身對這三種抽象模型的支持。而《C++沉思錄》給我的更深層思考是什麼才是運用C++最合理的方式。推薦。
《C++ STL中文版》:很朴實,不花俏,但是價值很高。個人認為其主要價值體現在以下幾個方面:1,對於STL的實現關鍵iterator一般都使用了兩種方式描敘,一種比較老式的函數方法,一種是新的?traits技巧,這樣讀者可以非常清楚的知道技術的演進。2,提供了一個STL LITE版本,閱讀這樣的代碼對自己的提高非常大。3,書中提供的測試模塊對於讀者來說也是非常有的一章,對於想擴展STL的,可以按照上面提供的方法測試自己的STL組件。缺點:裝訂比較粗糙,與大師之作的地位不相稱。推薦
《C++ PRIMER PLUS 中文版》:一本思想性不是很強,技巧性不是很強的書,但是對於初學者來說非常合適的書。其中許多論序方式都和具體化,總體來說,這本書是我看過的C++書籍裡面最合適初學者的。推薦。
《深度探索C++對象模型》:這也是一本比較特別的書,告訴你編譯器是如何安排處理對象的內存空間的,以及一些OO特性是如何實現的。不認為這是一本C++必須讀物,算是課後讀物應該比較合適吧,因為有時間了解C++的OO實現還不如花點時間搞清楚OO理論的本質概念:type theory。推薦。
《C++設計新思維——泛型編程與設計模式之應用》:可謂C++中的奇書。這樣的一本書,很難讓人做出正確的評價與推薦指數(尤其是以我這個實用和人生本就應該享樂為人生觀的人來說~:),因為全書所代表的思想前衛到了有點不切實際的地步,模式+泛型—多麼高雅的組合。我個人的觀點是,只有一部分人需要閱讀此書,他們就是所謂的real c++ fans,暫且不提C++本身是否遇到了困難,就其書中所代表的設計思想,對於C++沒有一點感情的程序員(感情就是以愛好為基礎,而不是以攢錢為前提),我想對於這樣的設計技術總會有暈的感覺,而一般程序員多半都不會喜歡這樣的感覺~:)。推薦。
《對象揭秘:Java、Eiffel和C++》:從書名就可以看出這本書不僅僅和C++有關系。可以說全書就是對C++的一次批判吧(書也起源與作者的一篇批判C++的文章)。有時候聽聽另外一種聲音對自己保持清醒的頭腦是非常有幫助的,對待一個人,對待一本書以及對待一門程序設計語言都是如此。這本書好象不是很火,大概跟其宣傳不是很到位,或者同能同時了解這三門語言並比較關心這些語言深層次的優略的讀者比較少有關系吧,在我看來這本書包含了許多對象與類型方面的理論,最為出彩的就是作者抓住Bjarne的「在C++中一個類就是一個類型」這樣的「錯誤」言論狠批的論證過程。看這本書另外一個好處是能教會大家該如何去合理的辯駁自己的對手~:)。推薦。
《大規模C++程序設計》:書在手上很久了,可一直沒有仔細看,這也是評論之前必須說明的。總體看來書中涉及的很多東西都鮮見於其他讀本。不管AMAZON上的評論是否是這本書比較過時,起碼它介紹的許多對與我來說都是我所不知道不了解的,別人說過時是他的事情。而我,還是推薦。
《STL和泛型編程》:難得的一本關於泛型編程的理念書籍,同樣也是作為手冊和學習兩用,但是其手冊不是使用手冊,而是概念手冊,對於設計自己的STL組件,這本書有非常好的幫助,雖然網上有篇STL的文檔,其中的70%內容和這本書雷同,但此書仍不失可讀性。推薦。
《C++編程思想 第二版》:非常一般的書,是的這就是我對這本很多人奉為名著的評論,至於為什麼是這樣的評論,或者你不相信我說的是客觀話,在你買了之後看完就知道了。一般。
《Essential C++中文版》:總感覺這本書定位不是很清楚,因為對於初學者來說其開始就涉及了太多的名詞,初學者看這本書,幾乎就不要指望能很好的入門。而對於進階者來說,其內容並無新意,對於C++高手來說,這樣的小讀本,根本就沒有閱讀的必要,也許是LIPPMAN+JJHOU的盛名吧,但我覺得這次算是有虛士了~:)。一般。
《STL源碼剖析》:侯SIR的大陸兩本著作之一,但在我心中其質量好象並不如很多人說的那樣好,就同類作品《C++ STL中文版》相比較內容略現單薄,並且三章之後很多東西都給人以堆砌的感覺,而且大部分精彩的材料都出自《STL和泛型編程》一書,給人感覺書中侯SIR自己的東西並不多,但第二章對於內存管理有很好的論敘表現,並且裝訂精良,尤其是那些圖更是侯SIR的拿手好戲,但總體感覺有點華而不實。一般。
後面列出兩本不推薦的,具體原因也就不再分析。
《高質量程序設計指南--C++/C語言》,《C++編碼規范》
另外兩本常見的C++書籍:
③ vs2010怎麼安裝poco庫
安裝步驟:
1. 下載源碼包。在POCO的官方網站下載最新的POCO源碼包。http://pocoproject.org/download/index.html
2.解壓源碼包。下載的文件名是「poco-1.4.2.zip」,將其解壓在F:\POCO目錄下。
3.編譯庫文件。開始菜單–Microsoft Visual Studio 2010–Visual Studio Tools—Open Visual Studio 2010 Command Prompt 打開命令行窗口。cd命令進入poco根目錄,F:\POCO\poco-1.4.2。輸入命令:buildwin 100 回車。
4.等待編譯完成,花費了一個多小時。
5.設置環境變數。POCO_HOME F:\POCO\poco-1.4.2
6.添加Include目錄。打開工程屬性頁,在「Configuration Properties -> C/C++ -> General -> Additional Include Directories」欄目中添加「$(POCO_HOME)\Foundation\include」,確認並應用該設置。
7.添加lib鏈接庫。打開屬性頁,在「Configuration Properties -> Linker -> General -> Additional Library Directories」欄目中添加lib目錄路徑$(POCO_HOME)\lib。在「Configuration Properties -> Linker -> Input -> Additional Dependencies」中添加應用程序需要用到的lib文件。
8.更改輸出路徑,以便項目生成的應用程序能夠調用DLL文件。打開工程屬性,將「Configuration Properties -> General -> Output Directory」改為「$(POCO_HOME)\bin」;將「Configuration Properties -> Debugging -> Working Directory」改為「$(OutDir)」。
9.設置完成後,重啟Visual Studio。
④ 怎麼在mingw環境下編譯安裝poco庫
.vs編譯安裝的話,直接運行那些bat腳本就可以了,但MinGW肯定不行,所以需要用到MSYS
2.解壓poco-1.4.6p2,比如:D:/mysdk/poco-1.4.6p2,在MSYS的命令行中輸入「cd
/d/mysdk/poco-1.4.6p2」回車,就到了poco-1.4.6p2的解壓目錄了,具體你解壓的目錄路徑可以根據實際情況修改;
3.configure poco-1.4.6p2
linux裡面要配置編譯參數,我們可以通過「./configure
--help」查看有哪些編譯項。我們要使用MinGW編譯poco就必須在configure時指明是MinGW,我的configure命令如下(大家根據自己的實際情況修改):
./configure --config=MinGW --shared --static --no-test --no-samples
--omit=Crypto,NetSSL_OpenSSL,Data/ODBC,Data/Mysql
簡單解釋:--config=MinGW表示我採用MinGW編譯poco,--shared
--static表示編譯生成動態庫(dll)和靜態庫(a),omit=...表示編譯時不生成這些庫,因為我本機沒裝ssl、mysql,odbc需要lib,會影響我編譯,所以我去掉了這4個庫;
4.修改MinGW的編譯腳本
修改poco-1.4.6p2/bulid/config/MinGW,把「SYSLIBS = -L/usr/local/lib -L/usr/lib
-liphlpapi -lws2_32 -lssl -lcrypto -lws2_32 -lgdi32」里去掉「-lssl
-lcrypto」,因為我本機沒裝ssl,這個庫沒有,會影響編譯安裝;
5.make編譯
執行了上面的./configure
--config=......的命令後會生成一個config.make文件,然後輸入「make」並回車,就開始編譯安裝poco了,poco編譯過程會有一些提示錯誤,例如「poco-1.4.6p2/.../xxx.exe.exe:No
such file」,如果是的話就不用管他,繼續輸入make回車,他會繼續往下編譯,大概經過N次這樣的操作後,提示「make[1]:Nothing to be
done for 'all'.」的時候就編譯完了。
編譯完成後,在poco-1.4.6p2/lib/MinGW/ia32/目錄下就是編譯出來的靜態度和動態庫了。
⑤ POCO怎麼使用
Poco是國內領先的多媒體資源共享軟體,是數聯公司網路富集技術的綜合應用產品之一。Poco為國內用戶及廣大華語地區用戶提供了一個適合中文環境的文件交換平台,完全支持中文軟體及中文關鍵字搜索並,並實現真正意義上的多點傳輸,傳輸效率大大提高。使用Poco軟體,不僅能夠搜索和下載海量的音樂、影視、圖片、軟體、游戲等資源,更可以使用內置的 IM(即時通信)系統方便、快捷的與好友一起分享。著重人性化的設計、充分考慮用戶的需求,我們相信Poco將會成為您網路生活中必不可少的工具之一。
Poco的特點:
海量資源 看看你的胃口有多大!目前Poco擁有超過6,000,000M的音樂、電影、軟體、游戲、圖片、書籍等資源,完全支持中文搜索,符合華語用戶的使用需求,是全球華語用戶最佳的多媒體資源共享平台!
急速下載!
Poco實現的真正的多點傳輸功能,徹底打破了傳統網路結構對中心伺服器效能及帶寬的限制,使用的人員越多,傳輸效率越高,使您真正體會急速下載的快感!
即時通信
是不是覺得下載的過程很乏味呢?沒關系,Poco還整合了IM(即時通信)系統,不但能夠結識更多的朋友,更可以通過IM的「推薦」功能,將喜愛的資源及時與朋友一起分享,下載過程將會變得充滿樂趣!
輕松擁有個性化主頁
想馬上擁有一個屬於您自己的個性化主頁么?MyPoco可以滿足您的需要。超炫的界面、顏色可隨信調配、版面可以自由控制和拖動、無須懂得任何編程語言,MyPoco將會是您展示個人魅力的最佳平台!
Poco2005新版本功能
全新界面,採用流行的DHTML界面。支持多種特效。簡約設計風格,特出軟體界面空間的利用。傻瓜型的界面引導風格更切合用戶習慣,改用最常用的類似網頁的導航方式。讓用戶操作一目瞭然。
拖動即搜功能,只要在poco瀏覽器瀏覽網頁時候通過拖動來選定指定的內容,即可看到提示框,選擇類型即可搜索。
突出在線功能,高速mp3全面採用流媒體技術,優化搜索技術,做到即搜即播(但由於來源太多,可能要多選定幾次,總有驚喜)電影採用poco獨有的分時下載播放技術,全面解決網路瓶頸
⑥ 如何編譯POCO
下面簡單介紹一下方法,以 vs2010 為例。
第一種方法:
(1) Poco 根目錄下有build_vs100.cmd和buildwin.cmd這兩個批處理文件, 我們得修改一下它們。
把build_vs100.cmd 修改為以下內容:
@echo off
if defined VS100COMNTOOLS (
call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\vsvars64.bat")
buildwin 100 build all both x64 samples
紅色的部分是vsvars64.bat的路徑,具體要看本機的安裝位置。這里因為是要編譯X64,所以要修改環境。
藍色部分是執行編譯時候的參數(注意X64的X要小寫)。參數的具體說明為:
buildwin VS_VERSION [ACTION] [LINKMODE] [CONFIGURATION] [PLATFORM] [SAMPLES] [TESTS] [TOOL]
VS_VERSION: 71|80|90|100|110
ACTION: build|rebuild|clean
LINKMODE: static_mt|static_md|shared|all
CONFIGURATION: release|debug|both
PLATFORM: Win32|x64|WinCE
SAMPLES: samples|nosamples
TESTS: tests|notests
TOOL: devenv|vcexpress|msbuild
具體的參數選擇根據需求。
如果不需要 NetSSL_OpenSSL 和 MySQL ,此時保存後就雙擊它就行了。 它會自動編譯好各種庫。
如果要NetSSL_OpenSSL 這個庫則打開buildwin.cmd文件:
設置 openssl 的路徑,如:
set OPENSSL_DIR=c:\OpenSSL-Win64
set OPENSSL_INCLUDE=%OPENSSL_DIR%\include
set OPENSSL_LIB=%OPENSSL_DIR%\lib;%OPENSSL_DIR%\lib\VC
set INCLUDE=%INCLUDE%;%OPENSSL_INCLUDE%
set LIB=%LIB%;%OPENSSL_LIB%
注意,如果要 Poco 中的 MySQL 庫 還得安裝. Mysql
編輯好後,雙擊 build_vs100.cmd執行編譯。完成後會在Poco根目錄下的lib64中看到編譯好的庫。在bin64中有編譯好的dll。
⑦ 如何編譯POCO
按需求修改完buildwin.cmd文件後,使用vs2010的Tools中「Visual Studio x64 Win64 命令提示(2010)」命令,進入命令行狀態。轉到Poco所在的根目錄,直接輸入命令:
buildwin 100 build all both x64 samples
最後需要注意的地方:
上述方法完成編譯後,關於Data的MySQL、ODBC、SQLite三個庫沒有生成(原因不詳),需要單獨編譯,在此以MySQL為例記錄一下編譯過程。在\Data\MySQL文件夾下,找到MySQL_vs100.sln文件,打開。
打開的工程是win32的,需要改為X64。在C++包含目錄中添加本項目的include文件夾,例如:「C:\poco-1.5.1-all\Data\MySQL\include;」,還要添加安裝的MySQL的include文件夾,例如「C:\Program Files\MySQL\MySQL Server 5.6\include」,在庫目錄中添加所需庫的路徑,例如「C:\Program Files\MySQL\MySQL Server 5.6\lib」。
注意:編譯MySQL的Poco庫,必須先安裝MySQL。
設置好環境之後,就可以選擇相應的配置(debug or release)進行編譯。
編譯完成後,生成的庫在Poco根目錄下的lib文件夾,如果是編譯的動態庫,則動態庫在Poco根目錄下的bin文件夾。
⑧ 怎麼在mingw環境下編譯安裝poco庫
1.vs編譯安裝的話,直接運行那些bat腳本就可以了,但MinGW肯定不行,所以需要用到MSYS
2.解壓poco-1.4.6p2,比如:D:/mysdk/poco-1.4.6p2,在MSYS的命令行中輸入「cd
/d/mysdk/poco-1.4.6p2」回車,就到了poco-1.4.6p2的解壓目錄了,具體你解壓的目錄路徑可以根據實際情況修改;
3.configure poco-1.4.6p2
linux裡面要配置編譯參數,我們可以通過「./configure
--help」查看有哪些編譯項。我們要使用MinGW編譯poco就必須在configure時指明是MinGW,我的configure命令如下(大家根據自己的實際情況修改):
./configure --config=MinGW --shared --static --no-test --no-samples
--omit=Crypto,NetSSL_OpenSSL,Data/ODBC,Data/MySQL
簡單解釋:--config=MinGW表示我採用MinGW編譯poco,--shared
--static表示編譯生成動態庫(dll)和靜態庫(a),omit=...表示編譯時不生成這些庫,因為我本機沒裝ssl、mysql,odbc需要lib,會影響我編譯,所以我去掉了這4個庫;
4.修改MinGW的編譯腳本
修改poco-1.4.6p2/bulid/config/MinGW,把「SYSLIBS = -L/usr/local/lib -L/usr/lib
-liphlpapi -lws2_32 -lssl -lcrypto -lws2_32 -lgdi32」里去掉「-lssl
-lcrypto」,因為我本機沒裝ssl,這個庫沒有,會影響編譯安裝;
5.make編譯
執行了上面的./configure
--config=......的命令後會生成一個config.make文件,然後輸入「make」並回車,就開始編譯安裝poco了,poco編譯過程會有一些提示錯誤,例如「poco-1.4.6p2/.../xxx.exe.exe:No
such file」,如果是的話就不用管他,繼續輸入make回車,他會繼續往下編譯,大概經過N次這樣的操作後,提示「make[1]:Nothing to be
done for 'all'.」的時候就編譯完了。
編譯完成後,在poco-1.4.6p2/lib/MinGW/ia32/目錄下就是編譯出來的靜態度和動態庫了。
⑨ 請教,關於 ice,ace,boost,poco 的比較
我是這么做的,可還是不行。在新建工程,設置好lib和h的搜索路徑後,我最先選用gnu的gcc作為編譯器,它居然說不能識別h文件中定義的類(但是它能找到h文件),於是編譯不過。
而後我選擇了vs作為cb編譯器,如法炮製,編譯通過了,但是出了一個外部連接錯誤。但只要是在VS IDE中作這些事就能行。
⑩ 常見的系統軟體都有哪些
一、LINUX
Linux是一套免費使用和自由傳播的類Unix操作系統,是一個基於POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的UNIX工具軟體、應用程序和網路協議。它支持32位和64位硬體。Linux繼承了Unix以網路為核心的設計思想,是一個性能穩定的多用戶網路操作系統。
二、DOS
dos,是磁碟操作系統的縮寫,是個人計算機上的一類操作系統。家族包括MS-DOS、PC-DOS、DR-DOS、PTS-DOS、ROM-DOS、JM-OS等,其中以MS-DOS最為著名。雖然這些系統常被簡稱為"DOS",但幾乎沒有系統單純以"DOS"命名(只有一個毫無關連的1960年代IBM大型主機操作系統以此命名)。
三、WINDOWS
Microsoft Windows操作系統是美國微軟公司研發的一套操作系統,它問世於1985年,起初僅僅是Microsoft-DOS模擬環境,後續的系統版本由於微軟不斷的更新升級,不但易用,也慢慢的成為家家戶戶人們最喜愛的操作系統。
四、Access
Microsoft Office Access是由微軟發布的關系資料庫管理系統。它結合了MicrosoftJet Database Engine 和圖形用戶界面兩項特點,是 Microsoft Office 的系統程序之一。
Microsoft Office Access是微軟把資料庫引擎的圖形用戶界面和軟體開發工具結合在一起的一個資料庫管理系統。
五、Oracle
Oracle Database,又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關系資料庫管理系統。它是在資料庫領域一直處於領先地位的產品。可以說Oracle資料庫系統是目前世界上流行的關系資料庫管理系統,系統可移植性好、使用方便、功能強,適用於各類大、中、小、微機環境。