0

我正在为 arm64-v8 构建 android 项目,我正在使用 NDK-r10e。我已经使用它的依赖项(Glib 2.35.8)构建了构建 Libnice 0.13,并且我已经编译了 Glib 的所有依赖项(intl,iconv,ffi)。所以我成功地构建了 Glib 的静态库,然后使用我的 glib 库构建了一个 Libnice 静态库。现在我正在使用这些静态库来构建我的 android 项目,我收到以下错误,我不知道为什么它会给我这个链接器错误,因为在构建这些库时,一切对我来说都很好。

libnice.a(pseudotcp.o): In function `pseudo_tcp_socket_get_type':
/Users/aagman/Desktop/LibNIce/libnic/Newlibnice/jni/files/agent/pseudotcp.c:78:  undefined reference to `G_STATIC_ASSERT'

In function `nice_agent_get_type':
/Users/aagman/Desktop/LibNIce/libnic/Newlibnice/jni/files/agent/agent.c:85:      undefined reference to `G_STATIC_ASSERT'
/Users/aagman/Desktop/LibNIce/libnic/Newlibnice/jni/files/agent/agent.c:85:  undefined reference to `G_STATIC_ASSERT'
4

1 回答 1

0

如果为 64 位构建传递了“无符号整数”的地址,则会发生此错误,这对于 32 位构建是可以的,但对于 64 位应该是无符号长整数。在命令行上传递 -m64 / -m32 来控制构建目标。

于 2015-10-05T12:39:20.537 回答