On 2 Jun 2013 13:47, "Xu Zhe" <xzpe...@gmail.com> wrote: > > 于 6/2/13 6:29 AM, Ronald Klop 写道: >> >> On Thu, 30 May 2013 02:53:01 +0200, Xu Zhe <xzpe...@gmail.com> wrote: >> >> >>> 于 5/30/13 1:42 AM, Chris Rees 写道: >>>> >>>> On 29 May 2013 09:28, Peter Xu <xzpe...@gmail.com> wrote: >>>>> >>>>> Hi, all, >>>>> >>>>> I got strange issue when trying to build opendjk7 using ports utility on a >>>>> private-built FreeBSD 8.2 system. Here is the output of make: >>>>> >>>> <snip> >>>> >>>> I'm going to suggest that you upgrade to FreeBSD 8.3-- it's not a big >>>> jump, so it shouldn't break anything. >>>> >>>> Unfortunately ports can't be tested on unsupported versions, and 8.3 >>>> has been out over a year now. >>>> >>>> However, I've added java@ in case they have any suggestions. >>>> >>>> Chris >>> >>> Hi, Chris, >>> >>> Thanks for the mail. >>> >>> The problem is, the target FreeBSD 8.2 system has been heavily hacked (on both kernel and libc, as far as I know), and they have been doing system test for months. If we (or say they) do the swtich, the porting of the kernel part will be huge, and test results in the past months will be wasted. So I suppose that is not the working solution for my case. :( >>> >>> BTW, I would appreciate if anyone can tell me why build java need java support? >> >> >> I don't know the internals of building Java, but with compilers it is generally a chicken-and-egg-problem. How do you compile the compiler? The compiler javac is written in Java, so you need java to build it. >> But you can build a pkg of java on another machine and copy it. >> Or it might work to use a ports tree of FreeBSD 8.2. >> http://svnweb.freebsd.org/ports/tags/RELEASE_8_2_0/ >> >> Didn't try, buy might be worth a try. >> >> Ronald. > > > I have tried to use the old port but still failed after being good for a while. What I got are vast quantities of errors like this: > > ../../../src/share/classes/java/lang/reflect/Field.java:1028: cannot find symbol > private transient Map<Class<? extends Annotation>, Annotation> declaredAnnotations; > ^ > symbol: class Annotation > location: class Field > ../../../src/share/classes/java/lang/reflect/Field.java:1028: cannot find symbol > private transient Map<Class<? extends Annotation>, Annotation> declaredAnnotations; > ^ > symbol: class Annotation > location: class Field > ../../../src/share/classes/java/lang/reflect/Field.java:1030: cannot find symbol > private synchronized Map<Class<? extends Annotation>, Annotation> declaredAnnotations() { > ^ > symbol: class Annotation > location: class Field > ../../../src/share/classes/java/lang/reflect/Field.java:1030: cannot find symbol > private synchronized Map<Class<? extends Annotation>, Annotation> declaredAnnotations() { > ^ > symbol: class Annotation > location: class Field > > I wanted to change another version of JVM to test the build process, but this (/usr/local/diablo-jdk1.6.0/bin/java) seems the only one I can get in the old port tree... I tried to build openjdk6 first (then I may try use this JVM1.6 to build my 1.7 version if possible), but got familiar error during java code compilation, which told me something like 'cannot find class'. > > Why not people just write Java compiler in C... :( > > Or shall I test to build the java-part of openjdk7 on another host (maybe any computer with openjdk1.7 installed) ? Though I still don't know how to do that.
Ports-mgmt/portdowngrade has a -r option, which will recursively allow you to install a port + its dependencies at a lower version. Try that on it perhaps? Chris _______________________________________________ freebsd-ports@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"