Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 94406 - swt doesn't build with ibm-jdk due to missing jawt library
Summary: swt doesn't build with ibm-jdk due to missing jawt library
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Java team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-05-29 12:01 UTC by Florian Loitsch
Modified: 2005-07-05 20:07 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Florian Loitsch 2005-05-29 12:01:12 UTC
If the system-jdk is set to ibm (at least for version 1.4.2), the lib jawt  
isn't found, and the compilation aborts (see error below). After switching to 
the SUN-jdk, the emerge completes succesfully. 
 
===  
 * Building AWT library  
cc -O -Wall -DSWT_VERSION=3135  -DLINUX -DGTK -I/opt/ibm-jdk-bin-1.4.2/include  
-I/opt/ibm-jdk-bin-1.4.2/include/linux -fpic    -c -o swt_awt.o swt_awt.c  
ld -L/opt/ibm-jdk-bin-1.4.2/jre/lib/i386 -ljawt -shared -s -o  
libswt-awt-gtk-3135.so swt_awt.o  
ld: cannot find -ljawt  
make: *** [libswt-awt-gtk-3135.so] Error 1  
  
!!! ERROR: dev-java/swt-3.1_pre7 failed.  
!!! Function src_compile, Line 90, Exitcode 2  
!!! Failed to build AWT support  
!!! If you need support, post the topmost build error, NOT this status  
message.  
 

Reproducible: Always
Steps to Reproduce:
1.
2.
3.




$ emerge --info 
Portage 2.0.51.22-r1 (default-linux/x86/2005.0, gcc-3.4.3-20050110, 
glibc-2.3.5-r0, 2.6.11-gentoo-r3-mh_bluez i686) 
================================================================= 
System uname: 2.6.11-gentoo-r3-mh_bluez i686 AMD Athlon(TM) XP 2200+ 
Gentoo Base System version 1.6.12 
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) 
[disabled] 
ccache version 2.4 [enabled] 
dev-lang/python:     2.2.3-r5, 2.3.5 
sys-apps/sandbox:    1.2.8 
sys-devel/autoconf:  2.13, 2.59-r6 
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5 
sys-devel/binutils:  2.16-r1 
sys-devel/libtool:   1.5.18 
virtual/os-headers:  2.6.11 
ACCEPT_KEYWORDS="x86 ~x86" 
AUTOCLEAN="yes" 
CBUILD="i686-pc-linux-gnu" 
CFLAGS="-O3 -pipe -fomit-frame-pointer -march=athlon-xp -mtune=athlon-xp" 
CHOST="i686-pc-linux-gnu" 
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /var/bind /var/qmail/control" 
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d" 
CXXFLAGS="-O3 -pipe -fomit-frame-pointer -march=athlon-xp -mtune=athlon-xp" 
DISTDIR="/usr/portage/distfiles" 
FEATURES="autoconfig ccache distlocks sandbox sfperms strict" 
GENTOO_MIRRORS="http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/" 
MAKEOPTS="-j2" 
PKGDIR="/usr/portage/packages" 
PORTAGE_TMPDIR="/var/tmp" 
PORTDIR="/usr/portage" 
PORTDIR_OVERLAY="/usr/local/portage" 
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" 
USE="x86 3dnow X aalib alsa apm arts audiofile avi berkdb bitmap-fonts 
cdparanoia cdr crypt cups curl dga directfb divx4linux dvd dvdr dvdread emboss 
encode esd fam flac foomaticdb fortran gcj gd gdbm ggi gif gpm gstreamer gtk2 
guile ieee1394 imagemagick imap imlib innodb ipv6 jpeg jpeg2k junit kde 
kdeenablefinal libg++ libwww mad matroska mikmod mmx motif mozilla mp3 mpeg 
nas ncurses nls nvidia ogg oggvorbis opengl oss pam pdflib perl png python 
quicktime readline real rtc samba sdl slang spell sse ssl subversion svga 
tcltk tcpd tetex theora tiff truetype truetype-fonts type1-fonts vorbis 
win32codecs xine xinerama xml xml2 xmms xv xvid zlib userland_GNU kernel_linux 
elibc_glibc" 
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Comment 1 Mikko Tiihonen 2005-06-29 13:21:12 UTC
The IBM jdk does include libjawt.so. It is just in different location.

For IBM jdk the libjawt.so is always in JDK/jre/bin
For SUN jdk the libjawt.so is in JDK/jre/lib/{i386,amd64,ppc?}

Another thing I noticed when creating an ebuild for eclipse 3.1 was that the IBM
jdk for amd64 has broken jni.h header and the build wont work against it without
some patching.

The workaround is to add -D_JNI_IMPORT_OR_EXPORT_ to CFLAGS when compiling swt_awt.c
Comment 2 Saleem Abdulrasool (RETIRED) gentoo-dev 2005-07-05 20:07:17 UTC
This has been resolved in the 3.1 ebuild, please try that.  Mikko, could you
please open a new bug for that AMD64 issue? (Assign to java@gentoo.org and CC
compnerd@gentoo.org please).