Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

openjdk-7.55.13_3,1: UnsatisfiedLinkError jpeg_resync_to_restart

11 views
Skip to first unread message

Jonathan Chen

unread,
Apr 27, 2014, 9:51:50 PM4/27/14
to
Hi,

I'm trying out the latest openjdk-7.55.13_3,1 with squirrel-sql and
have noticed that the logs are reporting:

java.lang.UnsatisfiedLinkError:
/usr/local/openjdk7/jre/lib/amd64/libsplashscreen.so:
/usr/local/openjdk7/jre/lib
/amd64/libsplashscreen.so: Undefined symbol "jpeg_resync_to_restart"
at java.lang.ClassLoader$NativeLibrary.load(Native Method)

This looks very similar to:
http://www.freebsd.org/cgi/query-pr.cgi?pr=119654

Cheers.
--
Jonathan Chen <jo...@chen.org.nz>
_______________________________________________
freebs...@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-java
To unsubscribe, send any mail to "freebsd-java...@freebsd.org"

Jonathan Chen

unread,
Apr 29, 2014, 7:09:36 PM4/29/14
to
On 28 April 2014 13:51, Jonathan Chen <jo...@chen.org.nz> wrote:
> Hi,
>
> I'm trying out the latest openjdk-7.55.13_3,1 with squirrel-sql and
> have noticed that the logs are reporting:
>
> java.lang.UnsatisfiedLinkError:
> /usr/local/openjdk7/jre/lib/amd64/libsplashscreen.so:
> /usr/local/openjdk7/jre/lib
> /amd64/libsplashscreen.so: Undefined symbol "jpeg_resync_to_restart"
> at java.lang.ClassLoader$NativeLibrary.load(Native Method)

So I had a look at this with openjdk-7.55.13_4,1, and it appears that
the internal openjdk jpeg library is being compiled with
"NEED_SHORT_EXTERNAL_NAMES" defined, resulting in libjpeg.so with the
shortened name of "jResyncRestart"

11:00am> nm /usr/local/openjdk7/jre/lib/amd64/libjpeg.so | grep jResync
000000000000f6e0 T jResyncRestart

However, when libsplashscreen.so is built, "NEED_SHORT_EXTERNAL_NAMES"
has not been defined and the expanded "jpeg_resync_to_restart" symbol
is used instead, resulting in the undefined reference.

Unfortunately, I can't determine just how libjpeg.so is being built,
and where the unecessary "NEED_SHORT_EXTERNAL_NAMES" is being defined
in the build. Any pointers from the list would be appreciated.

Cheers

Jung-uk Kim

unread,
Apr 29, 2014, 7:37:40 PM4/29/14
to
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 2014-04-29 19:09:36 -0400, ?? wrote:
> On 28 April 2014 13:51, Jonathan Chen <jo...@chen.org.nz> wrote:
>> Hi,
>>
>> I'm trying out the latest openjdk-7.55.13_3,1 with squirrel-sql
>> and have noticed that the logs are reporting:
>>
>> java.lang.UnsatisfiedLinkError:
>> /usr/local/openjdk7/jre/lib/amd64/libsplashscreen.so:
>> /usr/local/openjdk7/jre/lib /amd64/libsplashscreen.so: Undefined
>> symbol "jpeg_resync_to_restart" at
>> java.lang.ClassLoader$NativeLibrary.load(Native Method)
>
> So I had a look at this with openjdk-7.55.13_4,1, and it appears
> that the internal openjdk jpeg library is being compiled with
> "NEED_SHORT_EXTERNAL_NAMES" defined, resulting in libjpeg.so with
> the shortened name of "jResyncRestart"
>
> 11:00am> nm /usr/local/openjdk7/jre/lib/amd64/libjpeg.so | grep
> jResync 000000000000f6e0 T jResyncRestart
>
> However, when libsplashscreen.so is built,
> "NEED_SHORT_EXTERNAL_NAMES" has not been defined and the expanded
> "jpeg_resync_to_restart" symbol is used instead, resulting in the
> undefined reference.
>
> Unfortunately, I can't determine just how libjpeg.so is being
> built, and where the unecessary "NEED_SHORT_EXTERNAL_NAMES" is
> being defined in the build. Any pointers from the list would be
> appreciated.

I guess ${LOCALBASE}/include/jconfig.h was found before
${WRKSRC}/jdk/src/share/native/sun/awt/image/jpeg/jconfig.h.

Jung-uk Kim
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (FreeBSD)

iQEcBAEBAgAGBQJTYDfEAAoJEHyflib82/FGFG0H/A+OvHQV8Y7YIqIGz4tI1fYA
mpLz6dibKGstPz0kZG5O+p65pujRquxcfcsyrhyK9UyOPTIP+IjmsAijb9a/7uMz
ShtpXQixwV+iZacjellbURwh7LzM9E+vVPaldTR/fcKQ734uCeKgQRGhNtlwXQ3G
rQA3AATd9AoGLk0TGVpcNQsaUZUI4UTOOt5DSgHLqLtAaranBmiCiqrOvWY4st/+
EjLBxS1l4fXlIg70fxkIfxjaGDamsqD7n2UmWHsc9708xbqaFFBMwGJ85Yk7ErSx
qTqeK4C9vLcrrlMwaq4q82SzjMKF/AG7k6sAj4Dpd2sTfvkCcW1G+cUCCJ+IGOE=
=9DrU
-----END PGP SIGNATURE-----

Jung-uk Kim

unread,
Apr 29, 2014, 8:05:46 PM4/29/14
to
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Please try the attached patch.

Jung-uk Kim
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (FreeBSD)

iQEcBAEBAgAGBQJTYD5aAAoJEHyflib82/FGgaoIAIsQeaWjbzUdsVfZsygsLTr2
kCbK4X/Ys5Ftyw3zYG9tWrg9Tx7HP99+7ACHUMzsdUutm51aj6H8Zu8MNNSkLZeK
nnuPtYFxUvCG5MlKLLgukVqlUH0CHml2Mdsns1AC4W1B4/lanRT61Eejv9ckF7De
PwZa31f1heb6DcH5gTusjnSAHnqarwNy51f3yGXd78p6304HhFHzsuBZkbdXptr0
UI5DyBnhSTQ2WmoJrGJIUXOcH8uKaw3YGOr3hrntV90eIZdEYHhHpS3mBLSVT/Xf
mazLpvs0wmaqLAixPWTc9mbqkx72AWzvgFts0JtELWsr9tYC9Q+kLaYtjClIV4k=
=nY19
-----END PGP SIGNATURE-----
openjdk7.diff

Jonathan Chen

unread,
Apr 29, 2014, 9:19:41 PM4/29/14
to
You've hit the nail on the head. The patch is good, and the build
works on my machine running 10-STABLE/amd64.

Thanks!
--
Jonathan Chen <jo...@chen.org.nz>
0 new messages