Need help in building openjdk in ubuntu 11.10

Stuart Marks stuart.marks at oracle.com
Thu Dec 22 02:52:54 UTC 2011


It's not enough to *set* ALT_BOOTDIR, it also needs to be *exported* to the 
environment. If it's not exported, the variable is visible in your shell but 
isn't visible to subprocesses such as make. It looks like that's what's going 
on here.

How you export something to the environment depends on the shell, but this is a 
fairly safe bet for the Bourne shell and its descendants:

     $ ALT_BOOTDIR=/home/michael/Programs/jdk1.6.0_30 ; export ALT_BOOTDIR

A common shortcut that works for ksh and bash and friends is:

     $ export ALT_BOOTDIR=/home/michael/Programs/jdk1.6.0_30

s'marks

On 12/21/11 6:35 PM, Kelly O'Hair wrote:
> Later on it says:
>
>>>> Bootstrap Settings:
>>>>   BOOTDIR = /NO_BOOTDIR
>>>>     ALT_BOOTDIR =
>>>>   BOOT_VER = /bin/sh: /NO_BOOTDIR/bin/java: not found [requires at least 1.6]
>
> Which indicates that the make system did not see it.
>
> Run:
>      env | fgrep ALT_BOOTDIR
>
> Oh, but this is Ubuntu 11.10  that could be an issue.
> The makefiles might not quite understand a kernel version that isn't 2.4 or 2.6.
> I know the hotspot Makefiles might need to have 3.0 added to the support list.
>
> But that doesn't explain why it is not seeing ALT_BOOTDIR.
>
> What does    make --version   say?
>
>
> -kto
>
> On Dec 21, 2011, at 6:11 PM, m silverstri wrote:
>
>> I did.
>>
>> $ echo $ALT_BOOTDIR
>> /home/michael/Programs/jdk1.6.0_30
>>
>> On Wed, Dec 21, 2011 at 5:54 PM, Kelly O'Hair<kelly.ohair at oracle.com>  wrote:
>>> Did you export ALT_BOOTDIR?  It needs to be set in the environment.
>>>
>>> -kto
>>>
>>> On Dec 21, 2011, at 4:55 PM, m silverstri wrote:
>>>
>>>> I have run and passed 'make sanity' and I have download and set
>>>> ALT_BOOTDIR  to a jdk6:
>>>>
>>>> $ echo $ALT_BOOTDIR
>>>> /home/michael/Programs/jdk1.6.0_30
>>>>
>>>> But when I 'make', i still get error saying 'We cannot execute
>>>> /NO_BOOTDIR/bin/java'
>>>>
>>>> make[2]: Entering directory `/home/michael/src/jdk7/langtools/make'
>>>> JAVA_HOME=/NO_BOOTDIR
>>>> ANT_OPTS=-Djava.io.tmpdir='/home/michael/src/jdk7/build/linux-amd64/langtools/build/ant-tmp'
>>>> ant -Djdk.version=1.7.0
>>>> -Dfull.version='1.7.0-internal-michael_2011_12_21_16_53-b00'
>>>> -Dmilestone=internal -Dbuild.number=b00 -Djavac.target=7
>>>> -Djavac.source=7 -Dboot.java.home=/NO_BOOTDIR
>>>> -Dimport.jdk=/home/michael/src/jdk7/jdk
>>>> -Dbuild.dir=/home/michael/src/jdk7/build/linux-amd64/langtools/build
>>>> -Ddist.dir=/home/michael/src/jdk7/build/linux-amd64/langtools/dist
>>>> build
>>>> Error: JAVA_HOME is not defined correctly.
>>>>   We cannot execute /NO_BOOTDIR/bin/java
>>>> make[2]: *** [build] Error 1
>>>>
>>>>
>>>> ;; This buffer is for notes you don't want to save, and for Lisp evaluation.
>>>> ;; If you want to create a file, visit that file with C-x C-f,
>>>> ;; then enter the text in that file's own buffer.
>>>>
>>>> $ make sanity
>>>> ( cd  ./jdk/make&&  \
>>>>          make sanity HOTSPOT_IMPORT_CHECK=false
>>>> JDK_TOPDIR=/home/michael/src/jdk7/jdk
>>>> JDK_MAKE_SHARED_DIR=/home/michael/src/jdk7/jdk/make/common/shared
>>>> EXTERNALSANITYCONTROL=true SOURCE_LANGUAGE_VERSION=7
>>>> TARGET_CLASS_VERSION=7 MILESTONE=internal BUILD_NUMBER=b00
>>>> JDK_BUILD_NUMBER=b00
>>>> FULL_VERSION=1.7.0-internal-michael_2011_12_21_16_51-b00
>>>> PREVIOUS_JDK_VERSION=1.6.0 JDK_VERSION=1.7.0 JDK_MKTG_VERSION=7
>>>> JDK_MAJOR_VERSION=1 JDK_MINOR_VERSION=7 JDK_MICRO_VERSION=0
>>>> PREVIOUS_MAJOR_VERSION=1 PREVIOUS_MINOR_VERSION=6
>>>> PREVIOUS_MICRO_VERSION=0 ARCH_DATA_MODEL=64 COOKED_BUILD_NUMBER=0
>>>> ALT_OUTPUTDIR=/home/michael/src/jdk7/build/linux-amd64
>>>> ALT_LANGTOOLS_DIST=/home/michael/src/jdk7/build/linux-amd64/langtools/dist
>>>> ALT_CORBA_DIST=/home/michael/src/jdk7/build/linux-amd64/corba/dist
>>>> ALT_JAXP_DIST=/home/michael/src/jdk7/build/linux-amd64/jaxp/dist
>>>> ALT_JAXWS_DIST=/home/michael/src/jdk7/build/linux-amd64/jaxws/dist
>>>> ALT_HOTSPOT_IMPORT_PATH=/home/michael/src/jdk7/build/linux-amd64/hotspot/import
>>>> BUILD_HOTSPOT=true ; )
>>>> [: 1: Illegal number: /bin/sh:
>>>> [: 1: Illegal number: /bin/sh:
>>>> [: 1: Illegal number: /NO_BOOTDIR/bin/java:
>>>> [: 1: Illegal number: /NO_BOOTDIR/bin/java:
>>>> [: 1: Illegal number: not
>>>> [: 1: Illegal number: not
>>>> [: 1: Illegal number: Error:
>>>> [: 1: Illegal number: Error:
>>>> [: 1: Illegal number: JAVA_HOME
>>>> [: 1: Illegal number: JAVA_HOME
>>>> [: 1: Illegal number: is
>>>> [: 1: Illegal number: is
>>>> make[1]: Entering directory `/home/michael/src/jdk7/jdk/make'
>>>> make[1]: Leaving directory `/home/michael/src/jdk7/jdk/make'
>>>>
>>>> Build Machine Information:
>>>>    build machine = opportunity
>>>>
>>>> Build Directory Structure:
>>>>    CWD = /home/michael/src/jdk7
>>>>    TOPDIR = .
>>>>    LANGTOOLS_TOPDIR = ./langtools
>>>>    JAXP_TOPDIR = ./jaxp
>>>>    JAXWS_TOPDIR = ./jaxws
>>>>    CORBA_TOPDIR = ./corba
>>>>    HOTSPOT_TOPDIR = ./hotspot
>>>>    JDK_TOPDIR = ./jdk
>>>>
>>>> Build Directives:
>>>>    BUILD_LANGTOOLS = true
>>>>    BUILD_JAXP = true
>>>>    BUILD_JAXWS = true
>>>>    BUILD_CORBA = true
>>>>    BUILD_HOTSPOT = true
>>>>    BUILD_JDK    = true
>>>>    DEBUG_CLASSFILES =
>>>>    DEBUG_BINARIES =
>>>>
>>>> Hotspot Settings:
>>>>       HOTSPOT_BUILD_JOBS  =
>>>>       HOTSPOT_OUTPUTDIR   =
>>>> /home/michael/src/jdk7/build/linux-amd64/hotspot/outputdir
>>>>       HOTSPOT_EXPORT_PATH =
>>>> /home/michael/src/jdk7/build/linux-amd64/hotspot/import
>>>>
>>>>
>>>>
>>>>
>>>> Bootstrap Settings:
>>>>   BOOTDIR = /NO_BOOTDIR
>>>>     ALT_BOOTDIR =
>>>>   BOOT_VER = /bin/sh: /NO_BOOTDIR/bin/java: not found [requires at least 1.6]
>>>>   OUTPUTDIR = /home/michael/src/jdk7/build/linux-amd64
>>>>     ALT_OUTPUTDIR = /home/michael/src/jdk7/build/linux-amd64
>>>>   ABS_OUTPUTDIR = /home/michael/src/jdk7/build/linux-amd64
>>>>
>>>> Build Tool Settings:
>>>>   SLASH_JAVA = /NOT-SET
>>>>     ALT_SLASH_JAVA =
>>>>   VARIANT = OPT
>>>>   JDK_DEVTOOLS_DIR = /NOT-SET/devtools
>>>>     ALT_JDK_DEVTOOLS_DIR =
>>>>   ANT_HOME =
>>>>   UNIXCOMMAND_PATH = /bin/
>>>>     ALT_UNIXCOMMAND_PATH =
>>>>   COMPILER_PATH = /usr/bin/
>>>>     ALT_COMPILER_PATH =
>>>>   DEVTOOLS_PATH = /usr/bin/
>>>>     ALT_DEVTOOLS_PATH =
>>>>   UNIXCCS_PATH = /usr/ccs/bin/
>>>>     ALT_UNIXCCS_PATH =
>>>>   USRBIN_PATH = /usr/bin/
>>>>     ALT_USRBIN_PATH =
>>>>   COMPILER_NAME = GCC4
>>>>   COMPILER_VERSION = GCC4
>>>>   CC_VER = 4.6.1 [requires at least 4.3.0]
>>>>   ZIP_VER = 3.0 [requires at least 2.2]
>>>>   UNZIP_VER = 6.00 [requires at least 5.12]
>>>>   ANT_VER = Error: JAVA_HOME is not defined correctly.   We cannot
>>>> execute /NO_BOOTDIR/bin/java [requires at least 1.7.1]
>>>>   TEMPDIR = /home/michael/src/jdk7/build/linux-amd64/tmp
>>>>
>>>> Build Directives:
>>>>   OPENJDK = true
>>>>   USE_HOTSPOT_INTERPRETER_MODE =
>>>>   PEDANTIC =
>>>>   DEV_ONLY =
>>>>   NO_DOCS =
>>>>   NO_IMAGES =
>>>>   TOOLS_ONLY =
>>>>   INSANE =
>>>>   COMPILE_APPROACH = parallel
>>>>   PARALLEL_COMPILE_JOBS = 2
>>>>     ALT_PARALLEL_COMPILE_JOBS =
>>>>   FASTDEBUG =
>>>>   COMPILER_WARNINGS_FATAL = false
>>>>   COMPILER_WARNING_LEVEL =
>>>>   SHOW_ALL_WARNINGS =
>>>>   INCREMENTAL_BUILD = false
>>>>   CC_HIGHEST_OPT =
>>>>   CC_HIGHER_OPT =
>>>>   CC_LOWER_OPT =
>>>>   CXXFLAGS =  -O2 -fPIC -DCC_NOEX -W -Wall  -Wno-unused
>>>> -Wno-parentheses -fno-omit-frame-pointer -D_LITTLE_ENDIAN
>>>>   CFLAGS =  -O2   -fno-strict-aliasing -fPIC -W -Wall  -Wno-unused
>>>> -Wno-parentheses -pipe -fno-omit-frame-pointer -D_LITTLE_ENDIAN
>>>>   BOOT_JAVA_CMD = /NO_BOOTDIR/bin/java -XX:-PrintVMOptions
>>>> -XX:+UnlockDiagnosticVMOptions -XX:-LogVMOutput -Xmx512m -Xms512m
>>>> -XX:PermSize=32m -XX:MaxPermSize=160m
>>>>   BOOT_JAVAC_CMD = /NO_BOOTDIR/bin/javac  -J-XX:ThreadStackSize=1536
>>>> -J-XX:-PrintVMOptions -J-XX:+UnlockDiagnosticVMOptions
>>>> -J-XX:-LogVMOutput -J-Xmx512m -J-Xms512m -J-XX:PermSize=32m
>>>> -J-XX:MaxPermSize=160m -encoding ascii -source 6 -target 6
>>>> -XDignore.symbol.file=true
>>>>   BOOT_JAR_CMD = /NO_BOOTDIR/bin/jar
>>>>   BOOT_JARSIGNER_CMD = /NO_BOOTDIR/bin/jarsigner
>>>>   JAVAC_CMD = /NOT-SET/re/jdk/1.7.0/promoted/latest/binaries/linux-amd64/bin/javac
>>>> -J-XX:ThreadStackSize=1536 -J-XX:-PrintVMOptions
>>>> -J-XX:+UnlockDiagnosticVMOptions -J-XX:-LogVMOutput -J-Xmx512m
>>>> -J-Xms512m -J-XX:PermSize=32m -J-XX:MaxPermSize=160m  -source 7
>>>> -target 7 -encoding ascii
>>>> -Xbootclasspath:/home/michael/src/jdk7/build/linux-amd64/classes
>>>>   JAVAH_CMD = /NOT-SET/re/jdk/1.7.0/promoted/latest/binaries/linux-amd64/bin/javah
>>>> -bootclasspath /home/michael/src/jdk7/build/linux-amd64/classes
>>>>   JAVADOC_CMD =
>>>> /NOT-SET/re/jdk/1.7.0/promoted/latest/binaries/linux-amd64/bin/javadoc
>>>> -J-XX:-PrintVMOptions -J-XX:+UnlockDiagnosticVMOptions
>>>> -J-XX:-LogVMOutput -J-Xmx512m -J-Xms512m -J-XX:PermSize=32m
>>>> -J-XX:MaxPermSize=160m -bootclasspath
>>>> /home/michael/src/jdk7/build/linux-amd64/classes
>>>>
>>>> Build Platform Settings:
>>>>   USER = michael
>>>>   PLATFORM = linux
>>>>   ARCH = amd64
>>>>   LIBARCH = amd64
>>>>   ARCH_FAMILY = amd64
>>>>   ARCH_DATA_MODEL = 64
>>>>   ARCHPROP = amd64
>>>>   ALSA_VERSION = 1.0.24.1
>>>>   OS_VERSION = 3.0.0-14-generic [requires at least 2.6]
>>>>   OS_VARIANT_NAME = Ubuntu
>>>>   OS_VARIANT_VERSION = 11.10
>>>>   MB_OF_MEMORY = 7984
>>>>
>>>> GNU Make Settings:
>>>>   MAKE = make
>>>>   MAKE_VER = 3.81 [requires at least 3.81]
>>>>   MAKECMDGOALS = sanity
>>>>   MAKEFLAGS = w
>>>>   SHELL = /bin/sh
>>>>
>>>> Target Build Versions:
>>>>   JDK_VERSION = 1.7.0
>>>>   MILESTONE = internal
>>>>   RELEASE = 1.7.0-internal
>>>>   FULL_VERSION = 1.7.0-internal-michael_2011_12_21_16_51-b00
>>>>   BUILD_NUMBER = b00
>>>>
>>>> External File/Binary Locations:
>>>>   USRJDKINSTANCES_PATH = /opt/java
>>>>   BUILD_JDK_IMPORT_PATH = /NOT-SET/re/jdk/1.7.0/promoted/latest/binaries
>>>>     ALT_BUILD_JDK_IMPORT_PATH =
>>>>   JDK_IMPORT_PATH = /NOT-SET/re/jdk/1.7.0/promoted/latest/binaries/linux-amd64
>>>>     ALT_JDK_IMPORT_PATH =
>>>>   LANGTOOLS_DIST =
>>>>     ALT_LANGTOOLS_DIST = /home/michael/src/jdk7/build/linux-amd64/langtools/dist
>>>>   CORBA_DIST =
>>>>     ALT_CORBA_DIST = /home/michael/src/jdk7/build/linux-amd64/corba/dist
>>>>   JAXP_DIST =
>>>>     ALT_JAXP_DIST = /home/michael/src/jdk7/build/linux-amd64/jaxp/dist
>>>>   JAXWS_DIST =
>>>>     ALT_JAXWS_DIST = /home/michael/src/jdk7/build/linux-amd64/jaxws/dist
>>>>   HOTSPOT_DOCS_IMPORT_PATH = /NO_DOCS_DIR
>>>>     ALT_HOTSPOT_DOCS_IMPORT_PATH =
>>>>   HOTSPOT_IMPORT_PATH = /home/michael/src/jdk7/build/linux-amd64/hotspot/import
>>>>     ALT_HOTSPOT_IMPORT_PATH =
>>>> /home/michael/src/jdk7/build/linux-amd64/hotspot/import
>>>>   HOTSPOT_SERVER_PATH =
>>>> /home/michael/src/jdk7/build/linux-amd64/hotspot/import/jre/lib/amd64/server
>>>>     ALT_HOTSPOT_SERVER_PATH =
>>>>   CACERTS_FILE = ./../src/share/lib/security/cacerts
>>>>     ALT_CACERTS_FILE =
>>>>   CUPS_HEADERS_PATH = /usr/include
>>>>     ALT_CUPS_HEADERS_PATH =
>>>>
>>>> OpenJDK-specific settings:
>>>>   FREETYPE_HEADERS_PATH = /usr/include
>>>>     ALT_FREETYPE_HEADERS_PATH =
>>>>   FREETYPE_LIB_PATH = /usr/lib
>>>>     ALT_FREETYPE_LIB_PATH =
>>>>
>>>> Previous JDK Settings:
>>>>   PREVIOUS_RELEASE_PATH =
>>>>     ALT_PREVIOUS_RELEASE_PATH =
>>>>   PREVIOUS_JDK_VERSION = 1.6.0
>>>>     ALT_PREVIOUS_JDK_VERSION =
>>>>   PREVIOUS_JDK_FILE =
>>>>     ALT_PREVIOUS_JDK_FILE =
>>>>   PREVIOUS_JRE_FILE =
>>>>     ALT_PREVIOUS_JRE_FILE =
>>>>   PREVIOUS_RELEASE_IMAGE =
>>>>     ALT_PREVIOUS_RELEASE_IMAGE =
>>>>
>>>>
>>>> Sanity check passed.
>>>> michael at opportunity:~/src/jdk7$
>>>
>



More information about the build-dev mailing list