harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ivan Volosyuk" <ivan.volos...@gmail.com>
Subject Re: DRLVM contribution - try this out!
Date Fri, 05 May 2006 12:20:52 GMT
I have made work release version of DRLVM build with GCC-4.1.0.
A small additional change in Class_File_Loader.cpp needed.
I can send a patch when we make a decision about patch policy.
--
Ivan

On 5/5/06, Ivan Volosyuk <ivan.volosyuk@gmail.com> wrote:
>
> Chris, try patch from Harmony-443 for gcc-3.4.6 it should also work for
> gcc-3.4.5. With the patch I was able to build VM and started eclipse.
>
> As for gcc-4.1.0, I have prepared patch which fixes all the compilation
> problem, code still builds and works if compiled by gcc-3.4.6 and now
> compiles on gcc-4.1.0, but when compiling with gcc-4.1.0 it fails to run
> eclipse with message:
>     java/lang/ClassFormatError : java/lang/Class: could not parse
> exceptions for method
> forName(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
>
> --
> Ivan
> Intel Middleware Products Division
>
>
> On 5/5/06, Elford, Chris L <chris.l.elford@intel.com > wrote:
> >
> > Hi Vladimir,
> >
> >   In the process of getting compiler 3.3.4 to work, I uninstalled the
> > gcc that came with Fedora.  It is possible that g++ wasn't installed
> > completely by the Fedora installer and I hadn't installed updates on
> > that system that might have fixed it.   Since I've gotten it working
> > with 3.3.4, I hesitate to go change my configuration now to check.  I
> > currently have my system capable of switching between gcc 3.3.4, 3.4.5,
> > and 4.0.3 via setting of PATH and use of ldconfig after
> > creating/tweaking /etc/ld.so.conf.d/aiee_compiler.conf.
> >
> >   With gcc 3.4.5, I get numerous errors in vm/jitrino/src/shared/Stl.h
> > regarding the need to define begin() and end():  "there are no arguments
> > to 'end' that depend on a template parameter, so a declaration of 'end'
> > must be available.
> >
> >   With gcc 4.0.3, I get the same template errors that I mentioned
> > yesterday.  These look like:
> >        [cc]
> > /usr/local/gcc-4.0.3/lib/gcc/i686-pc-linux-gnu/4.0.3/../../../../inc
> > lude/c++/4.0.3/bits/stl_tree.h:389: error: no matching function for call
> >
> > to 'Jit
> > rino::StlMMAllocator<Jitrino::VarOpnd*>::destroy(std::pair<Jitrino::VarO
> > pnd* con
> > st, Jitrino::VarOpnd*>*)'
> >        [cc] /usr/local/src/Harmony/vm/jitrino/src/shared/Stl.h:119:
> > note: candid
> > ates are: void Jitrino::StlMMAllocator<T>::destroy(T*) [with T =
> > Jitrino::VarOpn
> > d*]
> >
> > My box does currently have include/ext directories for the three
> > compilers in /usr/local/gcc-3.3.4/include/c++/3.3.4/ext,
> > /usr/local/gcc-3.4.5/include/c++/3.4.5/ext,
> > /usr/local/gcc-4.0.3/c++/4.0.3/ext.
> >
> > Thanks,
> >
> > Chris Elford
> > Intel Middleware Products Division
> >
> > -----Original Message-----
> > From: Vladimir Gorr [mailto: vvgorr@gmail.com]
> > Sent: Thursday, May 04, 2006 2:24 AM
> > To: harmony-dev@incubator.apache.org
> > Cc: Andrey Chernyshev
> > Subject: Re: DRLVM contribution - try this out!
> >
> > Chris,
> >
> >
> >
> > most likely I've understood a root cause of your issue. I paid attention
> >
> > the /usr/include/ext directory is absent on your machine. It means (or
> > can
> > mean)
> > the g++ compiler has been partially installed for your case. Please, try
> >
> > to
> > eliminate it and to re-build again.
> >
> > Thanks,
> > Vladimir.
> >
> >
> > On 5/4/06, Elford, Chris L <chris.l.elford@intel.com> wrote:
> > >
> > > Hi all,
> > >
> > > Since I shared initial experiences with this package, I thought I
> > > should do the same on Linux.  I have not experienced as much luck
> > there
> > > yet.
> > >
> > > A few notes:
> > >
> > > 1) If you are behind a proxy, make sure to follow the instructions
> > > regarding setting up the svn proxy [~/.subversion/servers].  The proxy
> > > parameters to build.sh are not passed on to svn.
> > >
> > > 2) Don't try to use gcj as the JAVA_HOME for initial compilation.  I
> > > tried this first but it looks for a tools.jar that gcj doesn't have.
> > >
> > > 3) I did not experience much success on Fedora Core 5.  I believe it
> > is
> > > a compiler issue w/ C++ compatibility [FC5 ships with gcc 4.1.0-3].
> > > The errors that I get on Fedora core 5 are:
> > >
> > >       [cc]
> > >
> > /usr/local/src/Harmony/build/lnx_ia32_gcc_release/semis/extra/log4cxx/sr
> > > c/include/log4cxx/xml/domconfigurator.h:243: error: extra
> > qualification
> > > 'log4cxx::xml::DOMConfigurator::' on member 'subst'
> > >       [cc]
> > >
> > /usr/local/src/Harmony/build/lnx_ia32_gcc_release/semis/extra/log4cxx/sr
> > > c/include/log4cxx/helpers/unicodehelper.h:98: error: extra
> > qualification
> > > 'log4cxx::helpers::UnicodeHelper::' on member 'lengthUTF8'
> > >       [cc]
> > >
> > /usr/local/src/Harmony/build/lnx_ia32_gcc_release/semis/extra/log4cxx/sr
> > > c/include/log4cxx/helpers/unicodehelper.h:98: error: extra
> > qualification
> > > 'log4cxx::helpers::UnicodeHelper::' on member 'lengthUTF8'
> > >       [cc]
> > >
> > /usr/local/src/Harmony/build/lnx_ia32_gcc_release/semis/extra/log4cxx/sr
> > > c/include/log4cxx/xml/domconfigurator.h:243: error: extra
> > qualification
> > > 'log4cxx::xml::DOMConfigurator::' on member 'subst'
> > >       [cc]
> > >
> > /usr/local/src/Harmony/build/lnx_ia32_gcc_release/semis/extra/log4cxx/sr
> > > c/include/log4cxx/helpers/unicodehelper.h:98: error: extra
> > qualification
> > > 'log4cxx::helpers::UnicodeHelper::' on member 'lengthUTF8'
> > >
> > > 4) I switched back to a Fedora Core 4 system in the hopes that this
> > > would resolve the compiler issue.  Fedora Core 4 comes with gcc
> > 4.0.0-8.
> > > That doesn't see the errors above but has numerous warnings then
> > errors
> > > out with some C++ template prototype mismatches.  I can send a log
> > with
> > > the warnings/errors if desired.
> > >
> > > The readme indicates that gcc is supported [CXX=gcc].
> > >
> > > Is there a specific version of gcc required to get this to compile on
> > > Fedora Core 4 or Fedora Core 5?
> > >
> > > Thanks!
> > >
> > > Chris Elford
> > > Intel Middleware Products Division
> > >
> > > -----Original Message-----
> > > From: Andrey Chernyshev [mailto:a.y.chernyshev@gmail.com]
> > > Sent: Wednesday, May 03, 2006 7:16 AM
> > > To: harmony-dev@incubator.apache.org
> > > Subject: DRLVM contribution - try this out!
> > >
> > > Dear All,
> > >
> > > I'm happy to announce the contribution of the DRL Virtual Machine on
> > > behalf of
> > > Intel.
> > > I have described in the bottom of this message how you can try it for
> > > yourself.
> > >
> > > The code is a result of efforts of Intel Middleware Products Division
> > > team. The
> > > archive with the contribution is uploaded to the following location:
> > >
> > > http://issues.apache.org/jira/browse/HARMONY-438
> > >
> > > The issue contains two zip archives:
> > >
> > >    DRLVM_src_20060502_1806_Harmony.zip
> > >        - The DRLVM source code contribution, containing the following
> > > components:
> > > VM (or VM core)
> > > GC
> > > JIT
> > > Bytecode verifier
> > > Kernel classes
> > > OS layer
> > >
> > >    DRLVM_src_20060502_1806_Patches_for_Harmony.zip
> > >        - A few patches that should be applied to Harmony class
> > > libraries
> > >     in order to integrate them with DRLVM.
> > >
> > > We checked that the JRE combined from the DRLVM and the Harmony class
> > > libraries
> > > is capable of running Eclipse and Ant. It was tested with Harmony
> > > classes taken
> > > at 03/13 (plus some contributions existed to that date, such as
> > > HARMONY-39 and
> > > HARMONY-88) on Windows and Linux IA32.
> > >
> > > The building system included with the DRLVM is entirely written on Ant
> >
> > > and is
> > > capable of producing a workable JRE combined from DRLVM and Harmony
> > > class libraries (we have intentionally included the compilation of
> > class
> > > libraries code into the DRLVM building system to give an example how
> > the
> > > native
> > > code for the complex multi-component project can be built with Ant).
> > > Both VM and
> > > Class Libraries can be built with MSVC or Intel C compiler on Windows
> > > and gcc or
> > > Intel C compiler on Linux IA32. Eclipse 3.1.1 compiler is used for
> > > compiling the
> > > Java code.
> > >
> > > DRLVM communicates with the Harmony class libraries through the set of
> > > kernel
> > > classes and VMI interface, as described in the Harmony Class Library
> > > Porting
> > > Documentation. We had to add the java.lang.SringBuffer into the kernel
> > > classes
> > > set for now since it is tighten to the java.lang.String in our
> > > implementation.
> > >
> > > The DRLVM is not yet a complete full-functional product, there is a
> > > plenty of
> > > things to do such as 1.5 support or missing some of JVMTI/JNI
> > > capabilities.
> > > Please refer to the README.txt and Developers Guide (located in the
> > > 'doc'
> > > directory) provided with the contribution. However, we hope that the
> > > existing VM
> > > implementation, in conjunction with the Harmony class libraries and
> > > Eclipse, at
> > > least should be able to provide the self-hosting environment where
> > > developers
> > > can edit, compile and run Java code using Eclipse, execute Ant (you
> > can
> > > try
> > > to rebuild the DRLVM and Harmony class libraries by executing it's Ant
> > > building
> > > system on top of the previously built DRLVM image).
> > >
> > > IMPORTANT NOTE: the building system, by default, downloads all the
> > > necessary
> > > software and libraries such as Eclipse, APR, LogCXX or zlib directly
> > > from the
> > > Internet, BY RUNNING THE DRLVM BUILD YOU ARE ACCEPTING THE LICENSE
> > TERMS
> > > for the
> > > software and libraries used for the DRLVM compilation and linking.
> > > Please refer
> > > to the README.txt provided with the contribution for more detailed
> > > information
> > > how to build DRLVM and which software/libraries are used for that.
> > >
> > >
> > > HOW TO TRY IT:
> > >
> > > To build the DRLVM, just extract the both zip archives into the same
> > > directory,
> > > set ANT_HOME and JAVA_HOME, run the "build update" and then "build".
> > See
> > > the
> > > README.txt for more details, including the software required (you'll
> > > need some
> > > JRE, C/C++ compiler, Ant and Svn tool to checkout classlibs).
> > >
> > > Note that the DRLVM may not work with the most recent version of
> > Harmony
> > > class
> > > libraries since the latter is constantly changing (the last version of
> > > classes
> > > we were adopting the DRLVM for was taken at 03/13). Some work will
> > still
> > > be
> > > needed to integrate it with the most recent version of the class
> > > libraries.
> > >
> > > You are welcome to try it and share your opinion!
> > >
> > > Thank you,
> > > Andrey Chernyshev
> > > Intel Middleware Products Division
> > >
> > > ---------------------------------------------------------------------
> > > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> > >
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message