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.oh...@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@opportunity:~/src/jdk7$


Reply via email to