Un montaje de WSL Ubuntu
1.Windows proporcionado WSL e instalar Ubuntu WSL
"Panel de control" -> "Programas" -> "Activar o desactivar las características de Windows" en la comprobación de la siguiente manera, de lo contrario no se pudo abrir después de la instalación
En la tienda de Windows y descargar e instalar Ubuntu búsqueda
2. Reemplazar fuente doméstica
El origen de la actualización de Ubuntu para cambiar el país tiene una mejor experiencia, me cambio a fuentes de la nube Ali, por supuesto, también puede cambiar otras fuentes:
El directorio se actualiza fuente etc / apt / sources.list, crea una fuente de respaldo
sudo cp sources.list sources.list.bakcup
A continuación, añadir o sustituir en su parte delantera, que dice lo siguiente:
deb http: // mirrors.aliyun.com/ubuntu/ biónico principal universo restringido multiverso deb-src http: // mirrors.aliyun.com/ubuntu/ biónico principal universo restringido multiverso deb http: // mirrors.aliyun.com/ubuntu / biónica seguridad principal universo restringido multiverso deb-src http: // mirrors.aliyun.com/ubuntu/ biónica seguridad principal universo restringido multiverso deb http: // mirrors.aliyun.com/ubuntu/ biónicos actualizaciones principal multiverso universo restringido deb-src http: // mirrors.aliyun.com/ubuntu/ biónicos actualizaciones principal universo restringido multiverso deb http: //mirrors.aliyun.com/ubuntu/ principal universo restringido-biónico propuesto multiverso deb-src http: // mirrors.aliyun.com/ubuntu/-biónico propuesto principal universo restringido multiverso deb http: // mirrors.aliyun.com/ubuntu/ biónicos-backports principal universo restringido multiverso deb-src http: // mirrors.aliyun.com/ubuntu/ biónicos-backports principal multiverso universo restringido
Dos, OpenJDK12 obtener código fuente
OpenJDK12 Dirección de origen: http://hg.openjdk.java.net/jdk/jdk12/file/06222165c35f
Baidu disco de red de código de extracción: 0h2s
En tercer lugar, la construcción del entorno de construcción
Después de descargar el código fuente de la descompresión, tener la documentación pertinente en su directorio doc,
Instalación de mando GCC
sudo apt-get instalar build-essential
dependencias de bibliotecas de terceros
herramienta | nombre de la biblioteca | Comandos de instalación |
FreeType | El Proyecto Tipo libre | sudo apt-get install libfreetype6-dev |
TAZAS | Common UNIX Printing System | sudo apt-get install libcups2-dev |
X11 | X Window System | sudo apt-get install libx11-dev libXext-dev libxrender- dev libxrandr-dev libXtst-dev libXt-dev |
ALSA | Advanced Linux Sound Architecture | sudo apt-get install libasound2-dev |
libffi | Biblioteca interfaz portátil Función de Asuntos Exteriores | sudo apt-get install libffi-dev |
autoconf | Extensible paquete de macros M4 | sudo apt-get install autoconf |
OpenJDK11 instalación
sudo apt-get instalar openjdk- 11 -jdk
instalar postal
sudo apt-get instalar postal
Si no zip instalar en tiempo de compilación de comprobación puede informar del error siguiente
configure: error: no se pudo hallazgo herramienta necesaria para ZIPEXE configurar la salida con el código de resultado 1
En cuarto lugar, la compilación
Hay muchos parámetros pueden ser para su uso, tales como el establecimiento de una versión compilada FastDebug de tiempo de compilación, sólo el modo de máquina virtual de HotSpot servidor
fiesta de configuración --enable-debug with-JVM-variantes = server
Si usted ha construido entorno será similar al siguiente contenido:
================================================== == Una nueva configuración se ha creado con éxito en / home / flytree / jdk12 / build / Linux-x86_64-servidor- fastdebug mediante Configurar argumentos ' --enable-debug with-JVM-variantes = server ' . Resumen de configuración: * Nivel de depuración: fastdebug * nivel de depuración HS: fastdebug * JVM variantes: el servidor * JVM características: Servidor: ' AOT cds cmsgc compiler1 compiler2 epsilongc g1gc Graal jfr JNI-check gestión jvmci JVMTI NMT servicios serialgc parallelgc shenandoahgc vm-estructuras ZGC ' * OpenJDK objetivo: Sistema operativo: Linux, la arquitectura de la CPU: 86, longitud de la dirección: 64 * Versión de cuerdas : 12 -interna + 0 -adhoc.flytree.jdk12 ( 12 - interna) Resumen Herramientas: * Bota de JDK: Versión OpenJDK " 11.0.6 " 2,020 - 01 - 14 OpenJDK Runtime Environment (build 11.0 . 6 + 10 -post-Ubuntu-1ubuntu118. 04,1 ) OpenJDK 64 -Bit servidor VM (build 11.0 . 6 + 10 -post-Ubuntu-1ubuntu118.04,1 , modo mixto, el intercambio) (en / usr / lib / jvm / java- 11 -openjdk- amd64) * Toolchain: gcc (GNU Compiler Collection) * C Compiler: Version 7.5 . 0 (en / usr / bin / gcc ) * C ++ Compiler: Version 7.5 . 0 (en / usr / bin / g ++ ) resumen de rendimiento de construcción: * Núcleos de usar: 4 límite de memoria *: 12154 MB
Y generará un directorio
A continuación, ejecute el siguiente comando para compilar
make imágenes
El compilado JDK resultante
Parámetros del documento:
Argumentos de configure para coser la construcción
--enable-debug
- Ajuste el nivel de depuración afastdebug
(esta es una forma abreviada de--with-debug-level=fastdebug
)--with-debug-level=<level>
- Ajuste el nivel de depuración, que puede serrelease
,fastdebug
,slowdebug
ooptimized
. Por defecto esrelease
.optimized
es la variante derelease
con código adicional de depuración hotspot.--with-native-debug-symbols=<method>
- Especificar si y cómo nativa símbolos de depuración debe ser construido. Los métodos disponibles sonnone
,internal
,external
,zipped
. Comportamiento predeterminado depende de la plataforma. Ver Símbolos de depuración nativo para más detalles.--with-version-string=<string>
- Especificar la cadena de versión esta acumulación se identifica con.--with-version-<part>=<value>
- Un grupo de opciones, donde<part>
puede ser cualquiera depre
,opt
,build
,major
,minor
,security
opatch
. Utilice estas opciones para modificar sólo la parte correspondiente de la cadena de versión de la predeterminada o el valor proporcionado por--with-version-string
.--with-jvm-variants=<variant>[,<variant>...]
- Construir la variante (o variantes) de hotspot. Variantes válidos son:server
,client
,minimal
,core
,zero
,custom
. Tenga en cuenta que no son posibles todas las variantes de combinar en una sola estructura.--with-jvm-features=<feature>[,<feature>...]
- Uso de la JVM especificada cuenta en la construcción de hotspot. La lista de características se habilitará en la parte superior de la lista predeterminada. Para lacustom
variante de JVM, esta lista está vacía por defecto. Una lista completa de las características de JVM disponibles se puede encontrar utilizandobash configure --help
.--with-target-bits=<bits>
- Crear un sistema binario de destino adecuado para correr sobre una<bits>
plataforma. Utilice esta opción para crear una salida de 32 bits en una plataforma de construcción de 64 bits, en lugar de hacer una compilación cruzada completa. (Esto se conoce como una reducida acumulación.)En Linux, BSD y AIX, es posible anular en Java por defecto para búsquedas en tiempo de ejecución bibliotecas / JNI. Esto puede ser útil en situaciones donde hay un directorio especial común de las bibliotecas JNI del sistema. Este ajuste puede a su vez ser sobreescrito en tiempo de ejecución mediante el establecimiento de la
java.library.path
propiedad.
--with-jni-libpath=<path>
- Uso de la ruta especificada por defecto en la búsqueda de bibliotecas de tiempo de ejecución.Argumentos de configure para Native Compilación
--with-devkit=<path>
- Use este SDK de los compiladores, herramientas y recursos--with-sysroot=<path>
- Utilice este directorio como sysroot--with-extra-path=<path>[;<path>]
- Introduce estos directorios a la ruta predeterminada en la búsqueda de todo tipo de archivos binarios--with-toolchain-path=<path>[;<path>]
- Introduce estos directorios en la búsqueda de los binarios de las herramientas principales (compiladores, etc.)--with-extra-cflags=<flags>
- Anexar estas banderas al compilar archivos JDK C--with-extra-cxxflags=<flags>
- Anexar estas banderas al compilar archivos JDK C ++--with-extra-ldflags=<flags>
- Anexar estas banderas al vincular las bibliotecas JDKArgumentos de configure para dependencias externas
--with-boot-jdk=<path>
- Establecer la ruta de acceso al arranque JDK--with-freetype=<path>
- Fije la ruta FreeType--with-cups=<path>
- Fije la ruta CUPS--with-x=<path>
- Fije la ruta X11--with-alsa=<path>
- Fije la ruta ALSA--with-libffi=<path>
- Fije la ruta libffi--with-jtreg=<path>
- Fije la ruta JTReg. Ver pruebas de circulaciónCiertas bibliotecas de terceros utilizados por el JDK (libjpeg, giflib, libpng, LCMS y zlib) están incluidas en el repositorio de JDK. El comportamiento predeterminado de la acumulación de JDK es utilizar esta versión de estas bibliotecas, sino que podría ser reemplazado por una versión externa. Para ello, especifique
system
como<source>
opción en estos argumentos. (El valor predeterminado esbundled
).
--with-libjpeg=<source>
- Uso de la fuente específica para los libjpeg--with-giflib=<source>
- Uso de la fuente específica para los giflib--with-libpng=<source>
- Uso de la fuente específica para los libpng--with-lcms=<source>
- Uso de la fuente específica para los lcms--with-zlib=<source>
- Uso de la fuente específica para zlibReferencia: "la comprensión en profundidad de la máquina virtual de Java JVM características y mejores prácticas avanzadas" (tercera edición)