Hi!

I've tried to compile vrwave 2.0 (Java VRML viewer with GL native
engine) and had to find out that the shared lib (the engine)
was not compiled correctly. On startup of vrwave (a VRML viewer)
I got the following error message:

/usr/lib/libgejc.so: undefined symbol: XMesaCreateVisual (libgejc.so)
OGLCanvas. error: unable to load 'gejc' shared library.
You'll get no display output. Please check whether
- libgejc.so is in your LD_LIBRARY_PATH (Unix)

Also I tried a testcompile of the library as if it was a program:

gcc -o libgejcon-mesa.so gejcon-mesa.o gejimpl.o ge3d_mesa.o vrwbuild.o asmooth.o 
triangulate.o vrwpick.o -L/usr/X11R6/lib -lGLU -lGL -lXext -L/usr/X11/lib -lXmu -lX11 
-lm
/usr/lib/gcc-lib/i586-mandrake-linux/2.95.3/crt1.o: In function `_start':
/usr/lib/gcc-lib/i586-mandrake-linux/2.95.3/crt1.o(.text+0x36): undefined reference to 
`main'
gejcon-mesa.o: In function `Java_iicm_ge3d_OGLCanvas_setContext':
gejcon-mesa.o(.text+0x614): undefined reference to `XMesaMakeCurrent'
gejcon-mesa.o: In function `Java_iicm_ge3d_OGLCanvas_swapBuffers':
gejcon-mesa.o(.text+0x8ab): undefined reference to `XMesaSwapBuffers'
gejcon-mesa.o: In function `createMesaBackBuffer':
gejcon-mesa.o(.text+0xd40): undefined reference to `XMesaCreateVisual'
gejcon-mesa.o(.text+0xd6e): undefined reference to `XMesaCreateContext'
gejcon-mesa.o(.text+0xda6): undefined reference to `XMesaCreateWindowBuffer'
collect2: ld returned 1 exit status

After changing the libGL.so.1 link and recompiling the lib all was fine:

ln -sf libGL.so.1.2.030300 libGL.so.1 (in /usr/X11R6/lib)

So the wrapper does either not seem to work correctly or the program
as not coded correctly (see gejcon.c in the VRwave/native directory
of the archiv which can be found on http://www.iicm.edu/vrwave).

I've added a spec file for mandrake cooker but this one requires
Java jdk 1.1.x to be installed (can be downloaded from blackdown.org).
The netscape plugin did not compile for me as I don't have the Netscape
SDK (it this available for Linux ?).

Anyway I've added a modified patch, the spec file for vrwave and an png
icon but there was an error message (I had to convert it from gif you 
know the reasons...):

rpm -bi --short-circuit SPECS/vrwave.spec
Unknown icon type: vrwave.png

Any help is appreciated.

Best regards,

Reinhard Katzmann
-- 
E-Mail: [EMAIL PROTECTED]

Current Projects: Linux-Installation Mandrake 7.1 (95% finished)
                  Improvements of Driver for Tevion Tablet
                  Java-DB and -Interface for Pincity (93 % finished)
GnuPG Public Key available on request.
%define name vrwave
%define version 2.0
%define release 1mdk

Name: %{name}
Version: %{version}
Release: %{release}
Summary: VRML 2.0 browser.
Source: %{name}20-src.tar.bz2
Source1: vrwave.sh
Source2: makejar
Patch: %{name}-%{version}.patch
# Unknown Icon Type :-((((((
#Icon: vrwave.png
Group: X11/Applications/Graphics
BuildRoot: /var/tmp/%{name}-%{version}-root
Copyright: GPL
URL: http://www.iicm.edu/vrwave
Requires: Mesa, XFree86 
#Requires: java >= 1.1.7
BuildRequires: dos2unix
#BuildRequires: jdk >= 1.1.7
Obsoletes: VRwave

%description
VRwave is a VRML 2.0 browser being developed at the IICM (Institute
for Information Processing and Computer Supported New Media), Graz
University of Technology, Austria, by the team who brought you the
VRweb VRML 1.0 browser.

%changelog
* Wed Aug 16 2000 Reinhard Katzmann <[EMAIL PROTECTED] 1mdk
- Update to 2.0
- First mandrake release
- Macroifizations
- Added java requirements as comment (no jdk package for mandrake)
- Removed 0.9 extra files, added test directory (which has the samples)
- Added fonts, images, sclass (netscape stubs for appletviewer)

* Thu Sep 10 1998 Kjetil Wiekhorst Jørgensen <[EMAIL PROTECTED]> [0.9-2]

- recompiled with mesa 3.0 beta (prior version had big security problems)
- uses jdk 1.1.6 to compile classes

* Tue May 19 1998 Kjetil Wiekhorst Jørgensen <[EMAIL PROTECTED]>

- Initial release.


%prep
%setup -n vrwave20-src
# Without this there are errors while compiling :-(
cd VRwave/native
( for i in *.c *.h ge3d/*.h ; do dos2unix $i ; done )
cd ../..
%patch -p1

%build
export CPU=LINUX_ELF
export CLASSPATH=$CLASSPATH:/usr/lib/netscape/java/classes/java40.jar
cd VRwave
cp javasrc/iicm/vrml/vrwave/Scene_jdk1_1.jav javasrc/iicm/vrml/vrwave/Scene.java
sh ./makeit
#sh ./makepw
cp $RPM_SOURCE_DIR/makejar .
sh ./makejar
cd native
mkdir -p $CPU
( cd $CPU; ln -s ../makefile.CPU makefile )
make alljni
#Use this line instead if you only wish to build netscape plugin
#make alljri

%install
rm -rf $RPM_BUILD_ROOT
cd VRwave
export CPU=LINUX_ELF
install -d $RPM_BUILD_ROOT%{_datadir}/vrwave
install -m 644 -o root -g root classes/vrwave.jar 
$RPM_BUILD_ROOT%{_datadir}/vrwave/vrwave.jar
install -d $RPM_BUILD_ROOT%{_libdir}
install -m 644 -o root -g root native/$CPU/libgejc.so 
$RPM_BUILD_ROOT%{_libdir}/libgejc.so
install -d $RPM_BUILD_ROOT%{_bindir}
install -m 755 -o root -g root $RPM_SOURCE_DIR/vrwave.sh 
$RPM_BUILD_ROOT%{_bindir}/vrwave
cd test
( rm -f *.bat* */*.bat* ; chmod a+x run eaitest/RUN* )
cd ..
install -m 644 -o root -g root images/logo.gif 
$RPM_BUILD_ROOT%{_datadir}/vrwave/logo.gif
install -m 644 -o root -g root images/logo_ico.gif 
$RPM_BUILD_ROOT%{_datadir}/vrwave/icons.gif
cp -Rd fonts $RPM_BUILD_ROOT%{_datadir}/vrwave
cp -Rd images $RPM_BUILD_ROOT%{_datadir}/vrwave
cp -Rd test $RPM_BUILD_ROOT%{_datadir}/vrwave
cp -Rd sclass $RPM_BUILD_ROOT%{_datadir}/vrwave
ln -sf $RPM_BUILD_ROOT%{_datadir}/vrwave/vrwave.jar 
$RPM_BUILD_ROOT%{_datadir}/vrwave/classes
%clean
rm -rf $RPM_BUILD_ROOT

%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig

%files
%doc VRwave/*.txt VRwave/jdoc
%{_bindir}/vrwave
%{_libdir}/libgejc.so
%{_datadir}/vrwave/vrwave.jar
%{_datadir}/vrwave/classes
%{_datadir}/vrwave/test/*
%{_datadir}/vrwave/fonts
%{_datadir}/vrwave/images
%{_datadir}/vrwave/logo.gif
%{_datadir}/vrwave/icons.gif
%{_datadir}/vrwave/sclass
%docdir /usr/share/vrwave/help

vrwave.png

--- vrwave20-src/VRwave/native/cfg/config.LINUX_ELF~    Fri Jul  7 17:07:20 2000
+++ vrwave20-src/VRwave/native/cfg/config.LINUX_ELF     Wed Aug 16 21:39:56 2000
@@ -25,8 +25,8 @@
 # include ../config.OpenGL
 
 # directory name of netscape's javah (for plugin compilation only)
-NSJAVAHSYS=LinuxELF1.2.13
+NSJAVAHSYS=LinuxELF2.2.16
 
 # path to mesa libraries (libMesaGL*)
-OGLINC=-I/usr3/merkur/mpichler3/mesa/Mesa_LINUX/include
-MESALIBDIR=-L/usr3/merkur/mpichler3/mesa/Mesa_LINUX/lib
+OGLINC=-I/usr/X11R6/include
+MESALIBDIR=-L/usr/X11R6/lib
--- vrwave20-src/VRwave/native/gejcon.c~        Thu Aug 17 13:01:30 2000
+++ vrwave20-src/VRwave/native/gejcon.c Thu Aug 17 13:22:00 2000
@@ -32,6 +32,7 @@
 #ifdef USEMESA
 //#include <mesa/GL/glx.h>
 #include <GL/glx.h>
+#include <GL/xmesa.h>
 
 #else
 #include <GL/glx.h>
@@ -548,6 +549,9 @@
 #  endif
     ximage,  /* 0:pixmap, 1:ximage */
     1, 0, 0,  /* depth buffer, no stencil, no accum (Mesa 2.0) */
+#  if (XMESA_MINOR_VERSION > 2)
+    0, 0, 0, 0, 0, 0,
+#  endif
     0  /* level (Mesa 2.0) */
   );
 

vrwave.sh

PGP signature

Reply via email to