README.md (1416B)
1 # SWIG bindings 2 3 ## Building 4 5 ### JNI SWIG bindings 6 7 ```shell 8 $ gcc -shared -fPIC -fno-strict-aliasing -O2 \ 9 -I/path/to/your/jdk/includes \ 10 libwebp_java_wrap.c \ 11 -lwebp \ 12 -o libwebp_jni.so 13 ``` 14 15 Example usage: 16 17 ```java 18 import com.google.webp.libwebp; 19 20 import java.lang.reflect.Method; 21 22 public class libwebp_jni_example { 23 static { 24 System.loadLibrary("webp_jni"); 25 } 26 27 /** 28 * usage: java -cp libwebp.jar:. libwebp_jni_example 29 */ 30 public static void main(String argv[]) { 31 final int version = libwebp.WebPGetDecoderVersion(); 32 System.out.println("libwebp version: " + Integer.toHexString(version)); 33 34 System.out.println("libwebp methods:"); 35 final Method[] libwebpMethods = libwebp.class.getDeclaredMethods(); 36 for (int i = 0; i < libwebpMethods.length; i++) { 37 System.out.println(libwebpMethods[i]); 38 } 39 } 40 } 41 ``` 42 43 ```shell 44 $ javac -cp libwebp.jar libwebp_jni_example.java 45 $ java -Djava.library.path=. -cp libwebp.jar:. libwebp_jni_example 46 ``` 47 48 ### Python SWIG bindings: 49 50 ```shell 51 $ python setup.py build_ext 52 $ python setup.py install --prefix=pylocal 53 ``` 54 55 Example usage: 56 57 ```python 58 import glob 59 import sys 60 sys.path.append(glob.glob('pylocal/lib/python*/site-packages')[0]) 61 62 from com.google.webp import libwebp 63 print "libwebp decoder version: %x" % libwebp.WebPGetDecoderVersion() 64 65 print "libwebp attributes:" 66 for attr in dir(libwebp): print attr 67 ```