After some more digging, I realized I was using the 1.0.1 native code with
the 1.0.2 java code...mea culpa.

At first I tried to make the 1.0.2 native code by running make from the jni
directory, but hit the following errors:
i...@ubuntu:~/Downloads/javax-usb-ri-linux-102/jni$ make
gcc -I/include -I/include/linux  -Wall -fPIC   -c JavaxUsbKernel.c
In file included from JavaxUsbKernel.c:11:
JavaxUsb.h:14:44: error: com_ibm_jusb_os_linux_JavaxUsb.h: No such file or
directory
In file included from JavaxUsb.h:15,
                 from JavaxUsbKernel.c:11:
JavaxUsbLog.h:14:17: error: jni.h: No such file or directory
In file included from JavaxUsb.h:15,
                 from JavaxUsbKernel.c:11:
JavaxUsbLog.h:18: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’
before ‘tracing’
JavaxUsbLog.h:19: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’
before ‘trace_default’
JavaxUsbLog.h:20: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’
before ‘trace_hotplug’
JavaxUsbLog.h:21: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’
before ‘trace_xfer’
JavaxUsbLog.h:22: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’
before ‘trace_urb’
JavaxUsbLog.h:25: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’
before ‘trace_flush’
In file included from JavaxUsb.h:16,
                 from JavaxUsbKernel.c:11:
JavaxUsbChecks.h:61: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or
‘__attribute__’ before ‘get_exception’
JavaxUsbChecks.h:74: error: expected ‘)’ before ‘*’ token
JavaxUsbChecks.h:83: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or
‘__attribute__’ before ‘debugGetObjectClass’
JavaxUsbChecks.h:90: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or
‘__attribute__’ before ‘debugGetMethodID’
JavaxUsbChecks.h:97: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or
‘__attribute__’ before ‘debugGetFieldID’
JavaxUsbChecks.h:104: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or
‘__attribute__’ before ‘debugNewStringUTF’
JavaxUsbChecks.h:111: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or
‘__attribute__’ before ‘debugNewGlobalRef’
JavaxUsbChecks.h:118: error: expected declaration specifiers or ‘...’
before ‘JNIEnv’
JavaxUsbChecks.h:118: error: expected declaration specifiers or ‘...’
before ‘jobject’
JavaxUsbChecks.h: In function ‘debugDeleteLocalRef’:
JavaxUsbChecks.h:120: error: ‘env’ undeclared (first use in this function)
JavaxUsbChecks.h:120: error: (Each undeclared identifier is reported only
once
JavaxUsbChecks.h:120: error: for each function it appears in.)
JavaxUsbChecks.h:120: error: ‘object’ undeclared (first use in this
function)
JavaxUsbChecks.h:121: warning: implicit declaration of function
‘debug_exception’
JavaxUsbChecks.h: At top level:
JavaxUsbChecks.h:124: error: expected declaration specifiers or ‘...’
before ‘JNIEnv’
JavaxUsbChecks.h:124: error: expected declaration specifiers or ‘...’
before ‘jobject’
JavaxUsbChecks.h: In function ‘debugDeleteGlobalRef’:
JavaxUsbChecks.h:126: error: ‘env’ undeclared (first use in this function)
JavaxUsbChecks.h:126: error: ‘object’ undeclared (first use in this
function)
JavaxUsbChecks.h: At top level:
JavaxUsbChecks.h:130: error: expected declaration specifiers or ‘...’
before ‘JNIEnv’
JavaxUsbChecks.h:130: error: expected declaration specifiers or ‘...’
before ‘jbyteArray’
JavaxUsbChecks.h:130: error: expected declaration specifiers or ‘...’
before ‘jsize’
JavaxUsbChecks.h:130: error: expected declaration specifiers or ‘...’
before ‘jsize’
JavaxUsbChecks.h:130: error: expected declaration specifiers or ‘...’
before ‘jbyte’
JavaxUsbChecks.h: In function ‘debugGetByteArrayRegion’:
JavaxUsbChecks.h:132: error: ‘env’ undeclared (first use in this function)
JavaxUsbChecks.h:132: error: ‘array’ undeclared (first use in this
function)
JavaxUsbChecks.h:132: error: ‘offset’ undeclared (first use in this
function)
JavaxUsbChecks.h:132: error: ‘length’ undeclared (first use in this
function)
JavaxUsbChecks.h:132: error: ‘buffer’ undeclared (first use in this
function)
JavaxUsbChecks.h: At top level:
JavaxUsbChecks.h:136: error: expected declaration specifiers or ‘...’
before ‘JNIEnv’
JavaxUsbChecks.h:136: error: expected declaration specifiers or ‘...’
before ‘jbyteArray’
JavaxUsbChecks.h:136: error: expected declaration specifiers or ‘...’
before ‘jsize’
JavaxUsbChecks.h:136: error: expected declaration specifiers or ‘...’
before ‘jsize’
JavaxUsbChecks.h:136: error: expected declaration specifiers or ‘...’
before ‘jbyte’
JavaxUsbChecks.h: In function ‘debugSetByteArrayRegion’:
JavaxUsbChecks.h:138: error: ‘env’ undeclared (first use in this function)
JavaxUsbChecks.h:138: error: ‘array’ undeclared (first use in this
function)
JavaxUsbChecks.h:138: error: ‘offset’ undeclared (first use in this
function)
JavaxUsbChecks.h:138: error: ‘length’ undeclared (first use in this
function)
JavaxUsbChecks.h:138: error: ‘buffer’ undeclared (first use in this
function)
JavaxUsbChecks.h: At top level:
JavaxUsbChecks.h:142: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or
‘__attribute__’ before ‘debugGetArrayLength’
JavaxUsbChecks.h:149: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or
‘__attribute__’ before ‘debugGetStaticMethodID’
JavaxUsbChecks.h:156: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or
‘__attribute__’ before ‘debugGetStaticFieldID’
In file included from JavaxUsbKernel.c:11:
JavaxUsb.h:109: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:110: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:112: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:113: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:115: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:116: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:118: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:119: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:121: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:122: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:124: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:125: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:126: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:127: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:129: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:130: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:131: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:132: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:192: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:193: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:203: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:230: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:246: error: expected ‘)’ before ‘*’ token
JavaxUsb.h:260: error: expected ‘)’ before ‘*’ token
JavaxUsbKernel.c: In function ‘setKernelVersion’:
JavaxUsbKernel.c:38: error: ‘tracing’ undeclared (first use in this
function)
JavaxUsbKernel.c:38: error: ‘trace_xfer’ undeclared (first use in this
function)
JavaxUsbKernel.c:38: error: ‘JNI_TRUE’ undeclared (first use in this
function)
JavaxUsbKernel.c:38: error: ‘trace_flush’ undeclared (first use in this
function)
JavaxUsbKernel.c:38: error: ‘trace_hotplug’ undeclared (first use in this
function)
JavaxUsbKernel.c:38: error: ‘trace_urb’ undeclared (first use in this
function)
JavaxUsbKernel.c:38: error: ‘trace_default’ undeclared (first use in this
function)
make: *** [JavaxUsbKernel.o] Error 1

Is this a bug or am I just doing something dumb?

Anyway, switching to 1.0.1 for the javax-usb-ri-linux classes fixed my
issues.

                                                                                
                                                                  
  From:       Lee M Surprenant/Raleigh/i...@ibmus                               
                                                                   
                                                                                
                                                                  
  To:         javax-usb-devel@lists.sourceforge.net                             
                                                                  
                                                                                
                                                                  
  Date:       12/09/2009 06:10 PM                                               
                                                                  
                                                                                
                                                                  
  Subject:    [javax-usb-devel] jni error with javax.usb on ubuntu karmic koala 
                                                                  
                                                                                
                                                                  





I'm having some trouble trying to run the javax-usb-ri-linux package on a
fairly new linux (2.6.31.1). After manually mounting /proc/bus/usb I seem
to be hitting the same problem with both my client and the sample swing
client. Filesystem info and trace messages below:

i...@ubuntu:/proc/bus/usb$ ls -l ???/???
-rw-rw-rw- 1 root root  43 2009-12-09 17:29 001/001
-rw-rw-rw- 1 root root  43 2009-12-09 17:29 002/001
-rw-rw-rw- 1 root root  43 2009-12-09 17:29 003/001
-rw-rw-rw- 1 root root  43 2009-12-09 17:29 004/001
-rw-rw-rw- 1 root root  43 2009-12-09 17:29 005/001
-rw-rw-rw- 1 root root  52 2009-12-09 17:29 005/003
-rw-rw-rw- 1 root root  43 2009-12-09 17:29 006/001
-rw-rw-rw- 1 root root 111 2009-12-09 17:29 006/002
-rw-rw-rw- 1 root root  43 2009-12-09 17:29 007/001’,


[default](2) JavaxUsb.h.open_device[216] Opening node /proc/bus/usb/001/001
[default](2) JavaxUsb.h.open_device[216] Opening node /proc/bus/usb/002/001
[default](2) JavaxUsb.h.open_device[216] Opening node /proc/bus/usb/003/001
[default](2) JavaxUsb.h.open_device[216] Opening node /proc/bus/usb/004/001
[default](2) JavaxUsb.h.open_device[216] Opening node /proc/bus/usb/004/010
[default](2) JavaxUsb.h.open_device[216] Opening node /proc/bus/usb/005/001
[default](2) JavaxUsb.h.open_device[216] Opening node /proc/bus/usb/005/003
[default](2) JavaxUsb.h.open_device[216] Opening node /proc/bus/usb/006/001
[default](2) JavaxUsb.h.open_device[216] Opening node /proc/bus/usb/006/002
[default](2) JavaxUsb.h.open_device[216] Opening node /proc/bus/usb/007/001
[default](2) JavaxUsb.h.open_device[216] Opening node /proc/bus/usb/001/001
[xfer](2)
JavaxUsbDeviceProxy.c.Java_com_ibm_jusb_os_linux_JavaxUsb_nativeDeviceProxy
[75] Got Request
[xfer](5) JavaxUsbDeviceProxy.c.submitRequest[127] Submitting Request.
[xfer](5) JavaxUsbDeviceProxy.c.submitRequest[131] Submitting Pipe Request.
[default](0) JavaxUsbChecks.h.debug_exception[75] !! JNI Exception : file
(JavaxUsbPipeRequest.c) function (pipe_request) line (41)

[default](0) JavaxUsbChecks.h.debug_exception[76] !!!!! Failure at :
(*env)->GetMethodID(env,LinuxPipeRequest,"setUrbAddress","(I)V")

This seems to occur on the fir Pipe Request. In the swing client this is a
control message with length 256. In my client, this is an interrupt or bulk
message with length 64.
Any ideas?
------------------------------------------------------------------------------

Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
_______________________________________________
javax-usb-devel mailing list
javax-usb-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/javax-usb-devel

<<inline: graycol.gif>>

<<inline: ecblank.gif>>

------------------------------------------------------------------------------
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
_______________________________________________
javax-usb-devel mailing list
javax-usb-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/javax-usb-devel

Reply via email to