分类: Java
2007-07-26 18:35:19
the following from
Yesterday I was happy about SUN, because I saw an announcement that WTK 2.5.1 was released. And it includes a Linux version. The versions 2.3 and 2.5 were Windows only. The only available Linux version was 2.2. It worked nice but missed some features and had an annoying bug that signing of midlets were not possible. This bug was introduced in WTK 1.1 and fixed in WTK 2.5.
Today I download WTK 2.5.1 for Linux and installed it. I tried to run a first midlet and got this error message:
java.lang.UnsatisfiedLinkError: /home/mkoch/local/WTK2.5.1/bin/sublime.so: /lib/tls/i686/cmov/libc.so.6: version `GLIBC_2.4' not found (required by /home/mkoch/local/WTK2.5.1/bin/sublime.so)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751......
I run a pure Debian Etch system as my desktop. 插个话我用的rays1.5r2
So its not too old. I
know there are releasons for etch not to include Glibc 2.4. Thats
really okay. But I really wonder why builds against Glibc 2.4? What
feature introduced in Glibc 2.4 is needed? I guess none.
They are just stupid and built against a new, shiny Glibc without caring about their users.
SUN: Please care about your users and release a new build against Glibc 2.3 soon. (给SUN下指示了,不过现在已经近八月了,SUN就没理过)Not everyone will update his/her development machine just to be able to run WTK. When you release proprietary software, do it right. If you are not able to, make it open source, so the community can fix it.
在sun的forum上,有一位同学的态度就平和一点:这是我在学习J2ME时遇到的问题,不过WTK的编译校验和创建JAR(create package)功能都是好使的,只是想在仿真器上运行时会出现上述问题。这个可以解决,直接放到手机上运行,麻烦些
Since Debian etch (and Ubuntu dapper) only have glibc 2.3.x, the
library is incompatible. You can see that when you do ldd
/path/to/sublime.so -- like this:
mcornils@asus:~/bt/WTK2.5.1/bin$ ldd sublime.so
./sublime.so: /lib/tls/i686/cmov/libc.so.6: version `GLIBC_2.4' not found (required by ./sublime.so)
linux-gate.so.1 => (0xffffe000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7e3f000)
/lib/ld-linux.so.2 (0x80000000)
So, upgrade to more recent versions (lenny has glibc 2.5,
edgy and feisty are ok, too) or get Sun to recompile against the older
glibc (which might be difficult since they probably rely on some new
glibc 2.4 features).
Good luck,
-Malte