1. 程式人生 > >lamp環境的搭建(原始碼編譯安裝)

lamp環境的搭建(原始碼編譯安裝)

在說如何安裝前我必須強調的幾件事:

(1)使用原始碼編譯安裝過程中會遇到很多錯誤,而且90%是缺少依賴包的錯,本文儘可能詳細記錄,但是無法考慮到所有情況,所以如果你在安裝的過程中遇到錯誤時,一個最有效的方法就是複製這個錯誤提示,然後百度。 (2)如果某個錯誤難以解決,可以換個軟體版本安裝試試。

一.必備資源

1.centos6.5 2.php-7.0.4 3.apache-2.2.31 4.mysql-5.6.29 執行命令安裝必備的依賴包
yum -y install make gcc gcc-c++ zlib-devel libtool libtool-ltdllibtool-ltdl-devel bison ncurses-devel

二、安裝依賴包 

首先通過百度搜索的方式下載如下所需的依賴包,儘量到官網上下載,版本可以不一致。 1.編譯安裝libxml2
[[email protected]]# tar -zxvf libxml2-2.6.30.tar.gz 
[[email protected]]# cd libxml2-2.6.30 
[[email protected]]# ./configure --prefix=/usr/local/libxml2
[[email protected]]# make
[[email protected]]# make install
2.編譯安裝libmcrypt
[
[email protected]
]# tar -zxvf libmcrypt-2.5.8.tar.gz [[email protected]]# cd libmcrypt-2.5.8 [[email protected]]# ./configure --prefix=/usr/local/libmcrypt [[email protected]]# make [[email protected]]# make instal
3.編譯安裝zlib
[[email protected]]# tar -zxvf zlib-1.2.3.tar.gz
[[email protected]
]# cd zlib-1.2.3 [[email protected]]# CFLAGS="-O3 -fPIC" ./configure --prefix=/usr/local/zlib/ (用64位元的方法進行編譯) [[email protected]]# make [[email protected]]# make install
4.編譯安裝libpng
[[email protected]]# tar -zxvf libpng-1.2.31.tar.gz
[[email protected]]# cd libpng-1.2.31
[[email protected]]# ./configure --prefix=/usr/local/libpng \
>--enable-shared (建立共享庫使用的GNU的libtool)
[[email protected]]# make
[[email protected]]# make install
5.編譯安裝jpeg
[[email protected]]# tar -zxvf jpegsrc.v6b.tar.gz
[[email protected]]# cd jpeg-6b
[[email protected]]# mkdir /usr/local/jpeg                    (建立jpeg軟體的安裝目錄)
[[email protected]]# mkdir /usr/local/jpeg/bin            (建立存放命令的目錄)
[[email protected]]# mkdir /usr/local/jpeg/lib            (建立jpeg庫檔案所在目錄)
[[email protected]]# mkdir /usr/local/jpeg/include      (建立存放標頭檔案目錄)
[[email protected]]# mkdir -p /usr/local/jpeg/man/man1  (建立存放手冊的目錄)
[[email protected]]# ./configure --prefix=/usr/local/jpeg \
>--enable-shared \    (建立共享庫使用的GUN的libtool)
>--enable-static     (建立靜態庫使用的GUN的libtool)
[[email protected]]# make
[[email protected]]# make install
執行make時如果出現如下錯誤:
./libtool --mode=compile gcc-O2  -I. -c ./jcapimin.c
make: ./libtool: Command notfound
make: *** [jcapimin.lo] Error 127
解決方法:
[[email protected]]# find / -name config.sub
/usr/share/libtool/config/config.sub
[[email protected]]# find / -name config.guess
/usr/share/libtool/config/config.guess
[[email protected]]# cp -vRp /usr/share/libtool/config/config.sub .
[[email protected]]# cp -vRp /usr/share/libtool/config/config.guess .
也就是把libtool裡面的兩個配置檔案拿來覆蓋掉jpeg-6b目錄下的對應檔案
make clean 再重新configure
6.編譯安裝freetype
[[email protected]]# tar -zxvf freetype-2.3.5.tar.gz
[[email protected]]# cd freetype-2.3.5
[[email protected]]# ./configure --prefix=/usr/local/freetype \
>--enable-shared    (建立共享庫使用的GUN的libtool)
[[email protected]]# make
[[email protected]]# make install
7.編譯安裝autoconf
[[email protected]]# tar -zxvf autoconf-2.61.tar.gz
[[email protected]]# cd autoconf-2.61
[[email protected]]# ./configure
[[email protected]]# make
[[email protected]]# make install
8.編譯安裝GD
[[email protected]]# tar -zxvf gd-2.0.35.tar.gz
[[email protected]]# cd gd-2.0.35
[[email protected]]# ./configure --prefix=/usr/local/gd \
>--with-zlib=/usr/local/zlib/ \      (指定zlib庫檔案的位置)
>--with-jpeg=/usr/local/jpeg/ \    (指定jpeg庫檔案的位置)
>--with-png=/usr/local/libpng/ \  (指定png庫檔案的位置)
>--with-freetype=/usr/local/freetype/     (指定freetype字型庫的位置)
[[email protected]]# make
[[email protected]]# make install
執行make時如果出現如下錯誤:
make[2]: *** [gd_png.lo] Error 1
make[2]: Leaving directory`/usr/src/linux/gd-2.0.35'
make[1]: *** [all-recursive]Error 1
make[1]: Leaving directory`/usr/src/linux/gd-2.0.35'
make: *** [all]  Error 2
解決方法:
[[email protected]]# find / -name gd_png.c
/usr/src/linux/gd-2.0.35/gd_png.c
[[email protected]]# find / -name png.h
/usr/local/libpng/include/png.h
[[email protected]]# vi /usr/src/linux/gd-2.0.35/gd_png.c
將#include "png.h"    
改為#include "/usr/local/libpng/include/png.h"  

9安裝libiconv
[[email protected] libiconv-1.14]# ./configure --prefix=/usr/local/libiconv
[[email protected] libiconv-1.14]# make && make install

二.安裝apache

1.解壓並安裝

[[email protected]]# tar -zxvf httpd-2.2.9.tar.gz
[[email protected]]# cd httpd-2.2.9
[[email protected]]# ./configure --prefix=/usr/local/apache \
> --enable-so \       (以動態共享物件編譯)
>--enable-rewrite  (基於規則的URL操控)
[[email protected]]# make
[[email protected]]# make install

將apache加入開機啟動

[[email protected]]# cp -vRp /usr/local/apache/bin/apachectl /etc/init.d/httpd
[[email protected]]# chmod +x /etc/init.d/httpd 
新增apache服務
[[email protected]]# chkconfig --add httpd
[[email protected]]# chkconfig --level 2345 httpd on
[[email protected]]# service httpd start
也可通過apache安裝目錄下的apachectl檔案無需配置直接啟動apache
/usr/local/apache/bin/apachectl start

啟動服務時,如果出現如下錯誤:
httpd: Could not reliablydetermine the server's fully qualified domain name, using localhost.localdomainfor ServerName
解決方法:
[[email protected]]# vi /usr/local/apache/conf/httpd.conf
新增上:ServerName localhost:80

執行chkconfig時,如果出現如下錯誤:

service httpd does not supportchkconfig
解決方法:
[[email protected]]# vi /etc/rc.d/init.d/httpd
在檔案第二行加入
#chkconfig:2345 10 90
#description:Activates/DeactivatesApache Web Server
儲存後再執行chkconfig

2.啟動apache

/usr/local/http2/bin/apachectl start|stop|restart

start、stop、restart分別代表開啟、關閉、重啟 此時在位址列裡輸入你本機的ip地址即可訪問到apache的歡迎頁面。

二、安裝mysql

先編譯安裝 cmake:
[[email protected]]# tar -zxvf cmake-2.8.7.tar.gz
[[email protected]]# cd cmake-2.8.7
[[email protected]]# ./bootstrap
[[email protected]]# gmake
[[email protected]]# gmake install
編譯安裝 MySQL5.5.20
[[email protected]]# groupadd mysql
[[email protected]]# useradd -g mysql mysql
[[email protected]]# tar -zxvf mysql-5.5.15.tar.gz
[[email protected]]# cd mysql-5.5.15
[[email protected]]#
/usr/local/bin/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \           (安裝根目錄)
> -DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock \   (UNIX socket檔案)
>-DDEFAULT_CHARSET=utf8 \     (預設字符集)
>-DDEFAULT_COLLATION=utf8_general_ci \  (預設編碼)
>-DWITH_EXTRA_CHARSETS=utf8,gbk \         (額外的編碼)
>-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \(啟用PERFSCHEMA引擎支援)
>-DWITH_FEDERATED_STORAGE_ENGINE=1 \   (啟用FEDERATED引擎支援)
> -DWITH_PARTITION_STORAGE_ENGINE=1\     (啟用PARTITION引擎支援)
>-DWITH_ARCHIVE_STORAGE_ENGINE=1 \         (啟用ARCHIVE引擎支援)
>-DWITH_READLINE=1 \(使用readline功能)
>-DMYSQL_DATADIR=/usr/local/mysql/data \  (資料庫資料目錄)
>-DMYSQL_TCP_PORT=3306                              (TCP/IP埠)
[[email protected]]# make
[[email protected]]# make install
[[email protected]]# cp -vRp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
修改配置檔案
[[email protected]]# vi /etc/my.cnf
     basedir=/usr/local/mysql
     datadir=/usr/local/mysql/data
     log-error=/usr/local/mysql/data/error.log
     pid-file=/usr/local/mysql/data/mysql.pid
初始化資料庫檔案
[[email protected]]# /usr/local/mysql/scripts/mysql_install_db \
>--defaults-flie=/etc/my.cnf \
> --basedir=/usr/local/mysql/\
>--datadir=/usr/local/mysql/data \
>--pid-file=/usr/local/mysql/data/mysql.pid \
> --user=mysql
許可權設定
[[email protected]]# chown -R root .
[[email protected]]# chown -R mysql data
[[email protected]]# chgrp -R mysql 
將mysql加入開機啟動
[[email protected]]# cp -vRp support-files/mysql.server /etc/init.d/mysqld
[[email protected]]# chmod +x /etc/init.d/mysqld
新增mysql服務
[[email protected]]# chkconfig --add mysqld
[[email protected]]# chkconfig --level 345 mysqld on
[[email protected]]# service mysqld start
配置mysql
[[email protected]]# bin/mysql
mysql> deletefrom mysql.user where Host!='localhost'; (只留允許本機登入的帳號)
mysql> flush privileges;  (重新整理授權表)
mysql> set password for 'root'@'localhost'=password('123456');  (設定使用者密碼)
mysql> exit
[[email protected]]# bin/mysql -h localhost -u root -p123456 (登入mysql)
三、安裝PHP
./configure --prefix=/usr/local/php \  
--with-apxs2=/usr/local/apache/bin/apxs \  
--with-mysql=/usr/local/mysql \
--with-pdo-mysql=/usr/local/mysql \
--with-mysqli=/usr/local/mysql/bin/mysql_config \    
--with-libxml-dir=/usr/local/libxml2/ \  
--with-png-dir=/usr/local/libpng/ \  
--with-jpeg-dir=/usr/local/jpeg/ \  
--with-freetype-dir=/usr/local/freetype/ \  
--with-gd \  
--with-mcrypt=/usr/local/libmcrypt/ \  
--with-config-file-path=/etc/ \
--enable-soap \  
--enable-sockets \  
--enable-mbstring



如果提示指定目錄下找不到gd.h,就直接寫--with-gd,省略掉後面的路徑,系統會自動查詢。
如果出現以下錯誤

解決辦法:
make clean
make

[[email protected]]# make
[[email protected]]# make install
[[email protected]]# cp -vRp php.ini-development /etc/php.ini
[[email protected]]# vi /usr/local/apache/conf/httpd.conf
新增上:
AddType application/x-httpd-php .php
[[email protected]]# service httpd stop
[[email protected]]# service httpd start
[[email protected]]# vi /usr/local/apache/htdocs/phpinfo.php
新增內容為:
<?php
       phpinfo();
?>
開啟瀏覽器進行訪問,如果出現PHP版本介面,及安裝成功。

相關推薦

lamp環境搭建(原始碼編譯安裝)

在說如何安裝前我必須強調的幾件事: (1)使用原始碼編譯安裝過程中會遇到很多錯誤,而且90%是缺少依賴包的錯,本文儘可能詳細記錄,但是無法考慮到所有情況,所以如果你在安裝的過程中遇到錯誤時,一個最有效

LAMP環境搭建之php安裝

lamp php PHP官網www.php.net當前主流版本為5.6/7.1 下載php cd /usr/local/src/ wget http://cn2.php.net/distributions/php-5.6.30.tar.gz 解壓源碼包 tar zxf php-5.6.30.tar

01-postgres9.4.5在redhat6.5環境原始碼編譯安裝(2016-11-08)

0讀者須知 1安裝redhat65 2更改本地yum源 4解壓postgres 5安裝依賴包 6增加使用者設定密碼 7開始編譯和安裝postgres 8設定環境變數 9初始化資

轉載!!Linux環境PostgreSQL原始碼編譯安裝

Linux版本: Red Hat 6.4 PostgreSQL版本: postgresql-9.3.2.tar.gz 資料存放目錄: /var/postgresql/data 軟體安裝位置: /usr/local/postgresql #!/bin/bash #建立使用者和組 grou

ESP8266 機智雲 開發環境搭建---原始碼編譯

安裝好了Linux系統,接著安裝VM tools 一切就緒接著是嘗試ESP韌體的原始碼編譯了 其實 VM 12版本的可以直接通過複製貼上,實現主機與虛擬機器之間的檔案操作,應該可跳過VM tools的安裝。(我沒有試過,但按道理應該是可以得,當然我還是覺得安裝了VM tools 使用共享資料夾是更方便的

從虛擬機器安裝 centos 7.* 到 LAMP環境 搭建以及PHPMyAdmin安裝 yum安裝時高版本PHP的選擇

本文主要做如下幾件事情1.Centos 7.* 的安裝 2.靜態IP設定以及DNS的設定3.lamp 環境的搭建4.搭建lamp環境時採用yum方式安裝高版本的PHP 7 或者php6.5(預設版本為5.4,PHP版本影響最大 apache和mysql不會有太大影響)5.安裝

保姆級教程——Ubuntu16.04 Server下深度學習環境搭建安裝CUDA8.0,cuDNN6.0,Bazel0.5.4,原始碼編譯安裝TensorFlow1.4.0(GPU版)

寫在前面 本文敘述了在Ubuntu16.04 Server下安裝CUDA8.0,cuDNN6.0以及原始碼編譯安裝TensorFlow1.4.0(GPU版)的親身經歷,包括遇到的問題及解決辦法,也有一些自己的經驗,希望能對讀者有所幫助。期間參考了許多前人的文章,後文會一一附上鍊接,在此先行謝過。在下能力有限,

LAMP環境搭建(源碼包安裝,僅測試)

dex pack 數據加密 spa 不支持 doc 安裝php mysql數據庫 mysqld linux系統+Apache服務+MySQL數據庫+PHP 安裝順序:PHP要在最後安裝 首先將安裝包上傳到/root目錄下 鏈接:http://pan.baidu.com/s/

[環境配置]Ubuntu 16.04 原始碼編譯安裝OpenCV-3.2.0+OpenCV_contrib-3.2.0及產生的問題

1.OpenCV-3.2.0+OpenCV_contrib-3.2.0編譯安裝過程 1)下載官方要求的依賴包 GCC 4.4.x or later CMake 2.6 or higher Git GTK+2.x or higher, including headers (libgtk2.

Redhat6.5系統下搭建LNMP環境原始碼編譯

LNMP LNMP代表的就是:Linux系統下Nginx+MySQL+PHP這種網站伺服器架構。 Linux是一類Unix計算機作業系統的統稱,是目前最流行的免費作業系統。。 Nginx是一個高效能的HTTP和反向代理伺服器,也是一個IMAP/POP3/SMTP代理伺服器。 Mysq

EOS系列四:Ubuntu上搭建EOS開發環境原始碼編譯

步驟: 1、git下載原始碼 $ git clone https://github.com/EOSIO/eos --recursive 2、 編譯原始碼: 下載完成之後會在home目錄建立eos

LAMP環境搭建備忘 -- Apache、pHp 安裝 (二)

     上一篇 Linux 已經安裝好了,我們選擇了 CentOS 7 的最小化安裝,即沒有圖形介面,並且我們在安裝時設定了網路連線即能夠連上外部網路,還設定了 root 密碼。下面我們要在此基礎上繼續安裝 Apache 和 pHp 這兩個軟體。    

Linux(ubuntu14.04)上編譯Android4.4原始碼環境搭建編譯全過程

關於Linux(ubuntu14.04)上編譯Android原始碼的環境搭建詳細過程都是在sublime text中編輯好的,無奈,這次的資料丟失讓我不得不重新來回想手打一次了。可能很多細節問題,這次重新編輯文章時不會記得那麼清晰了,還請有問題的朋友在下面留言給我就好了。

Centos7下LAMP環境搭建,常用軟體安裝解除安裝以及程序檢視與操作

1.Centos7下apache安裝以及配置(http://www.linuxidc.com/Linux/2014-11/109235.htm) 1)安裝軟體 yum -y install httpd 2)設定自啟 systemctl enable httpd.

centos7原始碼編譯安裝LAMP

LAMP用到的軟體版本: httpd-2.4.27.tar.gz mariadb-10.2.8-linux-x86_64.tar.gz php-7.1.10.tar.xz 安裝順序: 順序: mariadb–>httpd–>php htt

在CENT OS 7.0 64位系統上原始碼編譯安裝OPENCV3.0以及CUDA7.0,支援CUDA開發,並整合QT5.5.0的開發環境

=============================概述================================= 在CENT OS 7.0 64位系統上原始碼編譯安裝OPENCV,支援CUDA,並整合QT的開發環境,整體過程如下: 1,安裝作業系統,我使用U

Android 原始碼環境搭建編譯

假設原始碼根目錄為~/Android 1 環境搭建 1.1 安裝openjdk-7-jdk Android 5.1 用到的jdk不再是Oracle 的 jdk ,而是開源的 openjdk,在ubuntu安裝好後,使用如下命令安裝jdk:

CentOS6.8伺服器LAMP環境搭建(一) 安裝Apache2.4.25

一、系統環境 系統平臺:CentOS 6.8 64位Apache版本: httpd-2.4.25.tar.gzMySQL版本: mysql-5.7.18.tar.gzPHP版本: php-7.1.4.tar.gz phpMyAdmin版本:phpMyAdmin-4.7.0-all-languages.tar

Linux(ubuntu14.04)上編譯Android4.4原始碼環境搭建編譯

1.下載並安裝jdk6   注意,版本一定要是jdk6,其他版本都會有問題。   網上流傳的方法大都是apt-get install來安裝jdk,實際操作證明這樣是不行的,下面給出個下載jdk6的地址   https://jdk6.java.net/download.htm

centos7.3實現基於原始碼編譯安裝LAMP的wordpress應用

WordPress應用    是一款基於PHP開發的部落格釋出平臺。使用者可以在支援PHP和MySql的系統上,輕鬆地搭建WordPress部落格系統,並在上面釋出自己的部落格文章。    關於LAMP,之前的文章中已經有過很多的介