首頁 php教程 php手册 在Ubuntu中使用源码编译安装Apache+MySQL+PHP+phpMyAdmin

在Ubuntu中使用源码编译安装Apache+MySQL+PHP+phpMyAdmin

Jun 06, 2016 pm 07:57 PM
ubuntu 使用 安裝 原始碼 編譯

操作系统:ubuntu12.04LTS(64位) 编译安装的步骤如下: 检查安装的编译工具 编译过程中需要C的编译器,C的编译器,make,和编译mysql最新版本时需要的cmake。 检查编译器软件是否安装的命令是: dpkg –l | grep filename 依次检查gcc,g,make,cmake是否

操作系统:ubuntu12.04LTS(64位)

编译安装的步骤如下:

检查安装的编译工具

编译过程中需要C的编译器,C++的编译器,make,和编译mysql最新版本时需要的cmake。

检查编译器软件是否安装的命令是:

dpkg –l | grep filename
登入後複製

依次检查gcc,g++,make,cmake是否安装

检查是否已经有默认安装的软件,并卸载

如果已经安装过Apache,mysql,php需要先停止服务,卸载先前的软件后再工作

卸载软件的命令

apt-get remove –purge softname
dpkg –r xxx.deb
登入後複製

编译安装libxml2

下载地址:libxml2-2.9.0.tar.gz

cd /usr/local/src
tar –zvxf libxml2-2.9.0.tar.gz
cd libxml2-2.9.0
./configure –prefix=/usr/local/libxml2
make
sudo make install
登入後複製

编译安装libmcrypt

下载地址:libmcrypt-2.5.7.tar.gz

cd /usr/local/src
tar –zvxf libmcrypt-2.5.7.tar.gz
cd libmcrypt-2.5.7
./configure --prefix=/usr/local/libmcrypt
make
sudo make install
登入後複製

编译安装zlib

下载地址:zlib-1.2.8.tar.gz

cd /usr/local/src
tar –zvxf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make
sudo make install
登入後複製

注意安装zlib库的时候不能指定它的安装路径,否则安装后面库的时候会找不到zlib的位置,手动指定路径也无法解决

安装libpng库

下载地址:libpng-1.6.7.tar.gz

cd /usr/local/src
tar –zvxf libpng-1.6.7.tar.gz
cd libpng-1.6.7
./configure --prefix=/usr/local/libpng
make
sudo make install
登入後複製

如果上一步的zlib库指定了特定的安装路径,在这里configure的时候会提示zlib没有安装问题,此时回到zlib的源代码执行

make clean重新编译安装

安装jpeg6

下载地址:jpegsrc.v6b.tar.gz

需要手动创建安装需要的目录,在安装时不能自动创建

mkdir /usr/local/jpeg6
mkdir /usr/local/jpeg6/bin
mkdir /usr/local/jpeg6/lib
mkdir /usr/local/jpeg6/include
mkdir –p /usr/local/jpeg6/man/man1
cd /usr/local/src
tar –zvxf jpegsrc.v6b.tar.gz
cd jpeg-6b
./configure --prefix=/usr/local/jpeg6 –enable-shared –enable-static
make
sudo make install
登入後複製

可能出现的错误:make: ./libtool:命令未找到(解决办法参考这篇文章:Linux 安装 jpeg-6b 出错:./libtool 命令未找到)

安装freetype

下载地址:freetype-2.4.10.tar.gz

cd /usr/local/src
tar –zvxf freetype-2.4.10.tar.gz
cd freetype-2.4.10
./configure --prefix=/usr/local/freetype
make
sudo make install
登入後複製

出错信息及解决办法参考这篇文章:Linux下编译安装freetype出错信息及解决办法以及这篇文章:编译安装 freetype 报错 make: [install] 错误 1 (忽略) 及解决办法

安装autoconf库

下载地址:autoconf-2.68.tar.gz

安装autoconf需要安装m4软件,不然configure不会通过的,而且最好默认安装,不指定prefix,否则后面安装php扩展会比较麻烦。

cd /usr/local/src
tar –zvxf autoconf-2.68.tar.gz
cd autoconf-2.68
./configure
make
sudo make install
登入後複製

安装gd库

下载地址:gd-2.0.35.tar.gz

cd /usr/local/src
tar –zvxf gd-2.0.35.tar.gz
cd gd-2.0.35
./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg6 --with-png=/usr/local/libpng --with-freetype=/usr/local/freetype
make
sudo make install
登入後複製

在安装gd库的时候会出现找不到png库的情况,这时我们需要手动修改gd_png.c文件,找到

#include "png.h"

修改为真正的png库位置

安装Apache服务器

下载地址:httpd-2.2.26.tar.gz

cd /usr/local/src
tar –zvxf httpd-2.2.26.tar.gz
cd httpd-2.2.26
./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd --with-include-apr --disable-userdir --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-static-support
make
sudo make install
登入後複製

安装Apache会出现依赖库的问题,需要提前安装apr,apr-util,pcre 安装方法就是正常的编译安装(可参考这篇文章:Ubuntu下使用源代码编译安装apache2.2.26)

启用apache服务

cp /usr/local/apache2/bin/apachectl /sbin/
apachectl start
netstat -tnl | grep 80
vim /etc/rc.loacl
登入後複製

安装mysql数据库

下载地址:mysql-5.5.25a.tar.gz

cd /usr/local/src
tar –zvxf mysql-5.5.25a.tar.gz
cd mysql-5.5.25a
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_READLINE=1 -DWITH_SSL=bundled -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITHOUT_PARTITION_STORAGE_ENGINE=1 -DWITH_DEBUG=0
make
sudo make install
登入後複製

安装过程会出现的错误及解决办法参考这篇文章:Ubuntu12.04编译安装MySQL 5可能出现的错误及解决办法

创建mysql 用户

groupadd mysql
useradd -r -g mysql mysql
登入後複製

权限设置及授权表的安装

cd /usr/local/mysql
chown -R mysql .
chgrp -R mysql .
scripts/mysql_install_db --user=mysql
chown -R root .
chown -R mysql data
登入後複製

创建配置文件

cp support-files/my-medium.cnf /etc/my.cnf
登入後複製

启动mysql服务

bin/mysql_safe --user=mysql&
netstat -tnl | grep 3306
登入後複製

配置mysql服务

cp support-files/mysql.server /etc/init.d/mysql
sudo update-rc.d mysql defaults
chkconfig --add mysql
chkconfig mysql on
登入後複製

用户账户控制

bin/mysql -uroot
mysql> DELETE mysql.user WHERE Host='localhost'AND User='';
mysql>SET PASSWORD FOR 'root'@'localhost'=PASSWORD('123456');
登入後複製

启动报错:无法启动Couldn't find MySQL server (/usr/bin/mysqld_safe)”

sudo rm /etc/mysql/my.cnf
登入後複製

即可。

安装PHP5.3

下载地址:php-5.3.28.tar.gz

cd /usr/local/src
tar –zvxf php-5.3.28.tar.gz
cd php-5.3.28
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-pdo-mysql=/usr/local/mysql --with-libxml-dir=/usr/local/libxml2 --with-png-dir=/usr/local/libpng --with-jpeg-dir=/usr/local/jpeg6 --with-freetype-dir=/usr/local/freetype --with-gd=/usr/local/gd2 --with-mcrypt=/usr/local/libmcrypt --enable-soap --enable-mbstring=all --enable-sockets
make
sudo make install
登入後複製

在PHP5.4 make会出现一个问题

我们需要修改gd库目录下的include/gd_io.h

vi <gd_dir>/include/gd_io.h</gd_dir>
登入後複製

gdIOCtx结构中增加void *data;

格式如下:

typedef struct gdIOCtx
{
    int (*getC) (struct gdIOCtx *);
    int (*getBuf) (struct gdIOCtx *, void *, int);
    void (*putC) (struct gdIOCtx *, int);
    int (*putBuf) (struct gdIOCtx *, const void *, int);
    /* seek must return 1 on SUCCESS, 0 on FAILURE. Unlike fseek! */
    int (*seek) (struct gdIOCtx *, const int);
    long (*tell) (struct gdIOCtx *);
    void (*gd_free) (struct gdIOCtx *);
    void (*data);
}
gdIOCtx;
登入後複製

创建PHP配置文件

cp php.ini-development /usr/local/php/etc/php.ini
登入後複製

添加apache对PHP的支持

vi /etc/httpd/httpd.conf
Addtype application/x-httpd-php .php .phtml
sudo apachectl stop
sudo apachectl start
登入後複製

在Apache的web根目录下创建phpinfo.php

<?php phpinfo();
?>
登入後複製

测试环境是否安装成功

基本上就装完了。

安装配置phpMyAdmin:

下载地址:phpMyAdmin-4.1.1-all-languages.zip

unzip phpMyAdmin-4.1.1-all-languages.zip
mv phpMyAdmin-4.1.1-all-languages.zip phpmyadmin
mv phpmyadmin /var/www/(假设/var/www为web根目录)
cd /var/www/phpmyadmin
cp config.sample.inc.php config.inc.php
vi config.inc.php
登入後複製

将其中的

$cfg['Servers'][$i]['extension'] = 'mysqli';
登入後複製

修改为:

$cfg['Servers'][$i]['extension'] = 'mysql';
登入後複製

保存退出,然后在浏览器中就可以通过http://localhost/phpmyadmin来访问phpMyAdmin了。


本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1421
52
Laravel 教程
1315
25
PHP教程
1266
29
C# 教程
1239
24
以超級使用者登入Ubuntu 以超級使用者登入Ubuntu Mar 20, 2024 am 10:55 AM

在Ubuntu系統中,root使用者通常是停用狀態的。要啟動root用戶,可以使用passwd指令設定密碼,然後使用su-指令以root身分登入。根用戶是具有系統管理權限且不受限制的使用者。他擁有存取和修改檔案、使用者管理、軟體安裝和刪除,以及系統配置變更等權限。根用戶與一般用戶有著明顯的區別,根用戶擁有系統中最高的權限和更廣泛的控制權。根用戶可以執行重要的系統命令和編輯系統文件,而普通用戶則無法做到這一點。在本指南中,我將探討Ubuntu根用戶,如何以根用戶身份登錄,以及它與一般用戶的不同之處。注意

crystaldiskmark是什麼軟體? -crystaldiskmark如何使用? crystaldiskmark是什麼軟體? -crystaldiskmark如何使用? Mar 18, 2024 pm 02:58 PM

CrystalDiskMark是一款適用於硬碟的小型HDD基準測試工具,可快速測量順序和隨機讀取/寫入速度。接下來就讓小編為大家介紹一下CrystalDiskMark,以及crystaldiskmark如何使用吧~一、CrystalDiskMark介紹CrystalDiskMark是一款廣泛使用的磁碟效能測試工具,用於評估機械硬碟和固態硬碟(SSD)的讀取和寫入速度和隨機I/O性能。它是一款免費的Windows應用程序,並提供用戶友好的介面和各種測試模式來評估硬碟效能的不同方面,並被廣泛用於硬體評

foob​​ar2000怎麼下載? -foobar2000怎麼使用 foob​​ar2000怎麼下載? -foobar2000怎麼使用 Mar 18, 2024 am 10:58 AM

foob​​ar2000是一款能隨時收聽音樂資源的軟體,各種音樂無損音質帶給你,增強版本的音樂播放器,讓你得到更全更舒適的音樂體驗,它的設計理念是將電腦端的高級音頻播放器移植到手機上,提供更便捷高效的音樂播放體驗,介面設計簡潔明了易於使用它採用了極簡的設計風格,沒有過多的裝飾和繁瑣的操作能夠快速上手,同時還支持多種皮膚和主題,根據自己的喜好進行個性化設置,打造專屬的音樂播放器支援多種音訊格式的播放,它還支援音訊增益功能根據自己的聽力情況調整音量大小,避免過大的音量對聽力造成損害。接下來就讓小編為大

BTCC教學:如何在BTCC交易所綁定使用MetaMask錢包? BTCC教學:如何在BTCC交易所綁定使用MetaMask錢包? Apr 26, 2024 am 09:40 AM

MetaMask(中文也叫小狐狸錢包)是一款免費的、廣受好評的加密錢包軟體。目前,BTCC已支援綁定MetaMask錢包,綁定後可使用MetaMask錢包進行快速登錄,儲值、買幣等,且首次綁定還可獲得20USDT體驗金。在BTCCMetaMask錢包教學中,我們將詳細介紹如何註冊和使用MetaMask,以及如何在BTCC綁定並使用小狐狸錢包。 MetaMask錢包是什麼? MetaMask小狐狸錢包擁有超過3,000萬用戶,是當今最受歡迎的加密貨幣錢包之一。它可免費使用,可作為擴充功能安裝在網絡

網易信箱大師怎麼用 網易信箱大師怎麼用 Mar 27, 2024 pm 05:32 PM

網易郵箱,作為中國網友廣泛使用的一種電子郵箱,一直以來以其穩定、高效的服務贏得了用戶的信賴。而網易信箱大師,則是專為手機使用者打造的信箱軟體,它大大簡化了郵件的收發流程,讓我們的郵件處理變得更加便利。那麼網易信箱大師該如何使用,具體又有哪些功能呢,下文中本站小編將為大家帶來詳細的內容介紹,希望能幫助到大家!首先,您可以在手機應用程式商店搜尋並下載網易信箱大師應用程式。在應用寶或百度手機助手中搜尋“網易郵箱大師”,然後按照提示進行安裝即可。下載安裝完成後,我們打開網易郵箱帳號並進行登錄,登入介面如下圖所示

百度網盤app怎麼用 百度網盤app怎麼用 Mar 27, 2024 pm 06:46 PM

在如今雲端儲存已成為我們日常生活和工作中不可或缺的一部分。百度網盤作為國內領先的雲端儲存服務之一,憑藉其強大的儲存功能、高效的傳輸速度以及便捷的操作體驗,贏得了廣大用戶的青睞。而且無論你是想要備份重要文件、分享資料,還是在線上觀看影片、聽取音樂,百度網盤都能滿足你的需求。但很多用戶可能對百度網盤app的具體使用方法還不了解,那麼這篇教學就將為大家詳細介紹百度網盤app如何使用,還有疑惑的用戶們就快來跟著本文詳細了解一下吧!百度雲網盤怎麼用:一、安裝首先,下載並安裝百度雲軟體時,請選擇自訂安裝選

如何在Ubuntu 24.04上安裝Angular 如何在Ubuntu 24.04上安裝Angular Mar 23, 2024 pm 12:20 PM

Angular.js是一種可自由存取的JavaScript平台,用於建立動態應用程式。它允許您透過擴展HTML的語法作為模板語言,以快速、清晰地表示應用程式的各個方面。 Angular.js提供了一系列工具,可協助您編寫、更新和測試程式碼。此外,它還提供了許多功能,如路由和表單管理。本指南將討論在Ubuntu24上安裝Angular的方法。首先,您需要安裝Node.js。 Node.js是一個基於ChromeV8引擎的JavaScript運行環境,可讓您在伺服器端執行JavaScript程式碼。要在Ub

如何在Linux上安裝安卓應用程式? 如何在Linux上安裝安卓應用程式? Mar 19, 2024 am 11:15 AM

在Linux上安裝安卓應用程式一直是許多用戶所關心的問題,尤其是對於喜歡使用安卓應用程式的Linux用戶來說,掌握如何在Linux系統上安裝安卓應用程式是非常重要的。雖然在Linux系統上直接運行安卓應用程式並不像在Android平台上那麼簡單,但是透過使用模擬器或第三方工具,我們依然可以在Linux上愉快地享受安卓應用程式的樂趣。以下將為大家介紹在Linux系統上安裝安卓應

See all articles