`
lz1130
  • 浏览: 408549 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

原来我不懂编译安装!

阅读更多
以下引用:

我建议对“LAMP”构架应用不太熟悉的朋友直接使用系统提供的二进制代码安装——假如不是有什么特殊需求的话,比如领导强制要求必须使用最新版本的代码或者有特殊需求,比如有自己的“FHS”。其官方提供的二进制代码理论上是经过官方的技术人员的优化、以及多方测试的,甚至比不太熟悉的人用源代码编译得来的二进制,性能更高。随便说一下,这也是我觉得“服务器版”与“通用版本”之间可能存在的微弱或者重大的差别。并且,网上很多文章均使用源代码的方式安装程序,而很少有提及编译时strip代码的问题,这真是一个讽刺,对“优化”、“性能”如此注重之人,却使用包含着“symbols”(编译成生二进制程序时为调试和诊断而保留的非必需的结构)的二进制(strip之后,性能提高不敢乱言,至少文件大小会有惊人的变化:php-cgi strip之前12M,strip之后只有3M,无压力情况下,php-cgi占用的内存由5.5M降低到1.8M——数据仅供参考。)。系统提供的二进制,绝大多数都是“striped”的(使用file命令可以查看到二进制文件的相关信息)——不敢妄言“全部”,因为隐约记得TSL(TSL是一个声称像OpenBSD一样安全的Linux系统)的系统上,发现过没有strip过的二进制,可能是谬误。

即然提到了strip,随便也说一下如何strip二进制,Linux提供了事后strip程序的工具“strip”命令:

1. 查看程序是否是”striped”的

file  /opt/httpd/bin/httpd

假如需要strip,那么

2. strip /opt/httpd/bin/httpd

即可!

另外,其实编译代码的时候可以要求生成”striped”的代码,绝大多数开源代码,make里都提供了该参数,就是install-strip,即在编译完之后安装的时候,使用install-strip而不是install来strip程序再安装。

MySQL安装的时候使用make install-strip即可。

Apache要在./configure 时,加上 LDFLAGS=’-s’ 的选项即可。

PHP则需要在./configure之前,先执行一下export LDFLAGS=’-s’  (bash环境)。

可以细读金步国的作品:深入理解软件包的配置、编译与安装

写给自己:
原来我什么都不懂!虚心学习!
分享到:
评论

相关推荐

    编译原理一般认为是较难的一门课。从网上的评论来看,有人说学了一年半软件理论,就一门编译看不懂;有人甚至说它是大本软件课程里最难的一门;有人抱怨国内的编译教材没有一本容易懂的 

    编译原理是软件工程中的一门难课,网上有很多评论,说学了一年半软件理论,也不能完全理解编译原理。有人甚至说它是大本软件课程里最难的一门。那么,编译原理究竟难在哪里?笔者的体会,主要在这几点: 1. 错误...

    gdb-7.7交叉编译安装

    《gdb-7.7交叉编译安装指南》 在嵌入式开发领域,调试工具是必不可少的,其中GDB(GNU Debugger)是最为广泛使用的调试器之一。本指南将详细讲解如何在ARM架构上对GDB进行交叉编译,以便在ARM板上使用它进行远程...

    终于搞懂了,预编译头文件

    - **定义**:预编译头文件是指将项目中一部分稳定的代码预先编译,并将编译结果存储在一个特定的文件中(通常以`.pch`为扩展名),以便后续编译过程中能够直接使用该编译结果。 - **适用场景**:适用于那些不会频繁...

    es7.9+flink1.12基于CDH6.3.2编译之后的包 。【启动失败看资源描述!!!!!!!!】

    CDH6.3.2集成的ES7.9、flink1.12.2编译好的parcel及csd,可以直接用,不懂私聊 flink启动失败的参考这篇:https://blog.csdn.net/spark9527/article/details/115767011?spm=1001.2014.3001.5501 ES启动失败了执行这...

    易语言静态编译修复器.7z

    易语言是一种在中国广泛使用的编程语言,它以简体中文为语法,降低了编程的入门门槛,使得不懂英文的用户也能进行程序开发。静态编译是软件开发中的一个重要概念,特别是对于易语言来说,静态编译意味着将所有依赖的...

    apk反编译工具

    apktool是google提供的反编译工具,可以将apk反编译为smali文件,代码基本看不懂,不过它反编译资源文件倒是挺好用的。使用它可以使用指令:apktool d –f <file.apk> ,-f命令表示如果dir路径已经存在,则强制覆盖...

    编译原理中文版

    不懂编译原理也可以编程,但是懂了编译原理可以让你成为权威程序员。

    易语言静态编译连接工具

    易语言静态编译连接工具就是针对易语言编程环境设计的,易语言是一种中国本土开发的、面向对象的、中文编程语言,其目标是降低编程的难度,让不懂英文的人也能进行软件开发。通过这款工具,易语言的开发者可以将自己...

    od反编译软件

    描述中提到的"汉化版"意味着这个版本的OllyDbg已经被翻译成中文,对于中文使用者来说,这极大地降低了使用门槛,使得那些不懂英文的用户也能方便地使用这款工具。此外,"有一些插件"暗示了OllyDbg的可扩展性,用户...

    免费PB反编译软件PbdViewer_Fix_v0.1.15

    【注意:某些杀毒软件会误报病毒】pbdviewer原作者为看雪的不懂算法大牛,原版程序对代码的还原已经很完美了。fix版本在原版的基础上修复了一些bug,历时半年左右,修复版本高达15个!pbdviewer支持反编译pb5-pb12.6...

    Androidf可视化反编译工具

    这个工具为可视化,不需要进入命令行模式输入命令,直接有鼠标操作,分分钟就可反编译你想要反编译的APK包。然后可以用jd-gui.exe工具查看源代码了。这个jd-gui.exe工具你可以在这里下载到: ...

    易语言编译工具_全中文式编译工具

    易语言编译工具是一款专为中文用户设计的编程软件,其特点是完全采用中文界面和语法,降低了编程的门槛,使得不懂英文的用户也能轻松进行程序开发。这款工具旨在让更多的人能够接触并掌握编程技术,从而推动中国本土...

    搞懂进程!!

    进程是操作系统中的基本概念,...通过学习这些知识点,你不仅能理解“搞懂进程”的含义,还能具备实际操作和分析系统进程的能力。对于日常使用计算机或者从事软件开发、系统管理的人来说,这些都是不可或缺的基础知识。

    java反编译工具,快速查看源代码

    小巧,方便,不占用系统资源,用于查看.class文件。不需要安装,直接使用就好!,java反编译工具,快速查看源代码

    c语言的预编译处理

    预编译处理虽然不难,但是学好C语言最好能弄懂预编译

    易语言 5.11 静态编译 VC6链接器

    易语言是一种以中文编程为目标的计算机程序设计语言,它的出现旨在降低编程的门槛,使得不懂英文的用户也能方便地进行软件开发。5.11版本是易语言的一个更新迭代,通常每个新版本会带来一些功能增强、性能优化或错误...

    2017-12-21反编译最新工具

    反编译工具的应用场景广泛,包括但不限于: - **应用分析**:安全研究人员通过反编译来发现潜在的安全问题,如隐私泄露、恶意代码等。 - **学习借鉴**:开发者可以研究其他应用的实现,获取灵感或学习新技术。 - **...

    超级模块4.6直接编译生成EXE格式文件!做挂必备!

    不懂爬!别点运行需要会员验证!”这部分,可能是对不熟悉该过程的初学者的一种警告。"菜鸟爬"可能是一种幽默的表达,意味着新手可能遇到困难,而“别点运行需要会员验证”则提示该功能可能需要特定的权限或者需要...

    Android apk文件反编译、编辑、签名工具大集合

    1、包含了3个版本的APKTool,其中命令行界面的两个,窗口界面的一个,可反编译apk文件,得到smali文件; 2、包含了Notepad++,可编辑smali文件与其它资源文件,如xml...以上工具如有不懂使用的地方,可去问问度娘与狗哥

    mips交叉编译环境 共 5 部分 (4)

    目标平台: mipsel-linux(即little endian,x86也是little endian的,不懂的话自己到网上查资料吧) 安装目录: /usr/local/crossdev 源代码安装目录: /usr/local/src 注:没有的目录请自行建立。 2、准备MIPS...

Global site tag (gtag.js) - Google Analytics