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

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

更新日誌

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

源碼地址

  https://github.com/viticm/plainframework1mysql

目錄結構

  

框架基本介紹

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

參考手冊

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

持續更新

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

LINUX INSTALL

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

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

yum -y install git

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

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

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

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

  二、使用提供的離線包及腳本進行離線安裝(必須使用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等工具編譯,若是你使用了我提供的腳本那麼編譯環境能夠不用本身配置。

  一、編譯依賴

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

  二、編譯框架核心

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

編譯完整示例

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

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

運行示例

  一、拷貝運行庫

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

  二、配置文件

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; 最大支持的網絡鏈接數量

  三、運行

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)。

  歡迎你們進羣相互交流學習,同時也歡迎各位朋友對該框架供出本身的一份心力。

相關文章
相關標籤/搜索