This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: compilation problems with ecj.jar


Tom Tromey wrote:
"Marco" == Marco Trudel <mtrudel@gmx.ch> writes:

Marco> Well, I still don't see why the host of ecj is the configured target Marco> instead of the configured host, but I guess I don't need to understand Marco> that.

The intent of the code is that the installed be compiled with the
build-x-host compiler, since ecj1 must run on the host.  That conforms
pretty well to what I see in configure:

GCJ_FOR_ECJX="${with_cross_host}-gcj"

Yes, this is what I would expect. With my host=Linux, target=minGW and build=Linux, it evaluates to "i686-pc-linux-gnu-gcj". But the ecj compilation is still somehow broken, the command is:


i686-pc-linux-gnu-gcj -o ecjx.exe -findirect-dispatch --main=org.eclipse.jdt.internal.compiler.batch.GCCMain /usr/local/src/gcc/libjava/.././libjava/../ecj.jar

Either a wrong gcj is choosen or the output should be named "ecj" instead of "ecj.exe". Furthermore, the compilation fails:

make[3]: Entering directory `/home/Marco/Desktop/compile-lin-win/gcc-build/i686-pc-mingw32/libjava'
i686-pc-linux-gnu-gcj -o ecjx.exe -findirect-dispatch --main=org.eclipse.jdt.internal.compiler.batch.GCCMain /usr/local/src/gcc/libjava/.././libjava/../ecj.jar
/tmp/cctTUn55.o: In function `main':ccEdPOIF.i:(.text+0x30): undefined reference to `JvRunMainName'
/tmp/ccqt0wW6.o: In function `void org::eclipse::jdt::internal::compiler::classfmt::ClassFormatException::printStackTrace(java::io::PrintStream*)':ecj.jar:(.text+0x155dfc): undefined reference to `_Jv_MonitorExit'
:ecj.jar:(.text+0x155e4c): undefined reference to `_Jv_MonitorExit'
/tmp/ccqt0wW6.o: In function `void org::eclipse::jdt::internal::compiler::classfmt::ClassFormatException::printStackTrace(java::io::PrintWriter*)':ecj.jar:(.text+0x1561ec): undefined reference to `_Jv_MonitorExit'
:ecj.jar:(.text+0x15623c): undefined reference to `_Jv_MonitorExit'
/tmp/ccqt0wW6.o: In function `java::lang::Object* org::eclipse::jdt::internal::compiler::util::Messages$MessagesProperties::put(java::lang::Object*, java::lang::Object*)':ecj.jar:(.text+0x6643cd): undefined reference to `_Jv_MonitorExit'
/tmp/ccqt0wW6.o:ecj.jar:(.text+0x6643ec): more undefined references to `_Jv_MonitorExit' follow
/tmp/ccqt0wW6.o: In function `global constructors keyed to 0__ZN3org7eclipse3jdt4core8compiler13CharOperation18__U3c_clinit__U3e_EJvv':ecj.jar:(.text+0x803e80): undefined reference to `_Jv_RegisterResource'
:ecj.jar:(.text+0x803e8c): undefined reference to `_Jv_RegisterResource'
:ecj.jar:(.text+0x803e98): undefined reference to `_Jv_RegisterResource'
:ecj.jar:(.text+0x803ea4): undefined reference to `_Jv_RegisterResource'
:ecj.jar:(.text+0x803eb0): undefined reference to `_Jv_RegisterResource'
/tmp/ccqt0wW6.o:ecj.jar:(.text+0x803ebc): more undefined references to `_Jv_RegisterResource' follow
collect2: ld returned 1 exit status
make[3]: *** [ecjx.exe] Error 1
make[3]: Leaving directory `/home/Marco/Desktop/compile-lin-win/gcc-build/i686-pc-mingw32/libjava'



thanks Marco

What value do you get for this?

Tom



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]