CentOS下搭建C/C++服务器环境

工作需要用Linux平台编写服务器,因此把自己搭建环境记录下来,以备不时之需。

0.    Linux平台信息

    CentOS 6.5 64位

1.    所需软件目录

    1.1    gcc、gcc-c++(g++)

    1.2    CMake-2.8.12.2

    1.3    ncurses-devel

    1.4    Mysql

    1.5    Boost

    1.6    MySql Connector/C++

    1.7    C++ IDE

2.    安装步骤

    2.1    安装gcc、gcc-c++(g++)

        直接使用# yum install gcc gcc-c++即可安装。

    2.2    安装CMake-2.8.12.2

        从CMake官网下载相关source包(CMake官网地址:http://www.cmake.org/cmake/resources/software.html)

        下载后解压包:# tar xvf cmake-2.8.12.2.tar.gz 

        进入文件夹:# cd cmake-2.8.12.2

        运行bootstrap脚本:# ./bootstrap

        # make

        # make install

        这里可能需要root权限。

    2.3    安装ncurses-devel

        直接# yum install ncurses-devel即可。

    2.4    安装Mysql

        从官网下载Mysql(http://dev.mysql.com/downloads/mysql/)

        下载后解压:# tar xvf mysql-5.6.19.tar.gz

        进入文件夹:# cd mysql-5.6.19.tar.gz    

        # mkdir /usr/local/mysql

        # mkdir /data/mysql

        编译安装:# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
        -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \
        -DDEFAULT_CHARSET=utf8 \
        -DDEFAULT_COLLATION=utf8_general_ci \
        -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \
        -DWITH_INNOBASE_STORAGE_ENGINE=1 \
        -DWITH_READLINE=1 \
        -DENABLED_LOCAL_INFILE=1 \
        -DMYSQL_DATADIR=/data/mysql/ \
        -DMYSQL_USER=mysql \
        -DMYSQL_TCP_PORT=3306

        # make && make install

        添加用户组:# groupadd mysql

        添加用户:# useradd mysql -g mysql -s /sbin/nologin

        # chown mysql.mysql -R /usr/local/mysql 

        # chown mysql.mysql -R /data/mysql

        # cd /usr/local/mysql

        # cp support-files/my-medium.cnf /etc/my.cnf

        # scripts/mysql_install_db  --user=mysql  --basedir=/usr/local/mysql --datadir=/data/mysql/ 

        # cp support-files/mysql.server /etc/init.d/mysqld

        # chmod 755 /etc/init.d/mysqld

        设置开机启动:# chkconfig mysqld on

        启动mysql:# service mysql start

        进入数据库:# mysql

        (如提示mysql: command not found,那是因为mysql命令的路径在/usr/local/mysql/bin下面,所以你直接使用mysql命令时,系统在/usr/bin下面查此命令,所以找不到了,解决办法是 ln -s /usr/local/mysql/bin/mysql /usr/bin 做个链接即可。)

    2.5    安装Boost

        下载Boost包(http://www.boost.org)

        解压文件:# tar xvf boost_1_55_0.tar.gz

        进入文件夹:# cd boost_1_55_0

        编译:# ./bootstrap.sh

        # ./bjam install

        测试:

        vi testboost.cpp

#include <iostream>
#include <boost/version.hpp>
  
int main()
{
    std::cout<<BOOST_VERSION<<std::endl;
    return 0;
}

     编译:g++ -o testboost testboost.cpp

    2.6 MySql Connector/C++

        下载MySql Connector/C++包(http://dev.mysql.com/downloads/connector/cpp/)

        解压:# tar xvf mysql-connector-c++-1.1.3.tar.gz

        进入文件夹:# cd mysql-connector-c++-1.1.3

        编译安装:# cmake .

        #make

        #make install

        测试:

        vi testsql.cpp

#include <iostream>
#include <sstream>
#include <memory>
#include <string>
#include <stdexcept>
   
using namespace std;
   
#include <mysql_connection.h>
#include <mysql_driver.h>
#include <cppconn/driver.h>
   
using namespace sql;
   
#define DBHOST ""
#define USER "root"
#define PASSWORD ""
   
int main() {
  Driver *driver;
  Connection *conn;
  driver = get_driver_instance();
  conn = driver->connect(DBHOST, USER, PASSWORD);
  conn->setAutoCommit(0);
  cout<<"DataBase connection autocommit mode = "<<conn->getAutoCommit()<<endl;
  delete conn;
  driver = NULL;
  conn = NULL;
  return 0;
}

      编译:g++ -o testsql -lmysqlcppconn testsql.cpp

        (1.如遇 "...libmysqlclient_xx, needed ... not found", 找到libmysqlclient_xx的位置,将其做个软链接ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18即可。

          2.如遇“ error while loading shared libraries: libmysqlcppconn.so.7: cannot open shared object file: No such file or directory“,找到libmysqlcppconn.so.7位置(如我的/usr/local/lib/libmysqlcppconn.so.7),然后执行ln -s /usr/local/lib/libmysqlcppconn.so.7 /usr/lib/libmysqlcppconn.so.7,并在root权限下执行: ldconfig 。)

    2.7    安装C++ IDE

        这里选择Eclipse,纯粹按习惯来的。

        # yum install eclipse eclipse-cdt

        等待安装完毕后,可以在桌面上建立它的启动器,在“命令”中输入Eclipse所在位置(如我的/usr/lib64/eclipse/eclipse)

        点击进入Eclipse,点击菜单Help-Install New Software,选择安装版本的更新地址(如我的http://download.eclipse.org/releases/helios),选择Collaboration-Mylyn Brigdge:C/C++ Development,Programming Languages-C/C++ *,安装。

        重启Eclipse后,就可以建立C/C++程序了。

 3  结语

   至此,我的服务器环境已经搭建完毕了,其中碰到的问题想想其实挺简单的,但碰到后一阵手忙脚乱,把它记录下来也许有人也碰到这样的问题呢。

posted @ 2014-06-26 16:34  Fun-X  阅读(343)  评论(0)    收藏  举报