-Xlint:deprecation 重新编译 或者 错误: 编码ascii的不可映射字符 出现这种错误的时候 可以进行设置jdk编译编码即可解决 因为是编译openjdk  所以在环境变量中设置: export JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF-8 即可!…
编译OpenJDK主要为了学习HotSpot,编译过程在很多相关书籍中都有所涉及,但由于机型.机子具体环境的不同,很难有资料能够一步到位.还是得碰到具体问题通过上网查来一个个解决. 下载OpenJDK 由于网络环境还不错,所以这里采用通过版本管理来下代码. 安装mercurial版本管理 brew install mercurial 接下来clone源码 hg clone http://hg.openjdk.java.net/jdk8/jdk8 cd jdk8 && sh get_sour…
eclipse由于开源所以支持了比较杂的编码方式,而这些一个工程导入时添加了不少的外来程序,由于不是同一工程一次编码带来了其中含有GBK和 UTF8   UTF16  ASCII等文件编译时就会出现错误警告.UTF-8:Unicode TransformationFormat- 8bit,允许含BOM,但通常不含BOM.是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24为(三个字节)来编 码.UTF-8包含全世界所有国家需要用到的字符,是国际编码,通用性强.UTF…
################################ 背景:开发环境在编译H5的时候出现了以下报错,记录下 ################################ D:\Jenkins\workspace\stock_frontend_feature_7.03_deploy_to_132>"C:\Program Files\nodejs\npm" install --registry=https://registry.npm.taobao.org npm W…
模版(template)设计的初衷,是设计一种自动实例化机制,不需要使用者参与,编译器可根据使用者提供的模版参数再套用类的定义来实例化.所谓实例化,除了包含对于程序变量的实例化,即开辟空间并设置某些变量的初值(构造函数)以及指针(如vptr)以及其他支持(virtual base class offset),还有对于函数的实例化,即根据函数的定义生成机器指令,并在函数调用处提供函数的入口地址.简单来看,普通类和模版类的区别,在于普通类实例化时有较为固定的空间开销(除非类似new string(n…
一.“sysdep1.h”文件缺失 错误提示: fatal error C1083: 无法打开包括文件: “sysdep1.h”: No such file or directory 这些作为这个软件的bug, 不需要太清楚为什么造成这种错误.只需要更正过来即可.你的经历应该放在对算法的理解上去. 解决方法: 在bundler源码根目录下的\lib\f2c中: 1>将sysdep1.h0文件名修改为sysdep1.h: 2>将signal1.h0文件名修改为signal1.h: 3>新建…
import java.util.Arrays;public class ArrayAsAReference{ public static void main(String[] args) { int[] arr = null; System.out.println(arr); arr = new int[]{1, 2, 3, 4}; // 静态创建数组对象 System.out.println(Arrays.toString(arr)); int[] prices; prices = new…
在Android Studio中,假设我们的代码有中文凝视.显示的时候全然正常,而编译的时候Gradle就会报错,可是又能够编译成功,并且Gradle报的错误信息,也是乱码! 这样我们就不好寻找错误原因,(挺坑人的....) 说了这么多.以下说解决的方法: 事实上那个乱码错误信息是"编码 UTF-8 的不可映射字符".所以我们能够用例如以下办法解决 首先在设置中设置字符集: Settings->File Encodings->IDE Encodeing->UTF-8…
在Ubuntu 16中编译开启NEON优化的Opencv时,遇到libpng编译是使用汇编代码的错误,完整错误见文章末尾.通过查询发现解决方案是安装跨平台编译器,安装代码如下: sudo apt-get install gcc-arm-linux-gnueabi sudo apt-get install gcc-arm-linux-gnueabihf sudo apt-get install g++-arm-linux-gnueabihf 在参考1中说的是用OCV源码中的toolchain_fi…
执行查询语句总是报错,某个查询语句字段编码错误. 各种修改那个表没用, 最后发现是创建schemas的时候没有加编码 应该由 CREATE SCHEMA new_schema;改为 CREATE SCHEMA new_schema default charset=utf8mb4; 浪费了半天时间呀..…
想要深入了解JVM,就必须了解其实现机制.了解JVM实现的最好方法便是自己动手编译JDK.好了,让我们开始吧! 1.  准备工作 获取OpenJDK源码 本次编译选择的是OpenJDK7u,官方源码包:https://jdk7.java.net/source.html 系统需求 为了提高效率,尽量选择Linux 或 MacOS作为编译平台.本次使用Ubuntu12.04进行编译.仔细阅读源码包中README-builds.html文档,就可以构建编译环境了. 2.  配置编译环境 编译依赖 Op…
一.前言 最近在看<深入java虚拟机>,看完后,打算自己实际编译一个jvm出来看看,实践一下. 书上提到了Oracle JDK和OpenJdk的关系,Oracle Jdk7 和OpenJdk 7共用了相当多的代码,所以还是很有学习的必要的: 二.环境 我这里的编译的操作系统是CentOS Linux release 7.4.1708 (Core)  (通过 cat /etc/centos-release查看). 编译环境相当重要,因为编译openjdk的过程中,网上的文章里,大家遇到的各个问…
一直用windows一键搞定, 没有去了解详细的编译链接过程, 今天看了一篇文章, 顺便实验和记录在Linux下逐步生成的步骤. 预处理: 执行#include, #define, #if, #ifdef等预处理指令 把宏展开 编译: 把源文件编译为汇编语言文件 对所有常量表达式(只包含常量的表达式)求值发生在此阶段(不是预处理阶段) 汇编: 把汇编语言文件翻译称为机器语言指令 链接: 连接器就负责处理合并各种用到的*.o, 比如用到的printf函数就会连接printf.o, 结果就得到一个可…
这篇是计算机类的优质预售推荐>>>><Verilog与SystemVerilog编程陷阱:怎样避免101个常犯的编码错误> 编辑推荐 纠错式学习,从"陷阱"中学习编程,加深对语言本身的理解. 逆向式学习,从错误中学习避免错误的方法.让读者写出更好的代码. 案例式学习,将101个"陷阱"分类汇编,以针对性案例引导读者掌握编程要点. 译者序 译者序 随着电子设计自己主动化(Electronic Design Automation,ED…
编译openjdk 1. 下载openjdk源码 openjdk的官网是OpenJDK (java.net) 在网站左侧就能看到它的源码位置的链接 从图上可以看到,它的源码在两个位置有托管,Mercurial.GitHub这两个网站都有.我们点击GitHub,进去到它GitHub的位置. 上图第一个就是openjdk的仓库地址了 . 选择HTTPS,复制地址. 下一步,登录码云(没账号的可以先创建一个),在边上有个+的图标,点开就可以看到二级菜单有个从GitHub/GitLab导入仓库. 上面G…
前言 大家好,我是卫斯理(Wesley).喜欢武侠的朋友可能知道小说中也有个卫斯理,他是位冒险家,财力充沛,极富冒险精神,并且有着超强的好奇心,对奇异的事情总有"打破沙锅问到底"的精神.我理想中的自己是成为一位飘逸的剑客(游侠),他和卫斯理有很多共同的地方,所以我也给自己取名卫斯理.既然想成为一位飘逸的剑客,首先必须有出众的技艺,所以从今天开始,我开始潜心修炼内功,提高技能,并且整理分享给大家,希望对大家有帮助.这是我认真写的第一篇博客.主要讲解C#的编译执行过程.后续会陆续讲解C#其…
一.编译安装apache 1.解决依赖关系 httpd-2.4.4需要较新版本的apr和apr-util,因此需要事先对其进行升级.升级方式有两种,一种是通过源代码编译安装,一种是直接升级rpm包.这里选择使用编译源代码的方式进行,它们的下载路径http://apr.apache.org/ (1) 编译安装apr # tar xf apr-1.4.6.tar.bz2# cd apr-1.4.6# ./configure --prefix=/usr/local/lamp/apr# make &&am…
有些人写C/C++(以下假定为C++)程序,对unresolved external link或者duplicated external simbol的错误信息不知所措(因为这样的错误信息不能定位到某一行).或者对语言的一些部分不知道为什么要(或者不要)这样那样设计.了解本文之后, 或许会有一些答案.       首先看看我们是如何写一个程序的.如果你在使用某种IDE(Visual Studio,Elicpse,Dev C++等),你可能不会发现程序是如何组织起来的(很多人因此而反对初学者使用I…
关于static函数的用法 就像我们熟知的那样,变量可以分全局的和局部的,函数也可以分全局的和局部的. 比如说,在一个工程的common.h中定义了一个全局变量 int test;那么在整个工程的作用范围内,该变量都是存在的,在编译的时候会将其保存在整个工程全局的变量表中,文件(.h或.cpp)只要使用声明extern int test;就可使用该变量,而不用包含该变量的头文件common.h,因为该变量的作用域是全局的. 和全局变量一样,大多数的非类成员函数基本上都定义为全局的.我们可以分两种…
C程序编译执行过程   认识C编译执行过程,是C学习的开端. 简单说C语言从编码编译到执行要经历一下过程:   C源代码 编译---->形成目标代码,目标代码是在目标机器上运行的代码. 连接---->将目标代码与C函数库相连接,并将源程序所用的库代码与目标代码合并,并形成最终可执行的二进制机器代码(程序). 执行----->在特定的机器环境下运行C程序.   如果用一个图 来表示:     以上过程仅仅是个大概,详细的过程相当复杂,下面这篇文章写得很详细,从中受益很多:   原文来自:h…
Apache默认编码UTF-8在解析A网站的时候没有任何问题,当运行B网站时出现的"蝌蚪文"乱码问题   最近经常有同学在使用LAMP/WAMP时,遇到这样的编码错误问题: A网站程序编码UTF-8编码安装成功,运行成功. B网站程序编gb2312也要安装在同一服务器上. 这样就出现问题了,Apache默认编码UTF-8在解析A网站的时候没有任何问题,当运行B网站时出现的"蝌蚪文"乱码问题. 单纯的修改Apache默认编码为gb2312这样就导致A网站出现"…
今天学习<深入理解Java虚拟机:JVM高级特性与最佳实践>一书,并动手在Linux系统上编译OpenJDK 7,初次搞不太顺利,特记录下编译操作细节. 一.前期准备 约定:工具默认安装目录是/usr/local/,若有源码,则源码存放在/usr/local/src/目录下,笔者用到的工具已打包上传到百度云:https://pan.baidu.com/s/1WhsQHJvduK75EBE8lQqq9g 1.编译需要的相关工具 yum -y install gcc gcc-c++ alsa-li…
day61 Django中的APP:         什么是APP?以及为什么要用APP?                  project  --> 项目  (老男孩教育大学校)                  APP      --> 应用  (Linux学院/Python学院/大数据学院/Java学院)                  方便我们在一个大的Django项目中,管理实现不同的业务功能.                  1. 创建APP的命令             1.…
11:42:30 C语言的编译链接过程要把我们编写的一个c程序(源代码)转换成可以在硬件上运行的程序(可执行代码),需要进行编译和链接.编译就是把文本形式源代码翻译为机器语言形式的目标文件的过程.链接是把目标文件.操作系统的启动代码和用到的库文件进行组织形成最终生成可执行代码的过程.过程图解如下: 从图上可以看到,整个代码的编译过程分为编译和链接两个过程,编译对应图中的大括号括起的部分,其余则为链接过程. 编译过程 编译过程又可以分成两个阶段:编译和会汇编. 编译 编译是读取源程序(字符流),对…
<h4>认识C编译执行过程</h4>认识C编译执行过程,是C学习的开端.简单说C语言从编码编译到执行要经历一下过程: C源代码编译---->形成目标代码,目标代码是在目标机器上运行的代码.连接---->将目标代码与C函数库相连接,并将源程序所用的库代码与目标代码合并,并形成最终可执行的二进制机器代码(程序).执行----->在特定的机器环境下运行C程序. 如果用一个图 来表示: <a href="http://www.emacsvi.com/wp-…
前些日子经若亮童鞋提醒,我在其他推荐的页面中增加了对 Dropbox 和 Linode 等工具的推荐,一来分享这些好用的产品,二来期望刚接触这些工具的好心的朋友可以不吝啬时间用我的推荐码注册,让我获得一些分享的回报. 改过页面内容后,照常的使用rake preview命令生成预览页面,打开浏览器,得到的却是一行孤零零的 Sorry, I can not find / rake generate后的结果更悲惨: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1…
一.前言 前一阵子比较好奇,想看到底层(虚拟机.汇编)怎么实现的java 并发那块. volatile是在汇编里加了lock前缀,因为volatile可以通过查看JIT编译器的汇编代码来看. 但是原子类,本来在jvm中就是汇编实现的,反而没法看.如果能实际跟踪一下断点,应该也算实际验证了. 这边基本参照下面文章来的,补充了很多让初学者头疼的细节,并拓展了一部分, 包括调试java 原子类在jvm中的实现的一些细节. https://marcin-chwedczuk.github.io/debug…
下面展示了Delphi是怎样编译源文件,并且把它们链接起来,最终形成可执行文件. 当Delphi编译项目(Project)时,将编译项目源文件.窗体单元和其他相关单元,在这个过程中将会发生好几件事情: 首先,Object Pascal编译器把项目单元编译为二进制对象文件,然后资源编辑器将把诸如程序图标.窗体文件等资源编译成二进制资源文件,接着链接开始起作用:链接器根据编译器产生的二进制文件,依项目需要增加一些库文件,并把这些文件综合在一起产生最终的可执行文件. 编译.创建和链接 每当点击Run按…
LAMP环境源码编译安装过程 一.Apache的安装 1.1.apache软件包及依赖包准备 httpd-2.4.29.tar.bz2       apr-1.6.3.tar.gz      apr-util-1.6.1.tar.bz2        pcre-8.10.tar.gz   这三个依赖包安装时最好指定安装路径,在安装httpd的时候需要指定依赖包的安装位置. 这些软件可以下载到/usr/local/src.解压之后在进行安装.安装路径一般放在/usr/local/下. 1.2.安装…
Linux内核编译完整过程 通过网上的资料我自己的实际内核编译,我把对Linux内核编译的过程写在这里,也许对其他的Linux爱好者的编译学习有些帮助,其中很大部分是网上的资料,另外就是我在实际编译过程中的一些实际经验. 内核简介 内核,是一个操作系统的核心.它负责管理系统的进程.内存.设备驱动程序.文件和网络系统,决定着系统的性能和稳定性. Linux的一个重要的特点就是其源代码的公开性,所有的内核源程序都可以在/usr/src/linux下找到,大部分应用软件也都是遵循GPL而设计的,你都可…