harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gregory Shimansky <gshiman...@gmail.com>
Subject Re: [general] what's the status of harmony support for em64?
Date Fri, 10 Nov 2006 18:35:13 GMT
Gregory Shimansky wrote:
> Stefano Mazzocchi wrote:
>> Geir Magnusson Jr. wrote:
>> anyway, I can't build the native part of harmony/classlib
>>
>> doing "ant build-native" results in
>>
>>   classlib/depends/libs/linux.x86_64
>>
>> not being found.
> 
> There should be prebuilt ICU binaries. You can build them yourself or 
> you can take them from HARMONY-1678. Note, for me those libraries had 

Oops. It should be HARMONY-1676

> libicu*.so.34.1 names while our build wants libicu*.so.34. So I had to 
> set up links from *34.1 to *34.
> 
>> If I try to make a symlink between linux.x86_64 and linux.x86_32 (no
>> idea what I'm doing here, just trying things out), I get
> 
> I think this is a wrong thing to do. You cannot link together code built 
> for different architectures. Linker should have told you that but 
> apparently it encountered an internal error.
> 
> Also don't use x86 versions of lib*.a for libraries in 
> depends/libs/build/{jpeg,lcms,png}/. That shouldn't work. You need to 
> find 64-bit versions on your system or build them yourself.
> 
> Yesterday I built classlib native stuff successfully (see [classlib] 
> Building on x86_64 thread) but it wasn't easy. Somehow lib*.a static 
> libraries weren't meant to be linked to shared libraries on SUSE9, so I 
> had to replace links in depends/libs/build/{jpeg,lcms,png}/ with links 
> to shared ones. It seem to have worked, but I couldn't check how well 
> classlib works since drlvm build on x86_64 is now broken, most likely by 
> HARMONY-1558.
> 
>> build-native:
>>      [exec] make: Nothing to be done for `all'.
>>      [exec] make: Nothing to be done for `all'.
>>      [exec] make: Nothing to be done for `all'.
>>      [copy] Copying 1 file to
>> /home/stefano/src/harmony/classlib/deploy/jdk/jre/bin
>>      [exec] cc -shared -Wl,--version-script,libhythr.exp \
>>      [exec]     -Wl,-soname=libhythr.so  -o ../libhythr.so \
>>      [exec]     ../shared/thread_copyright.o x86_64/thrhelp.o
>> x86_64/thrspinlock.o hythread.o ../shared/hythreadinspect.o
>> linuxonexit.o priority.o rasthrsup.o ../shared/rwmutex.o thrcreate.o
>> thrdsup.o ../shared/thrprof.o -lpthread \
>>      [exec]     -Xlinker --start-group
>> /home/stefano/src/harmony/classlib/deploy/lib/libhypool.a
>> /home/stefano/src/harmony/classlib/deploy/lib/libhycommon.a -Xlinker
>> --end-group \
>>      [exec]     -lc -lm -ldl
>>      [exec] /usr/bin/ld: x86_64/thrspinlock.o: relocation R_X86_64_PC32
>> against `hythread_yield' can not be used when making a shared object;
>> recompile with -fPIC
>>      [exec] /usr/bin/ld: final link failed: Bad value
>>      [exec] collect2: ld returned 1 exit status
>>      [exec] make: *** [../libhythr.so] Error 1
>>
>> googling it up a little finds
>>
>>  http://sources.redhat.com/ml/binutils/2005-04/msg00649.html
>>
>> which is a reference to a GCC bug that was apparently fixed a long 
>> time go.
>>
>> Ah btw,
>>
>> [stefano@harmony-em64t] ~/src/harmony/classlib $ gcc --version
>> gcc (GCC) 4.0.3 (Ubuntu 4.0.3-1ubuntu5)
>>
>> [stefano@harmony-em64t] ~/src/harmony/classlib $ ld --version
>> GNU ld version 2.16.91 20060118 Debian GNU/Linux
>>
>> [stefano@harmony-em64t] ~/src/harmony/classlib $ uname -a
>> Linux harmony-em64t 2.6.15-27-amd64-generic #1 SMP PREEMPT Sat Sep 16
>> 01:50:50 UTC 2006 x86_64 GNU
>>
>> Please, bare with my ignorance, I have *zero* knowledge on native stuff
>> (I moved from x86 assembly on windows to java without going thru C ;-)
>>
>> No idea what to do now, please help and I can reward you with a freshly
>> juiced gump run :-)
>>
> 
> 


-- 
Gregory


Mime
View raw message