1. centos7 gcc编译器对c11标准的支持
gcc-std=c11main.c-omain
前提是你的gcc版本得够新, 支持 c11才可以.
2. centos7怎么编译安装gcc-c++
方法/步骤
1
yum install glibc-static libstdc++-static -y
安装c和c++的静态库(据说如果系统中缺少libc.a和libstdc++.a编译时会出错,但是我没有那么多闲情逸致去试,实践过的朋友可以回复一下,分享一下经验,让大家都长长见识)
2
下载解压gcc,我的gcc目录是gcc-4.8.0
3
进入gcc目录,执行:
./contrib/download_prerequisites
这个神奇的脚本文件会帮我们下载、配置、安装那三个依赖的库。可以节约我们大量的时间和精力。
4
你以为这三个库自动下载了、自动make install了就没事了吗?错!
很多人在编译gcc的时候出现各种奇奇怪怪的错误就是这步没有做好。
它们还不在.so文件的搜索路径里面,需要加进去,最后切记切记一定要执行一下ldconfig。
大致做法为:
1,找到你的共享库文件被install到哪个目录了(updatedb+locate命令)。
2,如果你的库不是直接放在/lib或/usr/lib下,需要修改/etc/ld.so.conf文件,加入你的共享库的路径
3,如果在2中添加了共享库路径,切记要执行一下ldconfig,更新响应cache文件让系统能找到你的共享库。
5
建立临时目录,这个目录用以存放编译时的大量临时文件,是文档要求中必须的。
我是在gcc-4.8.0下建立了一个名为gcc-build-4.8.0的目录,进入它。
mkdir gcc-build-4.8.0
cd gcc-build-4.8.0
配置gcc编译选项
6
强烈建议阅读INSTALL目录下的说明文档,尤其是configure.html,以确定你的编译选项。
比较基本的选项有--enable-languages,说明你要让你的gcc支持那些语言,--disable-multilib不生成编译为其他平台可执行代码的交叉编译器。--disable-checking生成的编译器在编译过程中不做额外检查,也可以使用--enable-checking=xxx来增加一些检查。
网上还说了什么--with-gmp、--with-mpfr、--with-mpc这三个选项,但是如果你3,4步做好了,就不要配了,反之你还是老实点吧别抱侥幸心理了。
调用gcc-4.8.0目录下的configure文件:
例如:
../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
7
执行
../make #不解释
执行编译命令(#在8核的虚拟机上进行编译,每个核分配2个编译任务)
make -j16
make install编译过程CPU 核基本100%占用,整个编译用时11分50秒。
检查gcc版本
#你就等吧少年,建议晚上睡觉前做
当然上面三步一定要在前一步顺利结束的情况下进行,如果哪一步出错了,结果都显示error了,就不要再做后面的了。在shell的输出里搜索"error"看具体的出错点是什么,、google一下为什么。
如果你求稳的话,可以在make install之前先make check一下。
3. centos7安装php
centos7系统源码编译安装PHP7.3.5版本新增系统用户组和用户:
下载PHP7.3.5
[root@localhost~]#mkdirdevdir
[root@localhost~]#cddevdir/腔李
[root@localhostdevdir]#wget
-bash:wget:未找到命令
[root@localhostdevdir]#rpm-qa|grepwget
[root@localhostdevdir]#yum-yinstallwget
[root@localhostdevdir]#rpm-qa|grepwget
wget-1.14-18.el7.x86_64
下载PHP7解压编译
wget-c
编译参数解释
--with-fpm-user=webu--with-fpm-group=webg添加PHP运行用户和用户组
配置信息出庆饥错:
下载gcc软件编译器yuminstall-ygcc
configure:error:libxml2notfound..
下载libzip-1.5.2.tar.gz
解决libzip和cmake版本问题
重新配置PHP7编译环境参数
libzip-1.5.2无法安装誉圆返,已经取消了。
提示off_t类型没有定义undefind,解决方法:
编译安装
测试PHP是否安装成功
转载自:
阿里云默认centos7上怎么安装php
首先更新系统软件/str
$yumupdate
安装nginx/str/str
1.安装nginx源
$yumlocalinstall.安装nginx
$yuminstallnginx
3.启动nginx
$servicenginxstart
Redirectingto/bin/systemctlstartnginx.service4.访问http://你的ip/
如果成功安装会出来nginx默认的欢迎界面
安装MySQL5.7.*
/str
1.安装mysql源/str
$yumlocalinstall.安装mysql
$yuminstallmysql-community-server
确认一下mysql的版本,有时可能会提示mysql5.63.安装mysql的开发包,以后会有用
$yuminstallmysql-community-devel
4.启动mysql
$servicemysqldstart
Redirectingto/bin/systemctlstartmysqld.service5.查看mysql启动状态
$servicemysqldstatus
出现pid
证明启动成功
6.获取mysql默认生成的密码
$grep'temporarypassword'/var/log/mysqld.log2015-12-05T05:41:09.104758Z1[Note]@localhost:%G1Rgns!dD!v/str
加粗的就是生成的密码
7.换成自己的密码
$mysql-uroot-p
Enterpassword:输入上面的密码
成功输入后进入一下步,这里你估计会输入好几次才进去8.更换密码
mysqlALTERUSER'root'李并@'localhost'IDENTIFIEDBY'MyNewPass4!'这个密码一定要足够复杂,不然会不让你改,提示密码不合法;9.退出mysql;
mysqlquit;
10.用新密码再登录,试一下新密码
$mysql-uroot-p
Enterpassword:输入你的新密码
11.确认密码正确后,退出mysql;
mysql哪衫迹quit;
编译安装php7.0.0
/str
/str
1.下载php7源码包/str
$cd/rootwget-Ophp7.tar.gz.解压源码包/str
$tar-xvfphp7.tar.gz
3./str
$cdphp-7.0.1
4.安塌乱装php依赖包/str
/str
$yuminstalllibxml2libxml2-developensslopenssl-develbzip2bzip2-devellibcurllibcurl-devellibjpeglibjpeg-devellibpnglibpng-develfreetypefreetype-develgmpgmp-devellibmcryptlibmcrypt-develreadlinereadline-devellibxsltlibxslt-devel5.编译配置,这一步我们会遇到很多configureerror,我们一一解决,基本都是相关软件开发包没有安装导致/str
/str
$./configure
--prefix=/usr/local/php
--with-config-file-path=/etc
--enable-fpm
--with-fpm-user=nginx
--with-fpm-group=nginx
--enable-inline-optimization
--disable-debug
--disable-rpath
--enable-shared
--enable-soap
--with-libxml-dir
--with-xmlrpc
--with-openssl
--with-mcrypt
--with-mhash
--with-pcre-regex
--with-sqlite3
--with-zlib
--enable-bcmath
--with-iconv
--with-bz2
--enable-calendar
--with-curl
--with-cdb
--enable-dom
--enable-exif
--enable-fileinfo
--enable-filter
--with-pcre-dir
--enable-ftp
--with-gd
--with-openssl-dir
--with-jpeg-dir
--with-png-dir
--with-zlib-dir
--with-freetype-dir
--enable-gd-native-ttf
--enable-gd-jis-conv
--with-gettext
--with-gmp
--with-mhash
--enable-json
--enable-mbstring
--enable-mbregex
--enable-mbregex-backtrack
--with-libmbfl
--with-onig
--enable-pdo
--with-mysqli=mysqlnd
--with-pdo-mysql=mysqlnd
--with-zlib-dir
--with-pdo-sqlite
--with-readline
--enable-session
--enable-shmop
--enable-simplexml
--enable-sockets
--enable-sysvmsg
--enable-sysvsem
--enable-sysvshm
--enable-wddx
--with-libxml-dir
--with-xsl
--enable-zip
--enable-mysqlnd-compression-support
--with-pear
--enable-opcache
configureerror:
1.configure:error:xml2-confignotfound..
解决:
$yuminstalllibxml2libxml2-devel
2.configure:error:CannotfindOpenSSL'sevp.h
解决:
$yuminstallopensslopenssl-devel
3.configure:error:解决:
$yuminstallbzip2bzip2-devel
4.configure:error:-easy.hshouldbeincurl-dir/include/curl/解决:
$yuminstalllibcurllibcurl-devel
5.Ifconfigurefailstry--with-webp-dir=DIRconfigure:error:jpeglib.hnotfound.
解决:
$yuminstalllibjpeglibjpeg-devel
6.Ifconfigurefailstry--with-webp-dir=DIR
checkingforjpeg_read_headerin-ljpeg...yesconfigure:error:png.hnotfound.
解决:
$yuminstalllibpnglibpng-devel
7.Ifconfigurefailstry--with-webp-dir=DIR
checkingforjpeg_read_headerin-ljpeg...yescheckingforpng_write_imagein-lpng...yesIfconfigurefailstry--with-xpm-dir=DIR
configure:error:freetype-confignotfound.
解决:
$yuminstallfreetypefreetype-devel
8.configure:error:Unabletolocategmp.h解决:
$yuminstallgmpgmp-devel
9.configure:error:mcrypt.hnotfound.Pleasereinstalllibmcrypt.
解决:
$yuminstalllibmcryptlibmcrypt-devel
10.configure:error:Pleasereinstallreadline-Icannotfindreadline.h解决:
$yuminstallreadlinereadline-devel
11.configure:error:xslt-confignotfound.Pleasereinstallthelibxslt=1.1.0distribution解决:
$yuminstalllibxsltlibxslt-devel
6.编译与安装
$makemakeinstall
这里要make好久,要耐心一下
7.添加PHP命令到环境变量
$vim/etc/profile
在末尾加入
PATH=$PATH:/usr/local/php/bin
exportPATH
要使改动立即生效执行
$./etc/profile
或
$source/etc/profile
查看环境变量
$echo$PATH
查看php版本
$php-v
8.配置php-fpm
$cpphp.ini-proction/etc/php.ini
$cp/usr/local/php/etc/php-fpm.conf.default/usr/local/php/etc/php-fpm.conf$cp/usr/local/php/etc/php-fpm.d//usr/local/php/etc/php-fpm.d/cpsapi/fpm/init.d.php-fpm/etc/init.d/php-fpm$chmod+x/etc/init.d/php-fpm
9.启动php-fpm
$/etc/init.d/php-fpmstart
配置nginx虚拟机,绑定域名/str
1.
/str
$vim/etc/nginx/conf.d/php7.thinkcmf.com.conf这里可以把php7.thinkcmf.com.conf改成自己的域名把下面的内容复制到php7.thinkcmf.com.conf里server{
listen80;
server_namephp7.thinkcmf.com;
root/var/www/html/php7.thinkcmf.com;#该项要修改为你准备存放相关网页的路径location/{
indexindex.phpindex.htmlindex.htm;
#如果请求既不是一个文件,也不是一个目录,则执行一下重写规则if(!-e$request_filename)
{
#地址作为将参数rewrite到index.php上。
rewrite^/(.*)$/index.php/$1;
#若是子目录则使用下面这句,将subdir改成目录名称即可。
#rewrite^/subdir/(.*)$/subdir/index.php/$1;}
}
#proxythephpscriptstophp-fpm
location~.php{
includefastcgi_params;
##pathinfo支持start
#定义变量$path_info,用于存放pathinfo信息set$path_info"";
#定义变量$real_script_name,用于存放真实地址set$real_script_name$fastcgi_script_name;#如果地址与引号内的正则表达式匹配
if($fastcgi_script_name~"^(.+?.php)(/.+)$"){#将文件地址赋值给变量$real_script_name
set$real_script_name$1;
#将文件地址后的参数赋值给变量$path_info
set$path_info$2;
}
#配置fastcgi的一些参数
fastcgi_paramSCRIPT_FILENAME$document_root$real_script_name;fastcgi_paramSCRIPT_NAME$real_script_name;fastcgi_paramPATH_INFO$path_info;
###pathinfo支持end
fastcgi_intercept_errorson;
fastcgi_pass127.0.0.1:9000;
}
}
2.重启nginx
$servicenginxreload
3.
$vim/var/www/html/php7.thinkcmf.com/index.php/str
把下面的代码复制到这个文件里
?php
phpinfo();
4.查看访问
Centos7下PHP7最新版怎么安装步骤1:检查已安装的内核版本#uname-sr步骤2:在CentOS7中升级内核接下来,安装最新的主线稳定内核:#yum--enablerepo=elrepo-kernelinstallkernel-ml最后,重启机器并应用最新内核,困森链接着运行下面的命令检查汪孙最新内核版本还有一些代码我不想打了,楼主就自己去后盾人看看吧对你很春盯有帮助的
=0.11)'>CentOS7编译安装PHP7.4提示Nopackage'libzip'found或者(libzip>=0.11)编译安装PHP7.4提示Nopackage'libzip'found或者(libzip=0.11),原因凯稿是libzip没有安装或者版本太低,解决方法如枝镇下:
安装完成后,查看是否存在/usr/local/lib/pkgconfig目录,如果存在,执行如下命令来设猛孙粗置PKG_CONFIG_PATH: