I have being upset that Solaris doesn't get latest Wireless Toolkit and decided to do something about it. The first thing I did is trying to build phoneME on Solaris as I was told that CLDC/MIDP is the main reason why Wireless Toolkit won't be available on Solaris(Aren't those available for Solaris with WTK2.1?), although I doubt all the different optional JSRs might be in problem as well.

Anyway, I started to port PCSL last year when worked on Robosapien, dropped it as I switched to other projects, and picked it up again recently. Thanks to Hinkmond, Gary and Yevgeny, the PCSL patch is now in the trunk. To build PCSL on Solaris:

gmake NETWORK_MODULE=bsd/generic

Moved on to CLDC, after tinkering around the build system and a patch, I can now build CLDC with

LD_ALTEXEC=/usr/gnu/bin/ld gmake

Noted that it has to be gnu ld, for some reason I don't know, the Solaris ld doesn't want to work by giving me following error:

linking ../bin/cldc_vm_g ...
ld: elf error: file ../bin/libcldc_vmtest_g.a: elf_getarsym
ld: fatal: File processing errors. No output written to ../bin/cldc_vm_g
collect2: ld returned 1 exit status
make[1]: *** [../bin/cldc_vm_g] Error 1
make[1]: Leaving directory `/export/home/henryjen/prj/phoneme/cldc/build/solaris_i386_gcc/target/debug'
make: *** [_debug] Error 2

Does anyone have an idea on what's going on with Solaris ld?

Comments:

Have you checked the actual file: libcldc_vmtest_g.a? There's probably something funky with said file.

Is WTK available in source for the general public to port to Solaris x86?

Posted by Mike Lee on May 14, 2008 at 05:12 PM PDT #

Most components are available at phoneME project, not sure if everything composed WTK is available or not.

As the linker failure, GNU ld works fine. The file in question is an archive file, nm can display bunch of symbols without question.

The command line actually used to link is following, but I am not sure what went wrong.

linking ../bin/cldc_vm_g ...
g++ -o ../bin/cldc_vm_g jvmspi.o Main_linux.o NativesTable.o ROMImage.o ../bin/libcldc_vmx_g.a ../bin/libcldc_vmtest_g.a ../bin/libcldc_vm_g.a \
-lsocket -lnsl -lposix4 -L/usr/local/lib -lpthread -g
ld: elf error: file ../bin/libcldc_vmtest_g.a: elf_getarsym
ld: fatal: File processing errors. No output written to ../bin/cldc_vm_g
collect2: ld returned 1 exit status
make: *** [../bin/cldc_vm_g] Error 1

Posted by slowhog on May 14, 2008 at 07:10 PM PDT #

Post a Comment:
  • HTML Syntax: NOT allowed

This blog copyright 2009 by slowhog