热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

linux下apache的安装及so文件的编译

apache编译安装?以上两步不是必要,可以手动建文件夹,将安装文件放到该文件夹
apache编译安装 

 [root@hostlocal~]# ls    // 你会看到你下载的httpd-2.2.9.tar.gz.

 [root@hostlocal~]# tar –zxvf  httpd-2.2.9.tar.gz // 解压后为httpd-2.2.9

 [root@hostlocal~]# mkdir –p /usr/local/web/apache/   //在这个目录下建立文档,利于管理
 [root@hostlocal~]# mv /root/httpd-2.2.9 /usr/local/src/  //将安装包放到/src下,利于管理

以上两步不是必要,可以手动建文件夹,将安装文件放到该文件夹

 [root@hostlocal~]# cd httpd-2.2.9

 [root@httpd-2.2.9]#  ./configure  --prefix=/opt/src/web/apache    --enable-proxy=shared --enable-proxy-balancer=shared --enable-proxy-http=shared --enable-proxy-cOnnect=shared  --enable-asis=shared --enable-isapi=shared  --enable-mods-shared=all --enable-so   //配置命令 配置安装文件夹 和参数设置(切忌不能加--enable-shared=max )

 [root@httpd-2.2.9]# make  //编译

 [root@httpd-2.2.9]# make install   //安装

 [root@hostlocal~]# service httpd start            //开启httpd服务

/opt/src/web/apache/bin/apachectl -k start  //启动apache

 

c文件编译成.so文件

[logs@dw208066 opt]# ./local/apache/bin/apxs -c mod_helloworld.c    //到apache安装目录的bin/apxs 下 执行-c

这时 opt下多了4个文件.la .lo .o .slo

其中就有一个mod_helloworld.la的,于是再调用

[logs@dw208066 opt]$#./local/apache/bin/apxs -i mod_helloworld.la

 

这时会出现类似于下面错误

Warning! dlname not found in /usr/local/apache2/modules/mod_rewrite.la.
Assuming installing a .so rather than a libtool archive.
chmod 755 /usr/local/apache2/modules/mod_rewrite.so
chmod: cannot access `/usr/local/apache2/modules/mod_rewrite.so': No such file or directory
apxs:Error: Command failed with rc=65536

需要修改一个文件

 

vi /usr/local/apache2/build/libtool

build_libtool_libs=no
build_libtool_libs=yes

fast_install=neel***
fast_install=yes

dlopen_support=unknown
dlopen_support=yes

dlopen_self=unknown
dlopen_self=yes

dlopen_self_static=unknown
dlopen_self_static=yes

host_alias=
host_alias=i686-pc-linux-gnu

 

在esc模式下输入:wq保存退出

保存后重新编译.c文件即可成功编译成so文件


推荐阅读
  • 本文详细介绍了Hive中用于日期和字符串相互转换的多种函数,包括从时间戳到日期格式的转换、日期到时间戳的转换,以及如何处理不同格式的日期字符串。通过这些函数,用户可以轻松实现日期和字符串之间的灵活转换,满足数据处理中的各种需求。 ... [详细]
  • 本文详细介绍了如何在云服务器上配置Nginx、Tomcat、JDK和MySQL。涵盖从下载、安装到配置的完整步骤,帮助读者快速搭建Java Web开发环境。 ... [详细]
  • 本文探讨了如何在Hive(基于Hadoop)环境中编写类似SQL的语句,以去除字段中的空格。特别是在处理邮政编码等数据时,去除特定位置的空格是常见的需求。 ... [详细]
  • 本文详细介绍了Linux系统中的进程管理函数,涵盖了获取进程ID、用户ID、创建子进程、信号处理等关键操作。通过这些函数,开发者可以更好地控制和管理进程行为。 ... [详细]
  • 本文详细介绍了 Linux 系统中用户、组和文件权限的设置方法,包括基本权限(读、写、执行)、特殊权限(SUID、SGID、Sticky Bit)以及相关配置文件的使用。 ... [详细]
  • 本文详细介绍如何在 Windows 环境下安装 Ubuntu 12.04 版本的 Linux 操作系统,包括必要的软件下载、配置步骤以及注意事项。 ... [详细]
  • 随着技术社区的发展,越来越多的技术爱好者选择通过撰写博客来分享自己的学习经验和项目进展。本文将介绍一个具体案例,即将一套原本运行于Windows平台的代码成功移植到Linux(Redhat)环境下的过程与挑战。 ... [详细]
  • 本文介绍如何在Linux系统中卸载预装的OpenJDK,安装指定版本的JDK 1.8,并配置防火墙以确保系统安全性和软件兼容性。 ... [详细]
  • 本文探讨了Web开发与游戏开发之间的主要区别,旨在帮助开发者更好地理解两种开发领域的特性和需求。文章基于作者的实际经验和网络资料整理而成。 ... [详细]
  • 在Linux系统上构建Web服务器的详细步骤
    本文详细介绍了如何在Linux系统上搭建Web服务器的过程,包括安装Apache、PHP和MySQL等关键组件,以及遇到的一些常见问题及其解决方案。 ... [详细]
  • 本文将详细介绍如何在ThinkPHP6框架中实现多数据库的部署,包括读写分离的策略,以及如何通过负载均衡和MySQL同步技术优化数据库性能。 ... [详细]
  • 在安装Ubuntu 12.10并尝试安装VMware Tools时,遇到了一个常见的错误提示:指定的路径不是有效的3.5.0-17-generic内核头文件路径。本文将提供解决这一问题的具体步骤。 ... [详细]
  • Symfony是一个功能强大的PHP框架,以其依赖注入(DI)特性著称。许多流行的PHP框架如Drupal和Laravel的核心组件都基于Symfony构建。本文将详细介绍Symfony的安装方法及其基本使用。 ... [详细]
  • 当面临数据库清理任务时,若无删除或重建数据库的权限,可以通过编写SQL脚本来实现批量删除用户自定义的数据表和存储过程。本文将详细介绍如何构造这样的SQL脚本。 ... [详细]
  • 深入理解SQL Server中的聚集与非聚集索引
    本文探讨了SQL Server数据库中两种主要的索引类型——聚集索引和非聚集索引,通过对比分析它们的特点及应用场景,旨在帮助读者更好地理解和利用这两种索引以优化查询性能。 ... [详细]
author-avatar
stong_lxm
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有