diff options
Diffstat (limited to 'demo/embedding_test.c')
-rw-r--r-- | demo/embedding_test.c | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/demo/embedding_test.c b/demo/embedding_test.c new file mode 100644 index 0000000..ede8cb9 --- /dev/null +++ b/demo/embedding_test.c @@ -0,0 +1,43 @@ +/* There are two options: + + =====1===== + + Link this program with _embedding_test.so. + E.g. with gcc: + + gcc -o embedding_test embedding_test.c _embedding_cffi*.so + + You must then run the executable with the right command + (LD_LIBRARY_PATH on Linux), otherwise it won't find the + _embedding_cffi*.so: + + LD_LIBRARY_PATH=. ./embedding_test + + There are platform-specific options to gcc to avoid needing + that, too. Linux: + + gcc -o embedding_test embedding_test.c _embedding_cffi*.so \ + -Wl,-rpath=\$ORIGIN/ + + =====2===== + + Compile and link the _embedding_test.c source code together with + this example (e.g. with PyPy): + + gcc -o embedding_test embedding_test.c _embedding_cffi.c \ + -I/opt/pypy/include -pthread -lpypy-c +*/ + +#include <stdio.h> + +extern int add(int x, int y); + + +int main(void) +{ + int res = add(40, 2); + printf("result: %d\n", res); + res = add(100, -5); + printf("result: %d\n", res); + return 0; +} |