Как скомпилировать отладочную сборку OpenJDK 7 в Ubuntu 11.10 - PullRequest
3 голосов
/ 29 января 2012

Где можно найти простой набор инструкций для компиляции отладочной сборки OpenJDK 7 в Ubuntu 11.10 (Oneiric)? Отладочная сборка сделает доступными дополнительные параметры JVM для устранения неполадок; например, WizardMode. В руководстве разработчика и build README много шума, и за ним трудно следить.

1 Ответ

6 голосов
/ 29 января 2012
  • Установите соответствующие пакеты:
sudo apt-get install ant build-essential openjdk-6-jdk
sudo apt-get build-dep openjdk-6-jdk
  • Найдите мастер OpenJDK Mercurial репозиторий , с которого вы хотите начать.В этих инструкциях будет использоваться jdk7u2.
  • Примеры команд содержат параметры, разрешающие доступ в Интернет через прокси-сервер;удалите их, если они вам не нужны.
  • Клонируйте репозиторий леса верхнего уровня Mercurial:
$ mkdir jdk7u2
$ cd jdk7u2
$ hg --config http_proxy.host=proxy:1234 clone http://hg.openjdk.java.net/jdk7u/jdk7u2 forest
$ cd forest
$ sh ./get_source.sh
  • Сборка завершится неудачно при компиляции звуковых библиотек.Как предложено здесь , используйте следующее для исправления соответствующего Makefile:
$ echo -e "--- old/jdk/make/javax/sound/jsoundalsa/Makefile    2012-01-28 12:00:00.000000000 -0500\n+++ new/jdk/make/javax/sound/jsoundalsa/Makefile    2012-01-28 12:00:00.000000000 -0500\n@@ -65,7 +65,7 @@\n \t\$(MIDIFILES_export) \\\\\n \t\$(PORTFILES_export)\n\n-LDFLAGS += -lasound\n+EXTRA_LIBS += -lasound\n \n CPPFLAGS += \\\\\n \t-DUSE_DAUDIO=TRUE \\\\" | patch -p1
  • Компиляция:
$ export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk ANT_OPTS="-Dhttp.proxyHost=proxy -Dhttp.proxyPort=1234 -Dhttps.proxyHost=proxy -Dhttps.proxyPort=1234"
$ . jdk/make/jdk_generic_profile.sh
$ make ALLOW_DOWNLOADS=true fastdebug_build
  • Компиляция займет некоторое время.
  • Проверьте сборку:
$ build/linux-amd64-fastdebug/j2sdk-image/bin/java -version
openjdk version "1.7.0-internal-fastdebug"
OpenJDK Runtime Environment (build 1.7.0-internal-fastdebug-user_2012_01_28_13_25-b00)
OpenJDK 64-Bit Server VM (build 22.0-b10-fastdebug, mixed mode)
$ build/linux-amd64-fastdebug/j2sdk-image/bin/java -XX:+AggressiveOpts -XX:+UnlockDiagnosticVMOptions -XX:+PrintFlagsFinal -XX:+PrintFlagsWithComments -version
...