当前位置:首页 > CN2资讯 > 正文内容

windows 10搭建openldap

2天前CN2资讯


基于之前面试很多次被问到jvm运行原理及调优问题,以及jvm本身是技能提升不可逾越的一道坎,于是决定深入学习jvm,不久买了周志明的《深入理解java虚拟机--jvm高级特性与最佳实践》一书,拜读学习。写此博客目的1:以前没写过博客,准备以此为开端尝试谢谢;2:记录自己学习历程,同时督促自己不断学习不断提升;3:记录遇到的问题,记录解决的办法和思路,以后重新看时可能会有新的感受。

1.编译环境搭建

可以是win10系统或者LInux系统,因本人工作公司开发环境为win10,于是以win10为搭建系统,具体列表如下:

     1)win10

     2)cygwin 64位最新版本,别太旧就行

     3)freetype 2.7

     4)vs2010

     5)openjdk8

     6)JDK 8 (本地机器安装)

    以上安装软件我是参考博主Lynn的博客,非常感谢他,

   他整理的链接:https://pan.baidu.com/s/10iD2e7LhtQTPolGVUdOGgg 密码:yjqh

2.软件安装步骤

2.1安装CYGWIN:在Windows平台下模拟Linux运行环境的软件,提供一系列的Linux命令支持;

需要该软件的原因是在编译中要使用GNU Make来执行Makefile文件(参考周志明《深入理解java虚拟机--jvm高级特性与最佳实践》);

注意:安装CYGWIN时不能直接默认安装,因为下表中所示的工具都不会进行默认安装,而它们是编译过程中需要的,所以需要在装界面中进行手工选择。

                                                               表1 需要手工选择安装的CYGWIN工具

Binary Name

Category

Package

Description

ar.exe

Devel

binutils

The GNU assembler, linker and binary utilities

make.exe

Devel

make

The GNU version of the ‘make’ utility built for CYGWIN

m4.exe

Interpreters

m4

GNU implementation of the traditional Unix macro processor

cpio.exe

Utils

cpio

A program to manage archives of files

gawk.exe

Utils

awk

Pattern-directed scanning and processing language

file.exe

Utils

file

Determines file type using ‘magic’ numbers

zip.exe

Archive

zip

Package and compress (archive) files

unzip.exe

Archive

unzip

Extract compressed files in a ZIP archive

free.exe

System

procps

Display amount of free and used memory in the system

此处如果选择的服务器不合适的话,尽管你的网络本身速度很快,但是此处下载速度很慢。所以,此处需要选择一个速度比较快的服务器。对于国内来说,连接很多国外的服务器,速度一般都很慢。我是参照网上相关方法自己手动添加:

在Use URL处,输入:http://mirrors.163.com/cygwin/

CYGWIN 安装时的定制包选择界面如图:

默认都是default,选择需要必须要安装的点击那个如刷新的按钮,切换成install;

这里有个困扰人的地方是怎么查找上面提到的相关包,可能有的人直接ALL INSTALL ,我第一次就是这样,网上1M/s下载约8个小时,共20G左右库包,下载完后根据库包安装D盘剩余50多G被占完还无法安装成功,磁盘空间不够!在此极不推荐该方法;

综合网上很多想法,本人推荐方法为:根据包名称查找,比对Description信息,其实查找完后相关包已经不是特别多,直接全install也挺快的,9个必须包不到20来分钟即可全下完。

将CYGWIN的安装路径下bin目录配置到环境变量path中,如我的安装路径为:d:\jvm\cygwin\bin

2.2 安装vs2010 

需要该软件的原因:JDK中最核心的代码(Java虚拟机及JDK中Native方法的实现等)是使用C++语言及少量C语言编写的,官方文档中说他们的内部开发环境是Microsoft Visual Studio C++ (VS2003)中进行编译,及Microsoft Visual Studio C++ (VS2010)测试过。

此处省略因为非常简单;(安装路径不要有空格)

2.3 安装FreeType

需要该软件的原因:这是一个免费的字体渲染库,JDK的Swing部分和JConsole这类工具使用到。

将下载的freetype2.7解压。如解压至d:\freetype-2.7,接下来介绍通过vs2010编译64位的freetype-2.7。

编译Freetype

第一次打开vs2010的话,选择使用VC++,选择file-->open-->project/solution...,找到你解压freetype的路径 ,如我的d:\freetype-2.7\builds\windows\vc2010\freetype.sln

打开后,右键项目,选择properties,如图

由于我们想编译64位的openjdk,所以我这里需要64位的,在编译之前的检查中,我们不仅需要dll文件还需要lib文件,都是用同一个工程编译出的只是后缀不太一样。编译两次的时候只需要修改vs2010的配置后缀就OK了,注意在vs2010的配置选中,选择X64的,编译的时候,请右键项目,build,请同学们注意下图:

编译freetype.lib:

编译freetype.dll

两个文件编译完成后,编译的文件在目录:D:\jvm\freetype-2.7\objs\vc2010\x64

然后在d:\freetype-2.7目录下创建lib文件夹,并将编译好的freetype.dll和freetype.lib复制到该目录。

在编译openjdk之前会校验并用到freetype下的include文件夹下的ft2build.h和lib文件夹下的freetype.dll和freetype.lib文件。

然后还需要设置一下freetype的环境变量,FREETYPE_CFLAGS=d:\freetype-2.7\include;FREETYPE_LIBS=d:\freetype-2.7\lib,可以尝试直接设置在path中。如图:

编译openjdk

打开cygwin,切换到解压的openjdk_8的文件夹根目录,如:

执行命令

bash ./configure -with-freetype=/cygdrive/d/freetype-2.7 -enable-debug -with-target-bits=64

-with-freetype参数是使用指定的freetype,-enable-debug是编译可调试的openjdk,-with-target-bits=64,是指编译64位的.

再执行上述操作前如果设置了环境变量JAVA_HOME, CLASSPATH 记得删除,否则会报错

编译时遇到问题:

1)如果cygwin安装的是2.X的版本则在编译的过程中会报cygwin的版本太老,这是检测脚本的一个bug,该脚本在common/autoconf目录下使用文本编辑器打开搜索Your cygwin is too old,关注7249行原来是1.7这里我根据自己的cygwin版本改成了2.10。

最终编译效果图如下,本人的有点小问题是:ccache status:not available for your system,但影响不大,以后改进

最后可以通过make all命令进行下一步的工作,编译完的结果在D:\jvm\openjdk-8u40\openjdk\build\windows-x86_64-normal-server-fastdebug中。




    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/26734.html

    分享给朋友:
    返回列表

    上一篇:python 10 windows下载

    下一篇:windows

    “windows 10搭建openldap” 的相关文章

    如何高效管理Ubuntu服务器:从基础到高级的全面指南

    管理Ubuntu服务器是一个需要掌握多种技能的任务。从选择合适的Linux发行版到系统初始化,再到账号和权限管理,每一个环节都至关重要。以下是一些基础的管理技巧,帮助你更好地配置和管理Ubuntu服务器。 1.1 选择合适的Linux发行版 在国内,常用的Linux发行版有CentOS、Ubuntu...

    ColoCrossing:优质VPS与安全托管服务提供商解析

    在美国,ColoCrossing作为一家老牌且独立的服务器和托管服务提供商,一直以来以其优质的IT解决方案著称。这家成立多年的公司,致力于满足不同类型客户的需求,无论是面向亚太地区还是欧美市场,它都有相应的数据中心来支持各种使用场景。我个人觉得他们的服务理念是非常值得推崇的,特别是在稳定性和可靠性方...

    了解尼日利亚IP地址及其获取方法

    尼日利亚IP地址概述 尼日利亚的IP地址数量颇具规模,达到3,196,160个,这在全球范围内占有0.0938%的比重,位居第61位。这意味着,尽管尼日利亚在全球互联网上不是最大的参与者,但它的IP资源依然相对丰富,给予了很多用户连接世界的机会。听起来兴奋吧?这些IP地址为本地互联网用户和企业提供了...

    IPv6 测速方法与工具:提升网络体验的技巧

    IPv6 测速的基本概念 IPv6,作为互联网协议的最新版本,让我们在网络世界中畅游无阻。它的推出旨在解决IPv4所面临的地址枯竭问题,推进更加广泛的设备连接。简单来说,IPv6提供了更大的地址空间,能够支持越来越多的设备上线。因为万物互联的时代已经来临,我们的手机、电脑、家居设备甚至汽车都需要连接...

    深入了解CN2 GIA VPS:选择更快稳定的虚拟专用服务器

    在现代互联网环境中,选择合适的虚拟专用服务器(VPS)至关重要。CN2 GIA VPS,则是个不错的选择。它基于中国电信的CN2 GIA国际精品网络,这一网络是中国电信下一代承载网络的高端产品,又被称为Chinatelecom Next Carrier Network- Global Interne...

    腾讯云与Cloudflare的比较分析:助力企业数字化转型的最佳选择

    在数字化转型的浪潮下,越来越多的企业开始依赖云计算技术来推动业务发展。其中,腾讯云和Cloudflare作为行业的佼佼者,吸引了广泛的关注。腾讯云是腾讯集团倾力打造的云计算品牌,凭借强大的技术背景和丰富的产品线,逐渐成为全球知名的云计算服务商。它的基础设施覆盖全球五大洲,运营于58个可用区,能够为不...