如何编译源码安装

#include <stdio.h>
main()
{printf(“Hello World!\n”);
}
gcc -o hello hello.c
在编写hello.c的时候出现问题一直找不到,后来发现是因为我安装的gcc有问题
我在安装的时候是用rpm -ivh gcc –nodeps忽略依赖关系直接安装的,但是后来发现这样安装后不能用虽然装上了,最后用rpm -e gcc 卸载,再用yum install gcc安装,这样再编译就没有问题了

下面给出错误

如何编译源码安装

如何编译源码安装

如何编译源码安装

–sysconfdir:指定配置文件安装路径
–prefix:指定默认安装路径
注意: /pp/apache24和/etc/apache24不需要手工去mkdir
yum install -y apr-devel 其中,-y是不询问

如何编译源码安装

一般第一次编译都会这样,有很多东西都要装
第二步:接下来是安装包组 “Development Tools”

如何编译源码安装

也可以查看安装文件 vim INSTALL

如何编译源码安装如何编译源码安装

第三步:make 任何人都可以做
第四步:make install 只有root才能做
之后开启httpd服务(service httpd start)Centos7里面使用(start httpd.service),前提是已经安装过httpd服务,用yum ,yum可以自己找路径,解决了包依赖问题,
service httpd status 查看httpd状态,有没有开启
netstat -ntl 查看端口状态
非常关键的一步
启动服务
/app/apache24/bin/apachectl start 注意:这条命令一定要敲两遍服务才会启动,之前因为之敲了一遍所以访问http://172.17.253.136时加载出来的是testing123文件的界面,之所以会加载到这个界面是因为系统安装时默认安装一个httpd服务名字是httpd-2.4.6-45.el7.centos.x86_64.rpm,因为这个服务没打开,所以我查的时候没有找到系统中有任何httpd服务存在,所以就用yum手动安装了了一个httpd-2.4.6-45.el7.centos.x86_64.rpm以至于后面访问http://172.17.253.136时一直显示默认安装的httpd服务里面的index.html文件,之前已经下载了源码包httpd-2.4.27.tar.bz2,并用makeinstall自动安装上了httpd服务,正确做法应该是安装之后开启这个服务/app/apache24/bin/apachectl start 并且敲两遍,并且用yum remove httpd-2.4.6-45.el7.centos.x86_64.rpm把这个手动安装的httpd卸载掉以防自动加载页面显示,总之一句话就是使用源码安装时服务没有开启成功导致我又用yum手动安装了一个httpd服务
还可以把PATH 路径改一下,让系统优先找/pp/apache24/bin/apachectl
在centos6里面方法为:export PATH=/pp/apache22/bin/:$PATH 或者写到/etc/profile.d/*.sh文件里,这样切换到任何用户都生效
说明一下:我的虚拟机app名为pp

如何编译源码安装

拓展

如果不想敲两遍可以按照下面的方法做
进入/etc/apache24下编辑htpd.conf文件做如下操作

如何编译源码安装

根据系统提示做如下更改

如何编译源码安装

设置成功

如何编译源码安装

关闭防火墙
CentOS7
systemctl is-active firewalld.service 查看当前是否开启
systemctl stop firewalld.service 关闭防火墙
systemctl is-enabled firewalld.service 查看系统启动时是否开启
systemctl disable firewalld.service 关闭系统启动时开启
CentOS6
service iptables stop

原创文章,作者:sqjl,如若转载,请注明出处:http://www.178linux.com/85046

(0)
sqjlsqjl
上一篇 2017-08-19 19:33
下一篇 2017-08-19 19:54

相关推荐

  • Linux的初步认识

         Linux的哲学思想 (1)一切都是一个文件(包括硬件) (2)小型,单一用途的程序 (3)链接程序,共同完成复杂的任务 (4)避免令人困惑的用户界面 (5)配置数据储存在文本中 1.Linux分为普通用户和root用户 普通用户:权利非常有限对系统的损害比较小 root用户:被称作为超级用户,对系统接近完整的控制,对…

    2017-05-20
  • 马哥教育网络班20期+第6周课程练习

    1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; cp /etc/rc.d/rc.sysinit /tmp sed 's/^[[:space:]]/#&/' /tmp/rc.sysinit 2、…

    Linux干货 2016-08-15
  • DNS和openssl

    本文主要讲述ssl以及使用openssl创建CA,DNS服务器的搭建  一.数据在互联网上传输存在各种各样的分险,数据在传输的过程中可能会被篡改,被截取等,于是就不得不解决这些安全问题,为了解决这些问题,ssl协议也就诞生了,ssl(Secure Socket Layer),首先,它是一中协议,专用于对数据进行加密与解密,是一个应用层协议,该协议提…

    Linux干货 2016-12-11
  • 系统启动及内核管理

    一、知识整理 1、nohup 命令:不挂断地运行命令,远程连接当断网或断开shell时还可以继续运行。无论是否将nohup命令的输出重定向到终端,输出都将附加到当前目录下的nohup.out文件中,如果当前不可写,则重定向到家目录nohup.out文件,除非定义了输出文件。 nohup COMMAND 输出重定向至文件 nohup COMMAND &…

    Linux干货 2016-09-19
  • Linux基础知识——文件查找

    Linux系统的核心思想之一就是一切皆文件,可想而知你要靠记忆去查找一个文件该是多么费劲;今天我们介绍几个文件查找命令:whereis,locate,find whereis locate the binary, source, and manual page files for…

    Linux干货 2016-10-11
  • 文件查找与压缩

    文件查找与压缩   Locate:非事实查找(数据库查找)     查询系统上预建的文件索引数据库 /var/lib/mlocate/mlocate.db 依赖于事先构建的索引; 索引的构建是在系统较为空闲时自动进行(周期性任务); 管理 员手动更新数据库(updatedb);   工作特点: 查找…

    Linux干货 2016-08-18