开放源码:就是程序代码,写给人类看的程序语言,但机器并不认识,所以无法执行;

编译程序:将程序代码转译成为机器看得懂的语言,就类似编译者的角色;
可执行文件:经过编译程序变成二进制后机器看得懂所以可以执行的文件;
 
make 会在当前目录搜索 makefile文件,makefile里面记录了源码如何编译的信息 
configure 建立makefile文件
 
gcc编译文件
gcc hello.c  会生成一个目标文件 默认是a.out,如果想生成目标文件(object file)来进行其他的操作
,而且执行文件的文件名也不要默认的a.out 
gcc - c hello.c 这样就会生成目标文件 hello.o
gcc -o hello hello.0  生成可执行文件 hello
 
就生成
 
make的好处 
1、简化编译时所需要执行的命令
2、若在编译完成后,修改某个源码文件,则make仅会针对被修改的文件进行编译,其他的目标文件不会
被修改。
3、最后可以依照相一性来更新执行文件
 
makefile文件
例如
main:main.o haha.o sin.o
     gcc -o main main.0 haha.o sin.o
clean:
     rm -rf main main.o haha.o sin.0
 
当执行make clean时,删除目标文件

linux make configure make的更多相关文章

  1. 【Linux技术】linux之configure,pkg-config和PKG_CONFIG_PATH

    linux之configure,pkg-config和PKG_CONFIG_PATH 1.初衷 1)前面在装gtk时冒出来一个pkg-config,当时虽然不大清楚它是个什么东西,不过大致了解了下它的 ...

  2. [转]Linux中configure/makefile

    本文教你如何使用autoconf.automake等来制作一个以源代码形式(.tar.gz)发布的软件.并可在执行configure时使用自定义参数. 一.概述和基础知识 在Linux下得到一个以源代 ...

  3. Linux 下configure 参数配置与软件的安装与卸载

    Linux环境下的软件安装,并不是一件容易的事情:如果通过源代码编译后在安装,当然事情就更为复杂一些:现在安装各种软件的教程都非常普遍:但万变不离其中,对基础知识的扎实掌握,安装各种软件的问题就迎刃而 ...

  4. linux下configure,make,make install的意义

    tar.gz.tar.bz2的是源代码包,需要编译之后才能安装,在编译过程中你可以指定各种参数以适应你的系统需求,比如安装位置,优化参数,要哪些功能不要哪些功能等等.这类源代码包需要解压后(tar.g ...

  5. Linux中./configure、make、make install详解

     ./configure && make && make install详解 2010-08-03 23:30:05 标签:休闲 ./configure &&a ...

  6. LINUX软件./configure 配置出现:configure: error: newly created file is older than distributed files!

    当在安装tar源码包的时候出现以下报错如何解决? [root@jieniruyan gst-fluendo-mp3-]# ./configurechecking for a BSD-compatibl ...

  7. Linux中 ./configure --prefix命令

    源码的安装一般由3个步骤组成:配置(configure).编译(make).安装(make install),具体的安装方法一般作者都会给出文档,这里主要讨论配置(configure).Configu ...

  8. Linux 之 ./configure --prefix 命令

    参考 http://blog.sina.com.cn/s/blog_406127500101dsmy.html 源码的安装一般由3个步骤组成:配置(configure).编译(make).安装(mak ...

  9. Linux下./configure && make && make install 编译安装和卸载

    正常的编译安装/卸载: 源码的安装一般由3个步骤组成:配置(configure).编译(make).安装(make install).   configure文件是一个可执行的脚本文件,它有很多选项, ...

随机推荐

  1. Delete触发器

  2. 2018 青岛ICPC区域赛E ZOJ 4062 Plants vs. Zombie(二分答案)

    Plants vs. Zombies Time Limit: 2 Seconds      Memory Limit: 65536 KB BaoBao and DreamGrid are playin ...

  3. 微信公众号关联(小游戏 小程序 跳转 盒子 wx.navigateToMiniProgram)

    参考: 公众号关联小程序 关联公众号 关联后,登录小游戏,可在设置-关联设置中看到关联的公众号 在小游戏中使用wx.navigateToMiniProgram wx.navigateToMiniPro ...

  4. ASP.NET 文件上传于下载

    本文主要介绍一下,在APS.NET中文件的简单上传于下载,上传是将文件上传到服务器的指定目录下,下载是从存入数据库中的路径,从服务器上下载. 1.上传文件 (1)页面代码 <table alig ...

  5. 23种设计模式之策略模式(Strategy)

    策略模式是一种对象的行为型模式,定义一系列算法,并将每一个算法封装起来,并让它们可以相互替换.策略模式比算法独立于使用它的客户而变化,其目的是将行为和环境分隔,当出现新的行为时,只需要实现新的策略类. ...

  6. C# 根据域名获取IP地址

    今天做海康微视视频接口的时候要用到硬盘录像机的IP地址.端口号.用户名和密码. 但是发现客户IP地址是动态获取的,经常变化. 所以需要根据域名解析出IP. 代码如下 //判断输入的是否是IP Rege ...

  7. Java实现网易企业邮箱发送邮件

    最近项目需要用网易企业邮箱发送邮件,特意来将实现过程记录一下: maven导入jar包 <!-- javax.mai 核心包 --> <dependency> <grou ...

  8. linux下面安装coreseek与mmseg

    1tar xzvf coreseek-3.2.14.tar.gz2cd mmseg-3.2.14/./configure --prefix=/usr/local/mmseg3 checking for ...

  9. 0000python中文乱码解决方案

    #!/usr/bin/env python # coding=utf-8

  10. redis 事务 even when a command fails, all the other commands in the queue are processed

    even when a command fails, all the other commands in the queue are processed 单个 Redis 命令的执行是原子性的,但 R ...