Freetype version check failure - copy of DLL failed
Pete Brunet
pete at a11ysoft.com
Fri Oct 2 00:21:03 UTC 2009
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.
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.
Pete
---
Tim Bell wrote:
> Pete Brunet wrote:
>
>> Thanks Tim, It must be something else. Here are my two environment
>> variables:
>>
>> ALT_FREETYPE_HEADERS_PATH=C:/Progra~1/GnuWin32/include
>> ALT_FREETYPE_LIB_PATH=C:/Progra~1/GnuWin32/lib
>>
>
> Good - that looks OK.
>
>
>>>> freetype was installed via the binary installer at
>>>> http://gnuwin32.sourceforge.net/packages/freetype.htm.
>>>>
>
> After installing bits from there, I needed to copy bin/freetype6.dll
> to lib/freetype6.dll
>
>
>> At a minimum I have to edit
>> C:\OpenJDK\jdk7\jdk\make\tools\freetypecheck\Makefile as follows:
>> # change freetype.dll to freetype6.dll
>> FREETYPE_DLL = $(FREETYPE_LIB_PATH)/freetype6.dll
>> because there is no freetype.dll in C:\Program Files\GnuWin32, just
>> freetype6.dll.
>>
>
> And then edit the makefile to reach for freetype6.dll, as you
> did. Here are my diffs:
>
> % pwd
> /cygdrive/g/OpenJDK/jdk/make/tools/freetypecheck
>
> $ diff -u Makefile.00 Makefile
> --- Makefile.00 2009-08-19 18:39:51.531250000 -0700
> +++ Makefile 2009-09-30 13:49:28.794625000 -0700
> @@ -36,7 +36,7 @@
> # Start with CFLAGS (which gets us the required -xarch setting on solaris)
> ifeq ($(PLATFORM), windows)
> FT_OPTIONS = /nologo $(CC_OBJECT_OUTPUT_FLAG)$(TEMPDIR)
> - FREETYPE_DLL = $(FREETYPE_LIB_PATH)/freetype.dll
> + FREETYPE_DLL = $(FREETYPE_LIB_PATH)/freetype6.dll
> FT_LD_OPTIONS = $(FREETYPE_LIB_PATH)/freetype.lib
> else
> FT_OPTIONS = $(CFLAGS)
>
> Unfortunately, the freetype_versioncheck.exe that is created after
> doing that fails to initialize:
>
> When run in a Cygwin window:
> $ g:/OpenJDK/build/windows-i586/btbins/freetype_versioncheck.exe
> $ echo $?
> 34
>
> When run in a DOS cmd window, I get an "Application Error" pop-up
> that reads "The application failed to initialize properly (0xc0000022).
> Click on OK to terminate the application" [OK]
>
> If I look at freetype_versioncheck.exe using the dependancywalker
> tool [1], it shows an unresolved reference to ZLIB1.DLL
>
>
> When I switch my OpenJDK build environment back to use my existing
> copy of freetype 2.3.4 [2], the versioncheck program builds, works
> OK (no mention of ZLIB1.DLL), and prints:
>
> $ g:/OpenJDK/build/windows-i586/btbins/freetype_versioncheck.exe
> Required version of freetype: 2.3.0
> Detected freetype headers: 2.3.4
> Detected freetype library: 2.3.4
> $ echo $?
> 0
>
>
>
>> Here is my "make sanity" output:
>>
>> ERROR: FreeType version 2.3.0 or higher is required.
>> make[2]: Entering directory
>> `/cygdrive/c/OpenJDK/jdk7/jdk/make/tools/freetypecheck'
>> c:/OpenJDK/jdk7/build/windows-i586/btbins/freetype_versioncheck.exe
>> make[2]: Leaving directory
>> `/cygdrive/c/OpenJDK/jdk7/jdk/make/tools/freetypecheck'
>> Failed to build freetypecheck.
>>
>> BTW, How do I put prints in the make file to see the values of the
>> variables?
>>
>
> You could add "echo" lines to the commands run by a make rule.
> Also, make commands are prefixed with '@' to make them silent.
> Remove the '@' to see more output.
>
> HTH-
> Tim
>
> [1] http://www.dependencywalker.com/
>
> [2] See step 8:
> http://blogs.sun.com/TimBell/entry/building_openjdk7_on_32_bit
>
> The files I modified are available here:
> http://cr.openjdk.java.net/~tbell/freetype/
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/build-dev/attachments/20091001/2b634c3f/attachment.htm>
More information about the build-dev
mailing list