我使用JLirc在java中访问我的遥控器。它使用本机方法通过套接字连接到lirc。不幸的是,JLirc的最后一次更新是在15年前,所以它不支持64位系统。
因此我转向JUDS,它应该能够给我另一种方法来创建一个连接到lirc的套接字。
我使用我认为的标准C方法来编译通过java(libunixdomainsocket-linux-x86_64.so
)访问的库。我使用autoconf
创建了配置文件,使用./configure
创建了makefile。
如果我现在运行make
,则会收到以下错误:
/usr/bin/javah -sourcepath . -o com/etsy/net/UnixDomainSocket.h com.etsy.net.UnixDomainSocket
gcc -g -O2 -shared -fPIC -I /usr/include -I /usr/include/linux -I /usr/lib/jvm/java-7-openjdk-amd64/include -m32 -o libunixdomainsocket-linux-i386.so com/etsy/net/UnixDomainSocket.c
In file included from /usr/include/stdio.h:74:0,
from /usr/lib/jvm/java-7-openjdk-amd64/include/jni.h:39,
from com/etsy/net/UnixDomainSocket.h:2,
from com/etsy/net/UnixDomainSocket.c:6:
/usr/include/libio.h:306:3: error: unknown type name ‘size_t’
size_t __pad5;
我看了on this question,包括<stddef.h>
会有所帮助。但是,在尝试编译的.c源文件中添加行#include <stddef.h>
并没有帮助。
知道我能做些什么来解决这个问题吗?