plain framework 1 一款主要用於網絡(游戲)開發的C/C++開源框架 安裝篇 updated


上次介紹了一下plain framework的基礎相關資料,今天該框架正式開源發布。項目的地址托管於github上,我相信大多數朋友都應該知道。今天要介紹的是該框架的目錄基本結構,以及分別在linux以及windows平台上安裝的例子。為了讓初學或者技術不是太扎實的朋友也能快速上手,我在這里一步步從開發環境的搭建講述到第一個比較完整的示例(網關服務器),每一步都是今日從空白的系統開始及時操作,由簡入深,如果大家不太明白請到交流群詢問。

更新日志

  2015年1月10日 更新lnmp安裝腳本,兼容最新centos7以上系統,原網盤地址

源碼地址

  https://github.com/viticm/plainframework1

目錄結構

  

框架基本介紹

  地址:http://www.cnblogs.com/lianyue/p/3972492.html

參考手冊

  參考手冊正在編寫過程中,會第一時間先同步到博客上,由於這些文章可能上不了首頁,感興趣的朋友不妨關注博客。

持續更新

  如果框架發現了新的BUG或者有內容更新,將會持續同步到github項目上。

LINUX INSTALL

  本次選用的linux系統為centos(6.5),你可以嘗試其他linux系統也可。安裝好linux系統,或者已經存在linux系統的情況下,那么我們開始搭建lnmp環境(web開發環境)。你可以在網絡上去尋找相關的資料,或者使用我提供的腳本進行安裝,不過php版本最好為5.4以上版本,這是為以后擴展預留。

  首先你要確保你的系統中安裝了git,如果沒有安裝請用以下命令安裝(需聯網):

yum -y install git

其次將框架源碼安裝到你的開發目錄中,如:

cd ~ && mkdir work #進入用戶主目錄,並創建工作目錄
cd work && git clone https://github.com/viticm/plainframework1

  1、使用框架內的腳本進行在線安裝(必須使用root權限安裝)

cd plainframework1/tools/script/linux/install/ && sudo sh install_web_develop.sh

  2、使用提供的離線包及腳本進行離線安裝(必須使用root權限,沒有網絡的需注意以下說明)

    可以到百度雲盤去取該離線安裝包鏈接:http://pan.baidu.com/s/1pJwnHn9 密碼:sa9h

    將包放到/web目錄下並解壓,命令如下:

mkdir -p /web && cd /web && tar -xjvf web.tar.bz2

    如果沒有網絡的情況下,你保證了安裝gcc、g++、cmake等必要的工具之后,設置腳本install_web_develop.sh的cDownload=on參數為off。

    運行腳本進行安裝(大約30~50分鍾):

sh install_web_develop.sh #運行腳本

    安裝成功截圖:

  

    安裝成功后,再安裝框架的開發環境(使用root安裝):

cd tools/script/linux/install/ && sh install_environment.sh --full

   開發環境成功截圖:

  創建用戶數據庫(網關服務器用):

cd ~/work/plainframework1/tools/script/sql/ #進入腳本目錄
mysql -uroot -pmysql #進入mysql命令行

mysql> CREATE DATABASE sword_user DEFAULT CHARSET UTF8; //創建數據庫

mysql> source sword_user.sql; //執行腳本

  配置數據源:

vim /etc/odbc.ini #編輯配置文件

  最終的配置如下,其實可以不更改:

[sword_user]
Driver          = /usr/local/lib/mysqlodbc/libmyodbc5a.so
DATABASE        = sword_user
DESCRIPTION     = MySQL ODBC 5.3 Ansi Driver test
SERVER          = localhost
UID             = root
PASSWORD        = 
SOCKET          = 

[sword_character]
Driver          = /usr/local/lib/mysqlodbc/libmyodbc5a.so
DATABASE        = sword_character
DESCRIPTION     = MySQL ODBC 5.3 Ansi Driver test
SERVER          = localhost
UID             = root
PASSWORD        = 
SOCKET          = 

編譯框架

  框架使用了cmake等工具編譯,如果你使用了我提供的腳本那么編譯環境可以不用自己配置。

  1、編譯依賴

cd ~/work/plainframework1/pf/dependencies/lua/ #lua
cmake ./
make
cd ~/work/plainframework1/pf/dependencies/iconv/ #iconv
cmake ./
make

  2、編譯框架核心

cd ~/work/plainframework1/pf/core/
cmake ./
make

編譯完整示例

  完整示例中提供了一個網關服務器,其中用到了網絡、數據庫等核心接口。

cd ~/work/plainframework1/applications/gateway/
cmake ./
make

運行示例

  1、拷貝運行庫

cd ~/work/plainframework1/applications/bin/
cp ~/work/plainframework1/pf/dependencies/dll/lib*.so ./
cp ~/work/plainframework1/pf/core/dll/libpf_core.so ./

  2、配置文件

cd ~/work/plainframework1/applications/bin/
vim config/gateway_info.ini
[System]
DBIP=localhost
DBPort=3306
DBConnectionOrDBName=sword_user; 連接或數據庫名稱
DBUser=root
DBPassword=mysql
DBConnectorType=0; 連接類型 0 odbc,  1 mysql, 2 sqlserver, 3 mongodb(現在只實現了ODBC)
EncryptDBPassword=0; 是否加密了數據庫密碼
NetListenIP=127.0.0.1; 網絡監聽IP
NetListenPort=12680; 網絡監聽端口
NetConnectionMax=10240; 最大支持的網絡連接數量

  3、運行

cd ~/work/plainframework1/applications/bin/
./gateway

RESULT:

WINDOWS INSTALL

  在windows上安裝開發環境就相對比較容易了,因為不是使用源碼編譯安裝的。我在這里使用的是wamp作為web開發環境,而odbc則是使用系統自帶的odbc32位,如果你的機器不是64位的則沒有關系。如果你想將框架和應用編譯為64位則使用64位的ODBC,至於原因我就不解釋了。

源碼下載

  如果用github朋友比較多的可以使用github的客戶端,打開源碼連接后:

PHP環境變量設置

  將PHP的執行文件的路徑設置到你的環境變量中,為了運行框架中的一些腳本,比較重要。

 

編譯框架

  由於vs編譯時對重復的文件名則不能正確的鏈接到目標中,而框架中則存在了許多重復的文件名,所以這里使用到了為windows編譯的工具。

  路徑: tools\script\bat\rename_forvsbuild.bat

  雙擊打開,然后輸入選項如下:

回車等待工具執行完成:

  進入pf\core\scripts打開工程pf_core.vc9.sln進行編譯(目前只支持release編譯),當然你可以將此工程轉換為vs的其他版本。

編譯例子

  同編譯框架一樣,例子的編譯也需要重寫項目文件。

  打開tools\script\bat\rename_forvsbuild.bat

  revert to standard是否還原為標准的,不用輸入,直接回車,第二次執行該操作時工程將自動還原。

  打開工程文件applications\gateway\scripts\gateway.vc9.sln進行編譯。

安裝mysql的odbc driver

  地址為:http://dev.mysql.com/downloads/connector/odbc/ 版本3.5以上的即可

創建數據庫

  創建名為sword_user的數據庫,編碼設置為odbc,並在該數據庫下執行腳本tools\script\sql\sword_user.sql。

配置ODBC

  由於我使用的是32位的應用,所以使用32位的ODBC,如圖:

  添加你的mysql連接信息如下,連接名為sword_user:

運行示例

  拷貝依賴和框架的動態庫到applications\bin目錄下。

  依賴動態庫:pf\dependencies\dll\Release

  框架動態庫:pf\core\dll\Release

  保證mysql和數據庫成功的前提下運行gateway.exe

RESULT

 成員招募(長期有效)

  如果你也對開源知識比較感興趣,如果也對網絡應用或者網絡游戲感興趣,如果你也對該框架感興趣,你可以加入我們的QQ群(348477824)。

  歡迎大家進群相互交流學習,同時也歡迎各位朋友對該框架供出自己的一份心力。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM