如何编译源码安装

#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

相关推荐

  • dns主从

    一、前言 Dns全称domain name system,当我们访问一个网站时,在网站输入一个网址。但是网络是靠ip地址这个逻辑地址来标识地址的。而一个网址是如何转换为ip地址的?下面我们将简单讲解下dns的原理。 二、dns查询过程 在了解dns查询过程时,我们先了解一些有关dns的专业名词     根域:用来管理互…

    Linux干货 2015-10-01
  • ~~ 1;列出当前系统上所有已经登录的用户的用户名,注意:同一用户登录多次,则只显示 一次即可。 # who | cut -d" " -f 1 | sort -u 2;取出最后登录到当前系统的用户的相关信息 # id $(who | tail -1 |cut -d" " -f 1) # last | head -1 3…

    Linux干货 2017-01-03
  • VIM编辑器用法及练习

    VIM编辑器用法及练习 什么是vim? vim是从vi发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。 Vim的第一个版本由布莱姆·米勒在1991年发布。最初的简称是Vi IMitation,随着功能的不断增加,正式名称改成了Vi IMproved。现…

    Linux干货 2016-10-30
  • 软件包管理

    软件运行与编译过程:程序源代码——预处理——-编译——-汇编——-链接 静态编译:.a 动态编译:.so 二进制程序的组成:二进制文件、库文件、配置文件、帮助文件。 包的命名:1、源代码:name -VERSION.tar.gz或bz2或xz   &nb…

    Linux干货 2017-04-23
  • 网卡和路由的设置

    一:设置网卡别名: 首先,关闭NetworkManager服务 service NetworkManager stop 创建一个配置文件 ,文件名为网卡的文件名+“:num”如 : 网卡文件为:ifcfg-eth0 ,创建文件“ifcfg-eth0:1",冒号后跟的数字,可以随意指定。 1,关闭NetworkManager服务   [ro…

    Linux干货 2016-09-12
  • Week3 Linux用户和组管理及文本处理工具

      用户和组管理 groupadd命令:添加组     groupadd [选项] group_name         -g GID:指定GID;默认是上一个组的GID+1;  …

    Linux干货 2017-02-11