Bug 75806 - eclipse-sdk-3.1_pre4, pre5, fail to build on amd64
|
Bug#:
75806
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: AMD64
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: dev-tools@gentoo.org
|
Reported By: gentoo@streamonix.com
|
|
Component: Development
|
|
|
URL:
|
|
Summary: eclipse-sdk-3.1_pre4, pre5, fail to build on amd64
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2004-12-27 08:42 0000
|
The eclipse-sdk-3.1_pre4.ebuild fails on amd64 systems (64-bit mode). This bug
was also present in eclipse-sdk-3.1_pre3.
Also see:
http://forums.gentoo.org/viewtopic.php?t=248171&highlight=eclipsesdk
Reproducible: Always
Steps to Reproduce:
1. echo "dev-utils/eclipse-sdk ~amd64" >> /etc/portage/package.keywords
2. emerge eclipse-sdk
3.
Actual Results:
* Building gtk+ SWT
Building Linux launcher. Defaults: -os linux -arch amd64 -ws gtk
rm -f eclipse-gtk eclipse.o eclipseUtil.o eclipseShm.o eclipseConfig.o
eclipseGtk.o
gcc -O -s -fpic -DMOZILLA_FIX -DDEFAULT_OS="\"linux\""
-DDEFAULT_OS_ARCH="\"amd64\"" -DDEFAULT_WS="\"gtk\"" -I. -I.. `pkg-config
--cflags gtk+-2.0` -c ../eclipse.c -o eclipse.o
gcc -O -s -fpic -DMOZILLA_FIX -DDEFAULT_OS="\"linux\""
-DDEFAULT_OS_ARCH="\"amd64\"" -DDEFAULT_WS="\"gtk\"" -I. -I.. `pkg-config
--cflags gtk+-2.0` -c ../eclipseUtil.c -o eclipseUtil.o
gcc -O -s -fpic -DMOZILLA_FIX -DDEFAULT_OS="\"linux\""
-DDEFAULT_OS_ARCH="\"amd64\"" -DDEFAULT_WS="\"gtk\"" -I. -I.. `pkg-config
--cflags gtk+-2.0` -c ../eclipseShm.c -o eclipseShm.o
gcc -O -s -fpic -DMOZILLA_FIX -DDEFAULT_OS="\"linux\""
-DDEFAULT_OS_ARCH="\"amd64\"" -DDEFAULT_WS="\"gtk\"" -I. -I.. `pkg-config
--cflags gtk+-2.0` -c ../eclipseConfig.c -o eclipseConfig.o
gcc -O -s -fpic -DMOZILLA_FIX -DDEFAULT_OS="\"linux\""
-DDEFAULT_OS_ARCH="\"amd64\"" -DDEFAULT_WS="\"gtk\"" -I. -I.. `pkg-config
--cflags gtk+-2.0` -c -o eclipseGtk.o eclipseGtk.c
gcc -o eclipse-gtk eclipse.o eclipseUtil.o eclipseShm.o eclipseConfig.o
eclipseGtk.o `pkg-config --libs-only-L gtk+-2.0` -lgtk-x11-2.0 -lgdk_pixbuf-2.0
-lgobject-2.0 -lgdk-x11-2.0
/usr/lib/portage/bin/ebuild.sh: line 399: cd:
/var/tmp/portage/eclipse-sdk-3.1_pre4/work/eclipse-sdk-3.1_pre4/plugins/org.eclipse.swt.gtk64/src/Eclipse
SWT PI/gtk/library: No such file or directory
./build64.sh: ./build64.sh: No such file or directory
!!! ERROR: dev-util/eclipse-sdk-3.1_pre4 failed.
!!! Function build-gtk-native, Line 406, Exitcode 127
!!! Failed to build platform-independent SWT support
!!! If you need support, post the topmost build error, NOT this status message.
Expected Results:
error-free emerge
Portage 2.0.51-r3 (default-linux/amd64/2004.3, gcc-3.4.3,
glibc-2.3.4.20040808-r1, 2.6.10-gentoo-r1 x86_64)
=================================================================
System uname: 2.6.10-gentoo-r1 x86_64 Mobile AMD Athlon 64 Processor 2800+
Gentoo Base System version 1.4.16
Autoconf: sys-devel/autoconf-2.59-r5
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.15.90.0.1.1-r3
Headers: sys-kernel/linux26-headers-2.6.8.1-r1
Libtools: sys-devel/libtool-1.5.2-r7
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CFLAGS="-march=k8 -O3 -pipe -ftracer"
CHOST="x86_64-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3/share/config /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=k8 -O3 -pipe -ftracer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks fixpackages sandbox strict
userpriv"
GENTOO_MIRRORS="http://gentoo.osuosl.org
http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 X X509 aac aalib acl acpi adns aliaschain alsa antlr audiofile bcel
berkdb bindist bitmap-fonts bonobo bsh canna caps cddb cdparanoia cdr chasen
cjk
cnamefix crypt cups dga djbfft dnd dv dvb dvd dvdr dvdread edl encode erandom
expat f77 faac faad fam fbcon flac flash fltk foomaticdb fortran freetype
freewnn fs fwdzone gdbm ggi gif gimpprint gnome gnomedb gpm gstreamer gtk gtk2
gtkhtml hbci idea imagemagick imap imlib imlib2 ipv6 jack jack-tmpfs java
javamail javascript jbig jce jdepend jikes jp2 jpeg jsch junit kakasi lcd lcms
ldap libgda lirc log4j ltsp lzw lzw-tiff mad md5sum mikmod mmap motif mpeg
multilib multipleip nas ncurses nls noantlr nocd nopri nptl oggvorbis openal
opengl openssh optional-tasks oro pam perl pg-intdatetime plotutils png
portaudio postgres ppds python qt readline regexp rhino rtc sdl semanticfix
slang slp sndfile spell sqlite ssl tcltk tcpd theora tiff transcode truetype
type1 unicode usb userlocales v4l2 wmf wxwindows xalan xerces xface xml xml2
xmms xpm xprint xrandr xv xvid zlib"
*** Bug 76529 has been marked as a duplicate of this bug. ***
same with pre5.
Someone compiled eclipse-3.1 successfully on amd64 ?
An amd64 user claimed removing the 64 in build64.sh solved the issue, but I
have my doubts. I have no amd64 to test it on, and I don't think the dev-tools
herd as a whole has either.
I have removed the amd64 keyword on this package for now.
If you amd64 guys want to have a bash at getting this built on amd64 again,
knock yourselves out.
At least for eclipse 3.0.1->3.0.2 the build64.sh was changed to build.sh for
amd64 making it the same for all architectures.
While creating the ebuild for 3.0.2 I had to heavily modify all other parts of
the patching of build scripts to get it to work so that might not be enough.
I'll try to see if I can get the 3.1M5 to build on amd64 too.
Created an attachment (id=55436) [details]
My current try at eclipse 3.1 M6 ebuild
Ebuild that compiles on amd64 + java5.
Unfortunately I still cannot get it to run as it complains about a missing
memmove in native library.
Mikko, can you update your patches to be against the current M6 that I
committed two days ago? I'm sorry for not having an amd64 to do this myself.
ok, i'm going to take care of this. currently compiling gcc4 as it's a
dependency for 3.1_pre6 with gcj enabled :-)
doesnt work on amd64 with the blackdown-jdk-1.4.2.01 out of the box:
* Building AWT support
cc -O -Wall -DSWT_VERSION=3128 -DLINUX -DGTK -I/opt/blackdown-jdk-1.4.2.01/include -fpic -DSWT_PTR_SIZE_64 -I/opt/blackdown-jdk-1.4.2.01/include -I/opt/blackdown-jdk-1.4.2.01/include/linux -c -o swt_awt.o swt_awt.c
ld -L/opt/blackdown-jdk-1.4.2.01/jre/lib/x86_64 -ljawt -shared -o libswt-awt-gtk-3128.so swt_awt.o
ld: cannot find -ljawt
make: *** [libswt-awt-gtk-3128.so] Error 1
!!! ERROR: dev-util/eclipse-sdk-3.1_pre6 failed.
!!! Function build-native, Line 309, Exitcode 2
!!! Failed to build AWT support
!!! If you need support, post the topmost build error, NOT this status message.
i've already located the problem, /opt/blackdown-jdk-1.4.2.01/jre/lib/x86_64 is added to the classpath where it should be /opt/blackdown-jdk-1.4.2.01/jre/lib/amd64. will try to make build possible. maybe you want to contact me on irc? would be nice, just join #gentoo-java on irc.freenode.net . however, will investigate more time into this tomorrow.
Created an attachment (id=57699) [details]
Working ebuild for x86_64 with Java 1.5
I used this ebuild to compile eclipse-sdk-3.1_pre6 on an x86 machine with Java
1.5 and it worked perfectly. I also used it to compile the same package on an
amd64 machine with Java 1.5 and it compiled flawlessly. However, when
attempting to run it as a regular user, I received the following error (copied
from the log):
!SESSION 2005-04-30 17:36:56.613
-----------------------------------------------eclipse.buildId=unknown
java.version=1.5.0_02
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Command-line arguments: -os linux -ws gtk -arch x86_64
!ENTRY org.eclipse.osgi 2005-04-30 17:36:56.637
!MESSAGE Application error
!STACK 1
java.lang.RuntimeException: No application id has been found.
at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:206)
When running as root, I received a different error, as follows, but not the
above user error:
!SESSION 2005-04-30 23:07:58.43
------------------------------------------------eclipse.buildId=Gentoo Linux
eclipse-sdk-3.1_pre6
java.version=1.5.0_02
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Command-line arguments: -os linux -ws gtk -arch x86_64
!ENTRY org.eclipse.osgi 2005-04-30 23:07:58.44
!MESSAGE Application error
!STACK 1
java.lang.UnsatisfiedLinkError: no swt-pi-gtk-3128 in java.library.path
In addition, I edited the ebuild to work with both mozilla and mozilla-firefox,
finally.
Having the same problem as Steve... Tracked this down a bit though.
Version 3.0.2 has the following directory installed:
/usr/lib/eclipse-3/plugins/org.eclipse.swt.gtk64_3.0.2/os/linux/amd64
which contains the libs:
libswt-atk-gtk-3064.so
libswt-gtk-3064.so
libswt-gnome-gtk-3064.so
libswt-pi-gtk-3064.so
Version 3.1_pre6 does not have this directory in the install, but does have:
/usr/lib/eclipse-3.1/plugins/org.eclipse.swt.gtk64_3.1.0.jar
which does not contain the shared libs. I've searched through all existing installed jars for the missing libs and cannot find them.
However, during the build these libraries _do_ exist:
ebuild eclipse-sdk-3.1_pre6 compile creates the libs in
./eclipse-sdk-3.1_pre6/plugins/org.eclipse.swt.gtk/os/linux/x86_64/
Haven't tracked down why the libs aren't being jar'd, but figured I'd pass the
information on. Hope this helps somebody.
Hey guys. I am trying to get eclipse on java 5.0 working. The ebuild compiled
on 1.4 (blackdown), although not on 5 (not sure why, using jrockit). Is eclipse
3.1 supposed to RUN on 5 or COMPILE on it? Anyway, that's not the issue. The
last post says that swt libs are missing. I have that problem too. Well, I
downloaded the amd64/GTK binary from eclipse.org, and behold... it was missing
there too, but the BINARY STILL RAN! So, the "problem" is a) not a problem and
b) is buried in the ant script, possibly. Although I'm a linux/java newbie, I
found that the "org.eclipse.swt.gtk/os/linux/x86_64/" folder is packaged in the
"org.eclipse.swt.gtk64_3.1.0.jar" file. Unpackaging doesn't help. Is the
CLASSPATH the problem? Good luck! I want my java5/eclipse!
I'm sorry, the compiliation issue with java 5 is actually not an issue, just
that jikes didn't compile it with the 5 jdk. Compiling with plain old javac on
jrockit-5 worked like a charm, the swt lib is still a problem.
The 3.1 final release is available for testing on amd64. Please test that, and
open a new bug (with relevant patches, if possible) should it fail.