[Fwd: Re: Freetype version check failure - copy of DLL failed]
Tim Bell
Tim.Bell at Sun.COM
Fri Oct 2 18:48:08 UTC 2009
Pete Brunet wrote:
> I ran make -d sanity today and see the following. I don't know why it
> doesn't want to build freetype_versioncheck.exe. It doesn't exist.
>
> There is however a file named freetype_versioncheck.exe.manifest so to
> make sure that isn't a problem I commented out its build from
> freetypecheck/makefile and renamed it to
> freetype_versioncheck-OLD.exe.manifest in the btbins directory, but the
> debug make output looks the same after that test.
sanity will need that .manifest file to run freetype_versioncheck.exe
That was build bugID 6705913 "freetype_versioncheck.exe - Unable To Locate Component"
https://bugs.openjdk.java.net/show_bug.cgi?id=100101
(SNIP!)
> No need to remake target `c:/OpenJDK/jdk7/build/windows-i586/btbins/freetype_versioncheck.exe'.
What is the output when you run that executable in an MS-DOS CMD window?
> Tim, I went back to my original fixes (copy dll to lib and change the
> make to use freetype6.dll) then did the following:
>
> cd /cygdrive/c/OpenJDK/jdk7/jdk/make/tools/freetypecheck
> make clean
> make all
>
> and started getting a trace. I don't know if running from the
> freetypecheck directory is a valid thing to do, but when I do that I
> noticed that mt.exe is not found. In this (possibly invalid) invocation
> of make, $(MT) resolves to
>
> c:/PROGRA~1/MICROS~1.0/Common7/Tools/../../Vc/Bin/mt aka "C:\Program
> Files\Microsoft Visual Studio 9.0\VC\bin\mt"
>
> but on my system mt.exe is at
>
> C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\mt.exe
>
> If I change $(MT) to just mt so it's found via the PATH then the above
> build is OK.
That is what my build is doing. $(CL) and $(MT) are both found on PATH, ahead
of the Cygwin bin directories. But I also set the ALT_ variables in my environment
and build scripts (see below).
$ echo $PATH
/cygdrive/c/JDK16~1.0_0/bin:/cygdrive/c/PROGRA~1/MICROS~1.0/Common7/IDE:/cygdriv
e/c/PROGRA~1/MICROS~1.0/VC/BIN:/cygdrive/c/PROGRA~1/MICROS~1.0/Common7/Tools:/cy
gdrive/c/PROGRA~1/MICROS~2/Windows/v6.1/bin:/cygdrive/c/WINDOWS/MICROS~1.NET/FRA
MEW~1/V20~1.507:/cygdrive/c/PROGRA~1/MICROS~1.0/VC/VCPACK~1:/usr/local/bin:/usr/
bin:/bin:/usr/X11R6/bin:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS:/cygdri
ve/c/WINDOWS/System32/Wbem:/cygdrive/c/Mercurial:/cygdrive/g/jtreg/4.0/win32/bin
> However, even with that fix, when I do make sanity the normal way the
> exe isn't being built. And no matter what I try (echo, $(warning ...) I
> can't get make to trace when I run make sanity the normal way.
I wish I could say incremental builds worked well in OpenJDK7. In some
areas of the code it works, but other areas are problematical.
When I want to be sure, I use a 'big hammer' approach to start building
with a clean slate:
cd <to the top of your forest>
mkdir lose
mv build lose
\rm -rf lose
. $HOME/openjdk.env.bash
../openjdk.build.bash
My OpenJDK build using these scripts has already built as far
as jdk/make/sun/rmi
I put copies of my openjdk.env.bash and openjdk.build.bash files here:
http://cr.openjdk.java.net/~tbell/OpenJDK-build-scripts/
You will need to modify these to suit the setup on your PC, but they
should serve as a guide.
I hope this helps.
Feel free to contact me off the alias with your full build log
if you need to. I will take a look at it.
Tim
More information about the build-dev
mailing list