libopenkinect don't link with libusb
in
Contributed Library Questions
•
1 years ago
hello ...i'am trying to make work kinect with processing
i use the
https://github.com/shiffman/libfreenect.git
i have a problem with building the liblibOpenKinect.so...
i change the build.sh to
#!/bin/sh
LIBUSB_INCLUDE=-I/usr/include/libusb-1.0
LIBUSB_LIBRARY=-lusb-1.0
LIBFREENET_INCLUDE=-I../../include/
LIBFREENET_LIBRARY=../../build/lib/libfreenect.a
# -- try to use installed as fallback
if [ -z ${LIBFREENET_INCLUDE} ]; then LIBFREENET_INCLUDE="/usr/include/libfreenect/"; fi
if [ -z ${LIBFREENET_LIBRARY} ]; then LIBFREENET_LIBRARY="/usr/lib/libfreenect.a"; fi
#-- if jdk home is not set try ubuntu default
if [ -z ${JDK_HOME} ]; then JDK_HOME="/usr/lib/jvm/java-6-openjdk"; fi
JNI_SRC_DIR=OpenKinectJNI
JAVA_SRC_DIR=OpenKinect/src
mkdir -p dist/javadoc
g++ -shared -fPIC -Wall -o dist/libOpenKinect.so ${JNI_SRC_DIR}/org_openkinect_Context.cpp OpenKinectJNI/org_openkinect_Device.cpp ${LIBUSB_INCLUDE} ${LIBUSB_LIBRARY} ${LIBFREENET_INCLUDE} ${LIBFREENET_LIBRARY} -I${JDK_HOME}/include/ -I${JDK_HOME}/include/linux/ -L${JDK_HOME}/lib/
mkdir -p build
javac -d build -sourcepath ${JAVA_SRC_DIR} ${JAVA_SRC_DIR}/org/openkinect/*.java
javadoc -d dist/javadoc/ -sourcepath ${JAVA_SRC_DIR} ${JAVA_SRC_DIR}/org/openkinect/*.java
jar cvf dist/OpenKinect.jar -C build .
rm -R build
then i make the sh build.sh that give me
biogene@biogene:~/projet/process/libfreenect/wrappers/java$ sh build.sh Loading source file OpenKinect/src/org/openkinect/Acceleration.java...
Loading source file OpenKinect/src/org/openkinect/ColorFormat.java...
Loading source file OpenKinect/src/org/openkinect/Context.java...
Loading source file OpenKinect/src/org/openkinect/DepthFormat.java...
Loading source file OpenKinect/src/org/openkinect/Device.java...
Loading source file OpenKinect/src/org/openkinect/Image.java...
Loading source file OpenKinect/src/org/openkinect/LEDStatus.java...
Loading source file OpenKinect/src/org/openkinect/LogLevel.java...
Loading source file OpenKinect/src/org/openkinect/Logger.java...
Constructing Javadoc information...
Standard Doclet version 1.6.0_23
Building tree for all the packages and classes...
Generating dist/javadoc/org/openkinect/Acceleration.html...
Generating dist/javadoc/org/openkinect/ColorFormat.html...
Generating dist/javadoc/org/openkinect/Context.html...
Generating dist/javadoc/org/openkinect/DepthFormat.html...
Generating dist/javadoc/org/openkinect/Device.html...
Generating dist/javadoc/org/openkinect/Image.html...
Generating dist/javadoc/org/openkinect/LEDStatus.html...
Generating dist/javadoc/org/openkinect/Logger.html...
Generating dist/javadoc/org/openkinect/LogLevel.html...
Generating dist/javadoc/org/openkinect/package-frame.html...
Generating dist/javadoc/org/openkinect/package-summary.html...
Generating dist/javadoc/org/openkinect/package-tree.html...
Generating dist/javadoc/constant-values.html...
Building index for all the packages and classes...
Generating dist/javadoc/overview-tree.html...
Generating dist/javadoc/index-all.html...
Generating dist/javadoc/deprecated-list.html...
Building index for all classes...
Generating dist/javadoc/allclasses-frame.html...
Generating dist/javadoc/allclasses-noframe.html...
Generating dist/javadoc/index.html...
Generating dist/javadoc/help-doc.html...
Generating dist/javadoc/stylesheet.css...
manifest ajouté
ajout : org/ (entrée = 0) (sortie = 0) (0% stocké)
ajout : org/openkinect/ (entrée = 0) (sortie = 0) (0% stocké)
ajout : org/openkinect/Context.class (entrée = 2577) (sortie = 1265) (50% compressés)
ajout : org/openkinect/Acceleration.class (entrée = 149) (sortie = 127) (14% compressés)
ajout : org/openkinect/Image.class (entrée = 148) (sortie = 134) (9% compressés)
ajout : org/openkinect/ColorFormat.class (entrée = 893) (sortie = 488) (45% compressés)
ajout : org/openkinect/Device.class (entrée = 2813) (sortie = 1375) (51% compressés)
ajout : org/openkinect/Context$1.class (entrée = 968) (sortie = 595) (38% compressés)
ajout : org/openkinect/LEDStatus.class (entrée = 1187) (sortie = 630) (46% compressés)
ajout : org/openkinect/DepthFormat.class (entrée = 1003) (sortie = 542) (45% compressés)
ajout : org/openkinect/Logger.class (entrée = 146) (sortie = 125) (14% compressés)
ajout : org/openkinect/LogLevel.class (entrée = 1186) (sortie = 654) (44% compressés)
everything seems to be good at all..; but the ld give me
biogene@biogene:~/projet/process/libfreenect/wrappers/java$ ld dist/libOpenKinect.so
ld: warning: cannot find entry symbol _start; not setting start address
dist/libOpenKinect.so: undefined reference to `libusb_cancel_transfer'
dist/libOpenKinect.so: undefined reference to `libusb_close'
dist/libOpenKinect.so: undefined reference to `libusb_open'
dist/libOpenKinect.so: undefined reference to `libusb_claim_interface'
dist/libOpenKinect.so: undefined reference to `libusb_alloc_transfer'
dist/libOpenKinect.so: undefined reference to `libusb_free_device_list'
dist/libOpenKinect.so: undefined reference to `libusb_get_device_list'
dist/libOpenKinect.so: undefined reference to `libusb_control_transfer'
dist/libOpenKinect.so: undefined reference to `libusb_submit_transfer'
dist/libOpenKinect.so: undefined reference to `libusb_exit'
dist/libOpenKinect.so: undefined reference to `libusb_init'
dist/libOpenKinect.so: undefined reference to `libusb_free_transfer'
dist/libOpenKinect.so: undefined reference to `libusb_handle_events'
dist/libOpenKinect.so: undefined reference to `libusb_get_device_descriptor'
dist/libOpenKinect.so: undefined reference to `libusb_release_interface'
for information:
uname -a
Linux biogene 3.0.0-12-generic-pae #20-Ubuntu SMP Fri Oct 7 16:37:17 UTC 2011 i686 i686 i386 GNU/Linux
biogene@biogene:~/projet/process/libfreenect/wrappers/java$ ldconfig -p | grep usb
libusbmuxd.so.1 (libc6) => /usr/lib/libusbmuxd.so.1
libusb-1.0.so.0 (libc6) => /lib/i386-linux-gnu/libusb-1.0.so.0
libusb-1.0.so.0 (libc6) => /usr/lib/i386-linux-gnu/libusb-1.0.so.0
libusb-1.0.so (libc6) => /usr/lib/i386-linux-gnu/libusb-1.0.so
libusb-0.1.so.4 (libc6) => /lib/libusb-0.1.so.4
libusb-0.1.so.4 (libc6) => /usr/lib/libusb-0.1.so.4
processing 1.5.1
thanks to all personn that can save or help me
1