皮皮网

【网站注册模板源码】【源码主机】【vlc 源码下载】inline patch源码

2024-12-24 20:46:12 来源:财神到棋牌源码

1.inline patchԴ??
2.centos5 源码安装Nginx + mysql + apache + php的方法

inline patch源码

inline patchԴ??

       详解linux源码包安装过程

       1. 解压缩包

       可以通过下载或其他方式获得了一个软件包,通常它是一个压缩文件,大部分可能是存档的和压缩的,这些文件一般以 .tar .gz为扩展名。

       首先拷贝它到一个目录,然后 untar 和 gunzip 解压它。网站注册模板源码 通常这个命令是

       tar xzvf filename [filename 是软件文件名称]

       解压后的文件一般会在当前目录下的创建子目录,并以这个包名来命名。 你也可以用用这个命令预先查看结果 tar tzvf filename,显示包里有那些解压文件。

       源文件如果是新的 bzip2 (.bz2) 格式,可用

       bzip2 -cd filename | tar xvf -,或更简单的 tar xyvf filename ,这很不错的tar命令被不断的完善。

       说明:

       A:有时候一些文件必须安装在用户的源码主机 home 目录下,或更多的是在一个固定的目录,比如 /, /usr/src, 或 /opt 。所以必须仔细阅读安装包的配置信息。当一个软件包里如果有config 和 Makefiles 文件则最好去编辑它,这里包括了安装指令和说明。提示:你改变 makefile 会导致不同的结果。大部分软件包允许用 make install 自动处理安置二进制文件在适当的系统位置。

       B:你可能碰到过一些共享文件、shell 存档文件、尤其是 Internet 上的源码新闻组。它们保留的原因是具有人性化的可读性,并且允许新闻组缓冲并通过它们筛选和剔除出不合格的。它们可能用 unshar filename.shar 命令来解压。

       C: 一些源码存档文件是vlc 源码下载用非标准的 DOS,Mac 或其他压缩的比如:

       zip, arc, lha, arj, zoo, rar, and shk.

       D: 有时候,你可能需要使用一个 patch 或显示改变了的 diff 文件来升级或修复存档的源码文件。这 doc 文件或者 README 文件将告诉你怎么去使用。一个很好的命令用标准语法来调用的命令是 patch < patchfile.

       2: 关于 rpm 安装包

       一些 Linux 用户惧怕通过使用源码来手动安装软件包,不过现在有方便的 rpm 和 deb 或 新格式的 slp 包。例如:rpm 安装运行平稳又快,作为一个软件安装在某几个有名的操作系统。

       作为方便的RPM包也存在很多不好的缺点,例如:

       A: 要了解软件中更多更详细的内容你必须去在二进制中去了解,而不是rpm包。

       B: 还有安装一个 rpm 包如果需要依赖关系那么安装就可能会导致失败。

       C: 当 rpm 请求你系统中不同版本的库,那么安装将不能继续,除非你为错误的美朔源码库位置创建连接符号到正确的位置。

       说明:必须使用root 安装 rpm 和 deb 。因为它需要必须的写入权限。

       最简单的,用命令 rpm -i packagename.rpm 和 dpkg --install packagename.deb 会自动解包和安装。

       3:关于安装 Linux 包出现的一些问题及解决方案

       假设 make 失败有个链接错误: -lX: No such file or directory,正好在 xmkmf 之后已被调用,这可能意味着 Imake 不能被完全建立。检查第一部分 Makefile 文件的的行是这样:

       · LIB= -L/usr/X/lib

       · INCLUDE= -I/usr/X/include/X

       · LIBS= -lX -lc -lm

       这个 -L 和 -I 开关告诉编译器和链接分别在哪里找到 library 和 include 文件。在这个例子里, X 库应该在 /usr/X/lib 目录,且 X 包含文件应该在 /usr/X/include/X 目录里。假如对于你的机器上的这个错误,请处理修改 Makefile 并重新再 make。html 源码下载

       没有声明涉及的数学库函数,像下列各项:

       /tmp/cca.o(.text 0x): undefined reference to `cos'

       要修复它,需要明确链接到匹配的库,在 Makefile (看先前的例子) 里增加一个 -lm 到 LIB 或 LIBS 标记 。

       用其他方法尝试

       仍然失败 如果失败,参考下列脚本:

       make -DUseInstalled -I/usr/X/lib/X/config

       这个直接方式的类别相当于。

       在少数例子里,用 root 运行 ldconfig 可能会解决:

       # ldconfig 更新共享库链接符号。

       一些 Makefiles 使用你系统里未被承认的库别名。一个例子,构建可能需要 libX.so.6 ,但是在 /usr/XR6/lib 不存在文件或链接。然而,在那里是 libX.so.6.1。解决方法是用 root 运行ln -s /usr/XR6/lib/libX.so.6.1 /usr/XR6/lib/libX.so.6 ,接着需要运行 ldconfig 。

       有一些包需要你安装一个或更多库的升级版本。需要拷贝一个或更多的库到适当的目录里,删除旧的库,重新设置动态链接库。

       4:一些其他的问题处理

       安装一个shell 脚本如果出现:No such file or directory 的错误消息。这是可以检查文件权限确定文件事可执行的,并检查文件头确定是否 shell 或程序是脚本在指定的位置被调用。一个例子,这个脚本可能是这样开始的:

       #!/usr/local/bin/EDEN

       如EDEN的实际安装位置是在你的 /usr/bin 目录,用一个 /usr/local/bin 替代

       这个脚本不能运行有两个方法来纠正!!

       A: 文件头改成 #!/usr/bin/EDEN

       B: 或增加一个链接符, ln -s /usr/bin/EDEN

       5:一个典型的例子 Xloadimage

       首先说明下面的例子来源于国外网站的一个技术实例,这里我做了翻译和整理。

       这个例子展现一个简单的问题。xloadimage 程序对我的图形工具的调整设置是有用的附加。从源码目录拷贝文件,用 tar xzvf 解压文件,可是在运行 make 的时候出现令人讨厌的错误并停止了。

       gcc -c -O -fstrength-reduce -finline-functions -fforce-mem

       -fforce-addr -DSYSV -I/usr/XR6/include

       -DSYSPATHFILE=\"/usr/lib/X/Xloadimage\" mcidas.c

       In file included from /usr/include/stdlib.h:,

       from image.h:,

       from xloadimage.h:,

       from mcidas.c:7:

       /usr/lib/gcc-lib/i-linux/2.6.3/include/stddef.h::

       conflicting types for `wchar_t'

       /usr/XR6/include/X/Xlib.h:: previous declaration of

       `wchar_t'

       make[1]: *** [mcidas.o] Error 1

       make[1]: Leaving directory

       `/home/thegrendel/tst/xloadimage.4.1'

       make: *** [default] Error 2

       这个错误消息包含了实质的线索:

       查看 image.h 文件的 行:

       #include < stdlib.h>

       在源码的某处对于 xloadimage, wchar_t 已经在指定标准 include 文件重新定义。 告诉我们首先在 image.h 的 行尝试注释它,或许 stdlib.h include 是不存在的,毕竟不是所有都是必需的。

       在这点,构建中的收益来源于所有任何一个致命错误。xloadimage 现在功能正常。

       6: 安装 Linux 包的一些总结

       坚持自己动手处理所有的安装出现的问题,不断总结努力学习,从错误里去仔细研究,努力动手排错,从每个不足甚至失败的地方得到扩充和提升,可以增强安装构建软件的技巧。

centos5 源码安装Nginx + mysql + apache + php的方法

       主要依照的是张宴的一篇博文《blogs.com/

       3] mhash库

       复制代码

           

       代码如下:

       tar zxvf mhash-0.9.9.9.tar.gz

           cd mhash-0.9.9.9/

           ./configure

           make

           make install

           cd ../

       4]mcrypt库

       注意:因为该库和libmcrypt有依赖性,所以在安装前必须知道libmcrypt,否则的话会出现:

       错误

       复制代码

           

       代码如下:

       checking for libmcrypt – version = 2.5.0…

           *** ‘libmcrypt-config –version’ returned 2.4.0, but LIBMCRYPT (2.5.8)

           *** was found! If libmcrypt-config was correct, then it is best

           *** to remove the old version of LIBMCRYPT. You may also be able to fix the error

           *** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing

           *** /etc/ld.so.conf. Make sure you have run ldconfig if that is

           *** required on your system.

           *** If libmcrypt-config was wrong, set the environment variable LIBMCRYPT_CONFIG

           *** to point to the correct copy of libmcrypt-config, and remove the file config.cache

           *** before re-running configure

           configure: error: *** libmcrypt was not found

       是因为path的问题,所以执行:

       复制代码

           

       代码如下:

       ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la

           ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so

           ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4

           ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8

           ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a

           ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la

           ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so

           ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2

           ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1

           ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config

       然后再安装:

       复制代码

           

       代码如下:

       tar zxvf mcrypt-2.6.8.tar.gz

           cd mcrypt-2.6.8/

           /sbin/ldconfig

           ./configure

           make

           make install

           cd ../

       二、安装mysql

       复制代码

           

       代码如下:

       /usr/sbin/groupadd mysql

           /usr/sbin/useradd -g mysql xxx

           unzip mysql-5.1..zip

           cd mysql-5.1./

           ./configure --prefix=/usr/local/webserver/mysql/ --enable-assembler --with-extra-charsets=complex --enable-thread-safe-client --with-big-tables

           --with-readline --with-ssl --with-embedded-server --enable-local-infile --with-plugins=innobase

           make

           make install

           make clean

           make distclean

           chmod +w /usr/local/webserver/mysql

           chown -R xxx:mysql /usr/local/webserver/mysql

           cp support-files/my-medium.cnf.sh /usr/local/webserver/mysql/my.cnf

           cd ../

       注意:这里编译./configure命令是一行的而不能有换行符,如果是copy的时候,注意要去处该换行符

       在最后一步拷贝的时候,我安装完在support-files下没有my-medium.cnf而只有my-medium.cnf.sh所以将这个文件拷贝过去。

       @张宴原文:

       附:以下为附加步骤,如果你想在这台服务器上运行MySQL数据库,则执行以下两步。如果你只是希望让PHP支持MySQL扩展库,能够连接其他服务器上的MySQL数据库,那么,以下两步无需执行。

       ①、以xxx用户帐号的身份建立数据表:

       复制代码

           

       代码如下:

       /usr/local/webserver/mysql/bin/mysql_install_db --basedir=/usr/local/webserver/mysql --datadir=/usr/local/webserver/mysql/data --user=xxx

       ②、启动MySQL(最后的表示在后台运行)

       复制代码

           

       代码如下:

       /bin/sh /usr/local/webserver/mysql/bin/mysqld_safe --defaults-file=/usr/local/webserver/mysql/my.cnf

       3、编译安装PHP(FastCGI模式)

       复制代码

           

       代码如下:

       tar zxvf php-5.2.8.tar.gz

           gzip -cd php-5.2.8-fpm-0.5..diff.gz | patch -d php-5.2.8 -p1

           cd php-5.2.8/

           ./configure --prefix=/usr/local/webserver/php --with-config-file-path=/usr/local/webserver/php/etc --with-mysql=/usr/local/webserver/mysql

           --with-mysqli=/usr/local/webserver/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib

           --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem

           --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect

           --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap

           --with-ldap-sasl

           make ZEND_EXTRA_LIBS='-liconv'

           make install

           cp php.ini-dist /usr/local/webserver/php/etc/php.ini

           cd ../

       注意:这里./configure命令是一行的而不能有换行符,如果是copy的时候,注意要去处该换行符

       4、编译安装PHP5扩展模块--可选安装

       复制代码

           

       代码如下:

       tar zxvf memcache-2.2.5.tgz

           cd memcache-2.2.5/

           /usr/local/webserver/php/bin/phpize

           ./configure --with-php-config=/usr/local/webserver/php/bin/php-config

           make

           make install

           make clean

           make distclean

           cd ../

           tar jxvf eaccelerator-0.9.5.3.tar.bz2

           cd eaccelerator-0.9.5.3/

           /usr/local/webserver/php/bin/phpize

           ./configure --enable-eaccelerator=shared --with-php-config=/usr/local/webserver/php/bin/php-config

           make

           make install

           make clean

           make distclean

           cd ../

           tar zxvf PDO_MYSQL-1.0.2.tgz

           cd PDO_MYSQL-1.0.2/

           /usr/local/webserver/php/bin/phpize

           ./configure --with-php-config=/usr/local/webserver/php/bin/php-config --with-pdo-mysql=/usr/local/webserver/mysql

           make

           make install

           make clean

           make distclean

           cd ../

           tar zxvf ImageMagick.tar.gz

           cd ImageMagick-6.5.1-2/

           ./configure

           make

           make install

           make clean

           make distclean

           cd ../

           tar zxvf imagick-2.2.2.tgz

           cd imagick-2.2.2/

           /usr/local/webserver/php/bin/phpize

           ./configure --with-php-config=/usr/local/webserver/php/bin/php-config

           make

           make install

           make clean

           make distclean

           cd ../

       5、修改php.ini文件

       STRONG手工修改:/STRONG查找/usr/local/webserver/php/etc/php.ini中的extension_dir = "./"

       修改为extension_dir = "/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-/"

       并在此行后增加以下几行,然后保存:

       extension = "memcache.so"

       extension = "pdo_mysql.so"

       extension = "imagick.so"

       再查找output_buffering = Off

       修改为output_buffering = On

       6、配置eAccelerator加速PHP:

       mkdir -p /usr/local/webserver/eaccelerator_cache

       vi /usr/local/webserver/php/etc/php.ini

       按shift+g键跳到配置文件的最末尾,加上以下配置信息:

       复制代码

           

       代码如下:

       [eaccelerator]

           zend_extension="/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-/eaccelerator.so"

           eaccelerator.shm_size=""

           eaccelerator.cache_dir="/usr/local/webserver/eaccelerator_cache"

           eaccelerator.enable="1"

           eaccelerator.optimizer="1"

           eaccelerator.check_mtime="1"

           eaccelerator.debug="0"

           eaccelerator.filter=""

           eaccelerator.shm_max="0"

           eaccelerator.shm_ttl=""

           eaccelerator.shm_prune_period=""

           eaccelerator.shm_only="0"

           eaccelerator.compress="1"

           eaccelerator.compress_level="9"

       修改配置文件:

       vi /etc/sysctl.conf

       kernel.shmmax =

       然后执行以下命令使配置生效:/sbin/sysctl -p

       以下的步骤和张宴步骤中一样配置,不再赘诉