View previous topic :: View next topic |
Author |
Message |
emerald Tux's lil' helper
Joined: 31 Jul 2005 Posts: 113
|
Posted: Sat Apr 26, 2008 1:25 am Post subject: |
|
|
yay, it works
...i got doc in make.conf so now and then i stumble over doc problems :\ _________________ Knowledge is scary....
... running Gentoo Linux ...
... and Windows in a 'small corner'(C) - i.e. vmware - ...
System Profile
Don't open the Red Door !
Last edited by emerald on Sat Apr 26, 2008 3:00 pm; edited 1 time in total |
|
Back to top |
|
|
arzed n00b
Joined: 25 Jan 2006 Posts: 25
|
Posted: Sat Apr 26, 2008 2:41 pm Post subject: |
|
|
I just tried the icedtea ebuild from the java-overlay and it fails to build:
Code: |
Linking vm...
make[7]: Leaving directory `/home/paludis/tmp/dev-java-icedtea-6.1.1/work/icedtea6-1.1/openjdk/control/build/linux-amd64/hotspot/outputdir/linux_amd64_compiler2/product'
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lstdc++
collect2: ld returned 1 exit status
{ \
echo Linking launcher...; \
\
gcc -m64 -Xlinker -O1 -m64 -export-dynamic -L `pwd` -o gamma launcher.o -ljvm -lm -ldl -lpthread; \
\
}
Linking launcher...
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -ljvm
collect2: ld returned 1 exit status
make[6]: *** [gamma] Error 1
make[6]: Leaving directory `/home/paludis/tmp/dev-java-icedtea-6.1.1/work/icedtea6-1.1/openjdk/control/build/linux-amd64/hotspot/outputdir/linux_amd64_compiler2/product'
make[5]: *** [the_vm] Error 2
make[5]: Leaving directory `/home/paludis/tmp/dev-java-icedtea-6.1.1/work/icedtea6-1.1/openjdk/control/build/linux-amd64/hotspot/outputdir/linux_amd64_compiler2/product'
make[4]: *** [product] Error 2
make[4]: Leaving directory `/home/paludis/tmp/dev-java-icedtea-6.1.1/work/icedtea6-1.1/openjdk/control/build/linux-amd64/hotspot/outputdir'
make[3]: *** [generic_build2] Error 2
make[3]: Leaving directory `/home/paludis/tmp/dev-java-icedtea-6.1.1/work/icedtea6-1.1/openjdk/hotspot/make'
make[2]: *** [product] Error 2
make[2]: Leaving directory `/home/paludis/tmp/dev-java-icedtea-6.1.1/work/icedtea6-1.1/openjdk/hotspot/make'
make[1]: *** [hotspot-build] Error 2
make[1]: Leaving directory `/home/paludis/tmp/dev-java-icedtea-6.1.1/work/icedtea6-1.1/openjdk/control/make'
make: *** [icedtea] Error 2
!!! ERROR in dev-java/icedtea-6.1.1:
!!! In src_compile at line 5716
!!! make failed
!!! Call stack:
!!! * src_compile (/var/paludis/tmp/dev-java-icedtea-6.1.1/temp/loadsaveenv:5716)
!!! * ebuild_f_compile (/usr/libexec/paludis/0/src_compile.bash:49)
!!! * ebuild_main (/usr/libexec/paludis/ebuild.bash:460)
!!! * main (/usr/libexec/paludis/ebuild.bash:479)
diefunc: making ebuild PID 18432 exit with error
die trap: exiting with error.
Install error:
* In program /usr/bin/paludis -i1 icedtea:
* When performing install action from command line:
* When executing install task:
* When installing 'dev-java/icedtea-6.1.1:6::java-overlay':
* Install error: Install failed for 'dev-java/icedtea-6.1.1:6::java-overlay'
|
This is on amd64 ...
thanks for any suggestions. |
|
Back to top |
|
|
DaggyStyle Watchman
Joined: 22 Mar 2006 Posts: 5929
|
Posted: Sat Apr 26, 2008 3:56 pm Post subject: |
|
|
what is the diff between the 6.1.1 icedtea here and the 1.6 in the plugin thread? _________________ Only two things are infinite, the universe and human stupidity and I'm not sure about the former - Albert Einstein |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Sat Apr 26, 2008 4:22 pm Post subject: |
|
|
for other 1.6 ebuilds I do not know but I put some fixes and cleanups with the help of gentoo-java devs in it.
my ebuild originated from gnu_andrew. thanks again dude. _________________ hear hear |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Sat Apr 26, 2008 4:27 pm Post subject: |
|
|
arzed no idea. works fine here on amd64.
any experimental setup/overlay in use? _________________ hear hear |
|
Back to top |
|
|
DaggyStyle Watchman
Joined: 22 Mar 2006 Posts: 5929
|
Posted: Sat Apr 26, 2008 4:41 pm Post subject: |
|
|
so it is basically the same? _________________ Only two things are infinite, the universe and human stupidity and I'm not sure about the former - Albert Einstein |
|
Back to top |
|
|
emerald Tux's lil' helper
Joined: 31 Jul 2005 Posts: 113
|
Posted: Sat Apr 26, 2008 4:46 pm Post subject: |
|
|
arzed:
Code: |
Linking vm...
make[7]: Leaving directory `/home/paludis/tmp/dev-java-icedtea-6.1.1/work/icedtea6-1.1/openjdk/control/build/linux-amd64/hotspot/outputdir/linux_amd64_compiler2/product'
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lstdc++
|
where's your libstdc++? whether your compiler doesn't have c++ support or your compiler setup/environment is broken
you need libstdc++ first to link libjvm, then the other one will build too _________________ Knowledge is scary....
... running Gentoo Linux ...
... and Windows in a 'small corner'(C) - i.e. vmware - ...
System Profile
Don't open the Red Door ! |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Sun Apr 27, 2008 11:14 am Post subject: |
|
|
DaggyStyle wrote: | so it is basically the same? | a well, was irritated by 1.6. it is still the jdk-1.7(openjdk7) in java-exp whereas my version is jdk-1.6, based on openjdk6.
openjdk6 is in stabilization process.
openjdk7 is in development process - to be broken.
my ebuild is generic, like you need virtual/jdk-1.6 to build.
:::
b33fc0d3's ebuild needs old gcj, which is in jdk-1.4/1.5/1.6 state with old gnu-classpath.
I would not want to build a new jdk with gcj nowadays.
have fun! _________________ hear hear |
|
Back to top |
|
|
arzed n00b
Joined: 25 Jan 2006 Posts: 25
|
Posted: Tue Apr 29, 2008 8:24 am Post subject: |
|
|
I got sure that sun-jdk-1.6 is used to build icedtea and then I took a look at my gcc:
reconcilio says:
Broken packages:
* sys-devel/gcc-4.2.3::installed
/usr/lib64/gcc/x86_64-pc-linux-gnu/4.2.3/libgij.la (requires /usr/lib/../lib 64/libgcj.la)
/usr/lib64/gcj-4.2.3/libjvm.la (requires /usr/lib/../lib64/libgcj.la)
But this does not change when I rebuild gcc and *.la-files shouldn't be needed for shared libraries anyhow. It is built with the following useflags:
Relevant USE flags: (-altivec) (-bootstrap) (-build) (-doc) (fortran) (gcj) (-gtk) (-hardened) (-ip28) (-ip32r10k) (-libffi) (mudflap) (-multilib) (-multislot) (-n32) (-n64) (nls) (-nocxx) (-objc) (-objc++) (-objc-gc) (openmp) (-test) (-vanilla)
I also did a simple test to see wheter -ltstdc++ doesn't work systelm wide:
Code: |
mereandor@pender ~ $ g++ hello.cpp -lstdc++
mereandor@pender ~ $ ./a.out
Hello world!
|
I don't know wheter this would show the problem if it was system wide, because I'm just learing c++ ...
So what else can I do to track this down? |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Tue Apr 29, 2008 8:35 am Post subject: |
|
|
you have gcc installed with USE="gcj".
please pastebin the build.log of failing icedtea merge.
may be there is some hint. _________________ hear hear |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Tue Apr 29, 2008 10:39 am Post subject: |
|
|
‹ CIA-28 › geki * r6230 proj/java/gcj-overlay/ (TODO.geki forPortage): gcj-overlay: geki retires from maintainership; as of now it is unmaintained.
just to let you all know officially.
have fun! _________________ hear hear |
|
Back to top |
|
|
arzed n00b
Joined: 25 Jan 2006 Posts: 25
|
Posted: Tue Apr 29, 2008 11:34 am Post subject: |
|
|
geki wrote: | you have gcc installed with USE="gcj".
please pastebin the build.log of failing icedtea merge.
may be there is some hint. |
I would like to, but it has about 2MB data and there is no paste service supporting files of this size.
I used my webspace to store it bzip2-compressed: http://mereandor.paebbels.com/build.log.bz2 (48KB) |
|
Back to top |
|
|
DaggyStyle Watchman
Joined: 22 Mar 2006 Posts: 5929
|
Posted: Tue Apr 29, 2008 11:42 am Post subject: |
|
|
ok, so now we need to search for a new package? _________________ Only two things are infinite, the universe and human stupidity and I'm not sure about the former - Albert Einstein |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Tue Apr 29, 2008 11:52 am Post subject: |
|
|
arzed wrote: | I also did a simple test to see wheter -ltstdc++ doesn't work systelm wide:
Code: | mereandor@pender ~ $ g++ hello.cpp -lstdc++
mereandor@pender ~ $ ./a.out
Hello world! | I don't know wheter this would show the problem if it was system wide, because I'm just learing c++ ... | try to compile your testcase with additional flag '-static-libgcc'.
that is the only suspicious flag I see there.
otherwise LD_LIBRARY_PATH or such envvar is set wrong somehow. _________________ hear hear |
|
Back to top |
|
|
arzed n00b
Joined: 25 Jan 2006 Posts: 25
|
Posted: Tue Apr 29, 2008 11:57 am Post subject: |
|
|
there we go:
Quote: |
mereandor@pender ~ $ g++ hello.cpp -static-libgcc
mereandor@pender ~ $ ./a.out
Hello world!
|
|
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Tue Apr 29, 2008 12:05 pm Post subject: |
|
|
DaggyStyle
what got lost that you must seek a new package for?
I hope you do not mistake my retirement for removing gcj-overlay.
or did I miss something? _________________ hear hear |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Tue Apr 29, 2008 12:07 pm Post subject: |
|
|
arzed you replaced the flag instead of adding. it should be:
$ g++ hello.cpp -static-libgcc -lstdc++ _________________ hear hear |
|
Back to top |
|
|
arzed n00b
Joined: 25 Jan 2006 Posts: 25
|
Posted: Tue Apr 29, 2008 12:41 pm Post subject: |
|
|
Code: | mereandor@pender ~ $ g++ hello.cpp -static-libgcc -lstdc++
mereandor@pender ~ $ ./a.out
Hello world!
|
The build still fails. (There were some stale config-files from gcc-4.1.2 that I deleted so I tested again. - After an env-update && source /etc/profile) |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Tue Apr 29, 2008 12:49 pm Post subject: |
|
|
now that it failed I hope you did not delete the build.
because you could test if the same command still fails from the shell outside the icedtea environment.
to see if its the icedtea env or not that makes it fail. _________________ hear hear |
|
Back to top |
|
|
DaggyStyle Watchman
Joined: 22 Mar 2006 Posts: 5929
|
Posted: Tue Apr 29, 2008 12:53 pm Post subject: |
|
|
geki wrote: | DaggyStyle
what got lost that you must seek a new package for?
I hope you do not mistake my retirement for removing gcj-overlay.
or did I miss something? |
I have no knowledge how many maintainer's the overlay has... I was guessing your the only one, from you remark, I understand that I was wrong.
no problem, thanks for your work on the project _________________ Only two things are infinite, the universe and human stupidity and I'm not sure about the former - Albert Einstein |
|
Back to top |
|
|
arzed n00b
Joined: 25 Jan 2006 Posts: 25
|
Posted: Tue Apr 29, 2008 1:02 pm Post subject: |
|
|
geki wrote: | now that it failed I hope you did not delete the build.
because you could test if the same command still fails from the shell outside the icedtea environment.
to see if its the icedtea env or not that makes it fail. |
No. The build-directory is still there. But I don't know what exactly you mean that I should do... |
|
Back to top |
|
|
arzed n00b
Joined: 25 Jan 2006 Posts: 25
|
Posted: Tue Apr 29, 2008 1:15 pm Post subject: |
|
|
So I did:
Code: |
source /var/tmp/paludis/dev-java-icedtea-6.1.1/temp/loadsaveenv
|
that should give me basically the same environment (no sandbox and a different user, but the same environment variables) as the ebuild uses. It still works fine (I think there is no need to paste the output again...) |
|
Back to top |
|
|
arzed n00b
Joined: 25 Jan 2006 Posts: 25
|
Posted: Tue Apr 29, 2008 1:35 pm Post subject: |
|
|
Ok, I know now why the command fails:
Leaving all the names of the .o-files aside the command looks like this:
Code: | gcc -m64 -Xlinker -O1 -shared -Xlinker --version-script=mapfile_reorder -Xlinker -soname=libjvm.so -static-libgcc -o libjvm.so all.o -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic -lm -ldl -lpthread; |
But it should be (at least that's how it works):
Code: | gcc -m64 -Xlinker -O1 -shared -Xlinker --version-script=mapfile_reorder -Xlinker -soname=libjvm.so -static-libgcc -o libjvm.so all.o -Wl,-Bstatic -Wl,-Bdynamic -lm -ldl -lpthread -lstdc++; |
Obviously the -lstdc++ is at the wrong position. |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Tue Apr 29, 2008 1:45 pm Post subject: |
|
|
well, but icedtea wants to link libstdc++ statically and the rest dynamically.
I will compile icedtea and see how it looks like here.
btw, just remembered, you use paludis which may does something..? _________________ hear hear |
|
Back to top |
|
|
arzed n00b
Joined: 25 Jan 2006 Posts: 25
|
Posted: Tue Apr 29, 2008 2:07 pm Post subject: |
|
|
geki wrote: | well, but icedtea wants to link libstdc++ statically and the rest dynamically |
I think I know now what is wrong: I have no statically linked libstdc++. Most probably that is the reason. |
|
Back to top |
|
|
|