CentOS下CMake源码编译安装

1. 安装

执行命令

[root@VM-0-9-centos ~]# cd /home
[root@VM-0-9-centos home]# mkdir cmake
[root@VM-0-9-centos home]# cd cmake
[root@VM-0-9-centos cmake]# wget https://github.com/Kitware/CMake/releases/download/v3.19.0-rc3/cmake-3.19.0-rc3-Linux-x86_64.tar.gz
[root@VM-0-9-centos cmake]# tar -xvf cmake-3.19.0-rc3/
[root@VM-0-9-centos cmake]# cd cmake-3.19.0-rc3/
[root@VM-0-9-centos cmake-3.19.0-rc3]# ./bootstrap
[root@VM-0-9-centos cmake-3.19.0-rc3]# gmake
[root@VM-0-9-centos cmake-3.19.0-rc3]# gmake install

查看状态

cmake --version

2. 测试

创建测试文件夹和两个文件

[root@VM-0-9-centos cmake-3.19.0-rc3]# mkdir xltest
[root@VM-0-9-centos cmake-3.19.0-rc3]# cd xltest
[root@VM-0-9-centos xltest]# vim cmaketest.cpp
[root@VM-0-9-centos xltest]# vim CMakeLists.txt

其中cmaketest.cpp 如下

#include <iostream>
using namespace std;
int main()
{
	cout<<"Hello Cmake!"<<endl;
	return 0;
}

CMakeLists.txt 如下

cmake_minimum_required(VERSION 3.0)
project(cmaketest)
set(SOURCE cmaketest)
add_executable(${PROJECT_NAME} ${SOURCE})

执行cmake

[root@VM-0-9-centos xltest]# cmake .

执行make

[root@VM-0-9-centos xltest]# make

执行可执行文件看到如下,安装成功

[root@VM-0-9-centos xltest]# ./cmaketest
Hello Cmake!

3. 问题及解决

问题如下,

-- Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY OPENSSL_INCLUDE_DIR)
CMake Error at Utilities/cmcurl/CMakeLists.txt:505 (message):
  Could not find OpenSSL.  Install an OpenSSL development package or
  configure CMake with -DCMAKE_USE_OPENSSL=OFF to build without OpenSSL.


-- Configuring incomplete, errors occurred!
See also "/home/cmake/cmake-3.19.0-rc3/CMakeFiles/CMakeOutput.log".
See also "/home/cmake/cmake-3.19.0-rc3/CMakeFiles/CMakeError.log".
---------------------------------------------
Error when bootstrapping CMake:
Problem while running initial CMake
---------------------------------------------

解决办法

yum install openssl*

.
.
.
.
.
.


桃花仙人种桃树,又摘桃花换酒钱_

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、安装MySQL 1、安装cmake cd /usr/local/src tar zxvf cmake-2.8.11.2.tar.gz cd cmake-2.8.11.2 ./configure make make install 2、安装MySQL groupadd mysql #添加mysql组 useradd -g mysql mysql -s /bin/false #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统 mkdir -p /data/mysql #创建MySQL数据库存放目录 chown -R mysql:mysql /data/mysql #设置MySQL数据库存放目录权限 mkdir -p /usr/local/mysql #创建MySQL安装目录 cd /usr/local/src #进入软件包存放目录 tar zxvf mysql-5.6.19.tar.gz #解压 cd mysql-5.6.19 #进入目录 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc #配置 make #编译 make install #安装 rm -rf /etc/my.cnf #删除系统默认的配置文件(如果默认没有就不用删除) cd /usr/local/mysql #进入MySQL安装目录 ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql #生成mysql系统数据库 ln -s /usr/local/mysql/my.cnf /etc/my.cnf #添加到/etc目录的软连接 cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld #把Mysql加入系统启动 chmod 755 /etc/init.d/mysqld #增加执行权限 chkconfig mysqld on #加入开机启动 vi /etc/rc.d/init.d/mysqld #编辑 basedir=/usr/local/mysql #MySQL程序安装路径 datadir=/data/mysql #MySQl数据库存放目录 :wq! #保存退出 service mysqld start #启动 vi /etc/profile #把mysql服务加入系统环境变量:在最后添加下面这一行 export PATH=$PATH:/usr/local/mysql/bin :wq! #保存退出 source /etc/profile #使配置立刻生效 下面这两行把myslq的库文件链接到系统默认的位置,这样你在编译类似PHP等软件时可以不用指定mysql的库文件地址。 ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql ln -s /usr/local/mysql/include/mysql /usr/include/mysql mkdir /var/lib/mysql #创建目录 ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock #添加软链接 mysql_secure_installation #设置Mysql密码,根据提示按Y 回车输入2次密码
以下是在CentOS 7系统下编译安装MySQL源码的步骤: 1. 安装编译工具和依赖包:使用以下命令安装编译工具和依赖包: ``` sudo yum install -y gcc-c++ cmake make bison-devel ncurses-devel openssl-devel ``` 2. 下载MySQL源码包:在MySQL官网(https://dev.mysql.com/downloads/mysql/)下载最新版本的MySQL源码包,并将其上传到CentOS服务器上。 3. 解压源码包:在终端中进入源码包所在的目录,并使用以下命令解压源码包: ``` tar -zxvf mysql-x.x.x.tar.gz ``` (x.x.x代表源码包的版本号) 4. 创建MySQL用户和组:使用以下命令创建MySQL用户和组: ``` sudo groupadd mysql sudo useradd -r -g mysql mysql ``` 5. 编译源码:在解压后的源码目录中,使用以下命令编译源码: ``` cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_DATADIR=/usr/local/mysql/data \ -DSYSCONFDIR=/etc \ -DWITH_MYISAM_STORAGE_ENGINE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_MEMORY_STORAGE_ENGINE=1 \ -DWITH_SSL=system \ -DENABLED_LOCAL_INFILE=1 \ -DWITH_READLINE=1 \ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci make ``` 上述命令中的参数含义如下: - CMAKE_INSTALL_PREFIX:MySQL的安装目录。 - MYSQL_DATADIR:MySQL的数据目录。 - SYSCONFDIR:MySQL的配置文件目录。 - WITH_MYISAM_STORAGE_ENGINE:启用MyISAM存储引擎。 - WITH_INNOBASE_STORAGE_ENGINE:启用InnoDB存储引擎。 - WITH_MEMORY_STORAGE_ENGINE:启用Memory存储引擎。 - WITH_SSL:使用系统自带的SSL库。 - ENABLED_LOCAL_INFILE:允许使用LOCAL INFILE。 - WITH_READLINE:启用readline库。 - MYSQL_UNIX_ADDR:MySQL的Unix socket文件路径。 - DEFAULT_CHARSET:默认字符集。 - DEFAULT_COLLATION:默认校对规则。 6. 安装MySQL:使用以下命令安装MySQL: ``` sudo make install ``` 7. 初始化MySQL:使用以下命令初始化MySQL: ``` sudo /usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data ``` 8. 配置MySQL:将MySQL配置文件复制到/etc目录下,并修改配置文件中的参数: ``` sudo cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf sudo vi /etc/my.cnf ``` 修改参数如下: ``` [mysqld] datadir=/usr/local/mysql/data socket=/tmp/mysql.sock # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 # Settings user and group are ignored when systemd is used. # If you need to run mysqld under a different user or group, # customize your systemd unit file for mysqld according to the # instructions in http://fedoraproject.org/wiki/Systemd user=mysql # Default to using old password format for compatibility with mysql 3.x # clients (those using the mysqlclient10 compatibility package). old_passwords=1 character-set-server=utf8 collation-server=utf8_general_ci [mysql] default-character-set=utf8 ``` 9. 启动MySQL服务:使用以下命令启动MySQL服务: ``` sudo /usr/local/mysql/support-files/mysql.server start ``` 至此,CentOS 7系统下MySQL源码编译安装完成。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值