jzmq icon indicating copy to clipboard operation
jzmq copied to clipboard

Odd error when trying to get the EAGAIN constant

Open Kentzo opened this issue 10 years ago • 0 comments

With the most recent version, we get the following error (on Android):

E/AndroidRuntime( 1628): java.lang.ExceptionInInitializerError
E/AndroidRuntime( 1628):     at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
E/AndroidRuntime( 1628):     at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 1628):     at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime( 1628):     at android.os.HandlerThread.run(HandlerThread.java:60)
E/AndroidRuntime( 1628): Caused by: java.lang.UnsatisfiedLinkError: Native method not found: org.zeromq.ZMQ.EAGAIN:()J
E/AndroidRuntime( 1628):     at org.zeromq.ZMQ.EAGAIN(Native Method)
E/AndroidRuntime( 1628):     at org.zeromq.ZMQ$Error.<clinit>(ZMQ.java:400)
E/AndroidRuntime( 1628):     ... 5 more

On the logs:

V/dalvikvm( 1628): +++ scanning '/system/lib/libjzmq.so' for 'ENOTSOCK'
V/dalvikvm( 1628): +++ calling dlsym(Java_org_zeromq_ZMQ_ENOTSOCK)
V/dalvikvm( 1628): Found 'Java_org_zeromq_ZMQ_ENOTSOCK' with dlsym
V/dalvikvm( 1628): +++ not scanning '/system/lib/libwebcore.so' for 'EAGAIN' (wrong CL)
V/dalvikvm( 1628): +++ not scanning 'libnativehelper.so' for 'EAGAIN' (wrong CL)
V/dalvikvm( 1628): +++ not scanning 'libjavacore.so' for 'EAGAIN' (wrong CL)
V/dalvikvm( 1628): +++ not scanning '/system/lib/libmedia_jni.so' for 'EAGAIN' (wrong CL)
V/dalvikvm( 1628): +++ not scanning '/system/lib/librs_jni.so' for 'EAGAIN' (wrong CL)
V/dalvikvm( 1628): +++ not scanning '/system/lib/libdrmframework_jni.so' for 'EAGAIN' (wrong CL)
V/dalvikvm( 1628): +++ not scanning '/system/lib/libchromium_net.so' for 'EAGAIN' (wrong CL)
V/dalvikvm( 1628): +++ scanning '/system/lib/libjzmq.so' for 'EAGAIN'
V/dalvikvm( 1628): +++ calling dlsym(Java_org_zeromq_ZMQ_EAGAIN)
V/dalvikvm( 1628): +++ calling dlsym(Java_org_zeromq_ZMQ_EAGAIN__)
V/dalvikvm( 1628): dvm_dlsym() returns 0x0 on Java_org_zeromq_ZMQ_EAGAIN__ with handle 0xb770a368
V/dalvikvm( 1628): +++ scanning '/system/lib/libandyprop.so' for 'EAGAIN'
V/dalvikvm( 1628): +++ calling dlsym(Java_org_zeromq_ZMQ_EAGAIN)
V/dalvikvm( 1628): +++ calling dlsym(Java_org_zeromq_ZMQ_EAGAIN__)
V/dalvikvm( 1628): dvm_dlsym() returns 0x0 on Java_org_zeromq_ZMQ_EAGAIN__ with handle 0xb770a484
W/dalvikvm( 1628): No implementation found for native Lorg/zeromq/ZMQ;.EAGAIN:()J

I can confirm that the symbol is inside the binary. I can also confirm that other constants (ENOTSOCK in particular) are loading just fine.

Kentzo avatar Aug 24 '15 18:08 Kentzo