Thanks everyone for your help. The "host_os" var was not getting set correctly by the configure script, which resulted in the "can_build_shared" flag to be set to "no" instead of "yes". I forced "host_os" to "linux" and the shared libs are getting correctly generated now. Bregitte On Nov 8, 2007 3:05 AM, Vladimir Nikolov <vladimir.nikolov@xxxxxxx> wrote: > Hi Bregitte, > > I don't know I if you have still fixed your problem, but I had the same > situation just some weeks ago, as I cross-compiled the gnu-classpath > 0.96.1 and the jamvm-1.5.0 to work together on an ARM machine. > However, jamvm queries for shared objects (or should I say shared > libraries?) in /usr/local/classpath/lib/classpath, as Rob explained, or > in your classpath-inst-dir. Though, the crosscompiler generated on my > environment static libraries (.a files) and the links to them (.la files). > I fixed the problem as following: > Static libraries in Linux are just normal "ar" archives, containing the > compiled objects, which you can extract via "ar -x". > When you have extracted those objects belonging to the appropiate .a > file you can build simply a shared lib (.so) with them using GCC. > For example for libjavaio in /usr/local/classpath/lib/classpath: > > > ar -x libjavaio.a > > gcc -shared > <http://www.adp-gmbh.ch/cpp/gcc/gcc_options.html#opt_shared> -Wl > <http://www.adp-gmbh.ch/cpp/gcc/gcc_options.html#opt_cap_w_l>,-soname,libjavaio.so > -o <http://www.adp-gmbh.ch/cpp/gcc/gcc_options.html#opt_o> libjavaio.so *.o > > rm *.o > > Of course the GCC should be your cross-compiler! > That functioned for me. > > Cheers, > Vladimir > > > > > Bregitte Pracht wrote: > > I have cross-compiled JamVM1.5.0 and Gnu Classpath 0.96.1 for the HardHat PowerPC > > platform (MonteVista). > > > > I used these configure options for classpath: --enable-jni, > > --disable-gtk-peer, --disable-gconf-peer, > > --disable-plugin, --disable-Werror, --with-javac. The --with-javac > > options is set to point to Sun's > > JDK1.6/2 javac binary. Of course --host and --build are set as > > appropriate for cross-compilation. > > > > For jamvm I used the --host and --build configure options as > > appropriate for cross-compilation. I also > > used the --with-classpath-install-dir option to point to the classpath > > installation. > > > > When I try to test this out with a simple hello-world test program and > > I get the following error: > > > > /*Cannot create system class loader > > Exception occurred while printing exception > > (java/lang/NoClassDefFoundError) > > Original exception was java/lang/UnsatisfiedLinkError*/ > > > > I searched > > thejamvm-general email archives. In there was a posting that is somewhat similar. > > > > The resolution was to enable-jni. I have it enabled. Looking at my > > /usr/local/classpath/lib/classpath directory, I don't have any /*so*/ > > files, but I have /*la */files. > > > > I assume the problem is that /*so*/ files need to be created, but I am > > not sure why they are not > > being built nor what I should do to get them to build. > > > > Does anyone have any idea what I may be doing wrong? > > > > Thanks! > > -b. > > ------------------------------------------------------------------------ > > > > ------------------------------------------------------------------------- > > > This SF.net email is sponsored by: Splunk Inc. > > Still grepping through log files to find problems? Stop. > > Now Search log events and configuration files using AJAX and a browser. > > Download your FREE copy of Splunk now >> http://get.splunk.com/ > > ------------------------------------------------------------------------ > > > > _______________________________________________ > > Jamvm-general mailing list > > Jamvm-general@xxxxxxxxxxxxxxxxxxxxx > > https://lists.sourceforge.net/lists/listinfo/jamvm-general > > > >