编译相关内容

为什么有的程序在linux不需要编译就可以直接使用?

问 题 为什么有的程序不需要编译就直接可以在linux使用?比如mongodb,是这些程序已经做好了编译了供你直接使用的吗?那么他是怎么做到系统之间不同版本兼容的? 解决方案 脚本语言写的程序可以编译,根据解释器现场编译现场执行。 其他的都是编译过的,简单地讲就是把用户的编译时间节省了。比如rar官网就提供编译过的unrar二进制文件下载。 那么他是怎么做到系统之间不同版 ..
发布时间:2017-09-06 11:30:28 服务器开发

gcc - PHP7.1 编译的问题

问 题 是什么东西?sapi/fpm/ 解决方案 GCC PGO优化编译PHP7的步骤 用PGO(Profile Guided Optimization)根据profile数据进行特定场景优化,能带来10%的性能提升. 1.首先第一遍编译PHP7,让它生成会产生profile数据的可执行文件,其中prof-gen是PHP7的Makefile特有的参数: make prof- ..
发布时间:2017-09-06 07:28:13 PHP

c - x86汇编指令集为什么设计一个ret命令,为什么不用pop eip代替?

问 题 x86汇编指令集为什么设计一个ret命令,为什么不用pop eip代替? 解决方案 ret 含有平栈的操作。 pop eip 只是恢复了调用时的下一条指令的地址。没处理 栈指针。 RET - 从过程返回 操作码 指令 说明 C3 RET 近返回到调用过程 CB RET 远返回到调用过程 C2 iw RET imm16 近返回到调用过程,并从堆栈弹出 i ..
发布时间:2017-09-06 06:38:01 其他开发

c++编译遇到重复定义

问 题 一直对编译这个事情不是太明白,想好好学习一下,今天自己写东西试验,遇到了这么个问题,想请教一下,先贴代码 // test.h #ifndef JUST_FOR_TEST_H_ #define JUST_FOR_TEST_H_ struct Test { static int i; void t(); }; int Test::i = 0; #endif // t ..
发布时间:2017-09-06 00:40:14 C/C++开发

编译原理 - 新手想写一个编译器,要学习哪方面的知识?

问 题 编译原理我知道肯定要学,准备从外国那本龙书入手,其他还需要什么知识吗? 解决方案 龙书太老了,所有知识点都事无巨细地列出,难以把握重点,其实不太适合作为新手教程,而且parser占据过多篇幅(parser现在有大量的工具可以直接上手用),现代编译器的重心都转移到后端了 编译原理浩瀚如海,随意挑一个细分领域都够一个Phd毕业。 对于新手,一开始不应该学习过多理论,不 ..
发布时间:2017-09-05 23:17:18 其他开发

java - openjdk 编译异常

问 题 1、手工编译openjdk,运行一半时出现以下异常。 2、环境: 系统:ubuntu 16.04 内核:4.10.0-28-generic Bootstrap jdk: 在oracle 官网下载的 jdk1.7.0_80 编译的openjdk: openjdk-7u75-src-b13-18_dec_2014.zip 运行时先报了一个操作系统内核不正确,将校验内核脚本注 ..
发布时间:2017-09-05 20:49:35 Java开发