Linux源代码编译

Posted JuGooLar

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux源代码编译相关的知识,希望对你有一定的参考价值。

一、lamp编译

linux+apache+mysql+php

通过appchae能够找到php来解析php脚本,通过php来操作数据库

1、安装gcc编译器

linux下源代码C语言如何编译

查看内存  free 

查看硬盘  fdisk -l

查看挂载情况  df -h

编译过程:生成配置文件、编译、安装

在软件安装包里 .h文件是C语言的函数库

以安装appache   httpd为例:进入到软件包中,使用: ./configure  --prefix=/usr/local/httpd2_name       定义配置文件-安装路径、

make 开始编译

make install 开始安装

2、安装appache软件包

检查系统是否已经安装了lamp环境

Rpm -qa|grep httpd

Rpm -qa|grep mysql

Rpm -qa|grep php

卸载已经卸载的httpd/mysql/php

yum remove htpd

yum remove mysql

yum remove php

 

源代码的包删除时直接删除安装目录

 

3、lamp 安装

包的下载    密码:zdov

安装

libxml2-2.6.30

tar  -xvzf  libxml2-2.6.30.tar 

cd libxml2-2.6.30

./configure --prefix=/usr/local/libxml/

make

make install

完成安装

libmcrypt-2.5.8

tar  -xvzf  libmcrypt-2.5.8.tar 

cd libmcrypt-2.5.8

./configure --prefix=/usr/local/libmcrypt/

make

make install

完成安装

如遇报错:error: C++ compiler cannot create executables

原因分析:组件没有安装完全

解决措施:yum install gcc gcc-c++ gcc-g77      

注意:我的yum源是

name=rhl-medi
baseurl=file:///media   #挂载了光盘
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

安装libledl 在libmcrypt源码目录中

cd libmcrypt-2.5.8/libltdl

./configure  --enable-ltdl-install   

make

make install

安装zlib-1.2.3

cd zlib-1.2.3

./configure 

make

make install

安装libpng

cd libpng-1.2.31/

./configure --prefix=/usr/local/libpng/

make

make install

会报错:make[1]: *** [libpng12.la] Error 1

问题:操作系统

解决措施:

cd zlib-1.2.3 //进入zlib目录
CFLAGS="-O3 -fPIC" ./configure 
make
make install
再出来,安装libpng

安装jpeg6

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 /jpeg-6b

./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static

make

make install

如果报错:./libtool --mode=compile gcc -O2  -I. -c ./jcapimin.c      *** [jcapimin.lo] Error 127

问题:libtool 工具包过时

解决措施:新解压libtool工具包,源码安装

unzip libtool242.zip

cd libtool

./configure

make

make install

cd jpeg-6b/

cp /usr/local/share/libtool/config/config.sub . 
cp /usr/local/share/libtool/config/config.guess .
再次执行安装jpeg6
./configure  --prefix=/usr/local/jpeg6/ --enable-shared --enable-static
make
make install

7、安装freetype

cd freetype-2.3.5/

./configure --prefix=/usr/local/freetype/

make

make install

8、安装autoconf

cd /autoconf/

./configure

make

make install

9、安装GD

mkdir /usr/local/gd2

cd  gd-2.0.35

vi gd_png.c

   写入:

    用    #include "/usr/local/libpng/include/png.h"   替换掉  #include "png.h"

./configure --prefix=/usr/local/gd2/ --with-jpeg=/usr/local/jpeg6/ --with-freetype=/usr/local/freetype/ --with-png=/usr/local/libpng/

make

make install

 

三、接下来安装appache

 















以上是关于Linux源代码编译的主要内容,如果未能解决你的问题,请参考以下文章

Notepad++编辑器——Verilog代码片段直接编译

导致资产预编译在heroku部署上失败的代码片段

如何有条件地将 C 代码片段编译到我的 Perl 模块?

[linux][c/c++]代码片段01

[linux][c/c++]代码片段02

linux打开终端如何启动scala,如何在终端下运行Scala代码片段?