gpt4 book ai didi

linux - cSipSimple 应用程序错误 :- 'SL_ANDROID_STREAM_VOICE' undeclared (first use in this function)

转载 作者:太空宇宙 更新时间:2023-11-04 09:50:01 26 4
gpt4 key购买 nike

我正在尝试在 Linux 上运行 cSipSimple 应用程序。要构建它,我正在使用链接 http://code.google.com/p/csipsimple/wiki/HowToBuild .首先我已经安装了所有的包。然后 ndk 和 sdk 已经安装在我的 linux 机器上。所以我只是在 .bashrc 中设置了以下路径

"export ANDROID_NDK=/home/nishant/JAVA/android-ndk-r6m-linux/ export ANDROID_SDK=/home/nishant/JAVA/android-sdk-linux_86/ export PATH=$PATH:$ANDROID_SDK/tools:$ANDROID_SDK/platform-tools:$ANDROID_NDK"

现在当我运行命令 make 时,出现以下错误:-

/home/nishant/CSipSimple/jni//pjsip/android_toolchain/pjmedia/../../sources/pjmedia//../../android_sources/pjmedia/src//pjmedia-audiodev/opensl_dev.c: In function 'opensl_create_stream': /home/nishant/CSipSimple/jni//pjsip/android_toolchain/pjmedia/../../sources/pjmedia//../../android_sources/pjmedia/src//pjmedia-audiodev/opensl_dev.c:532: error: 'SL_ANDROID_STREAM_VOICE' undeclared (first use in this function) /home/nishant/CSipSimple/jni//pjsip/android_toolchain/pjmedia/../../sources/pjmedia//../../android_sources/pjmedia/src//pjmedia-audiodev/opensl_dev.c:532: error: (Each undeclared identifier is reported only once /home/nishant/CSipSimple/jni//pjsip/android_toolchain/pjmedia/../../sources/pjmedia//../../android_sources/pjmedia/src//pjmedia-audiodev/opensl_dev.c:532: error: for each function it appears in.) /home/nishant/CSipSimple/jni//pjsip/android_toolchain/pjmedia/../../sources/pjmedia//../../android_sources/pjmedia/src//pjmedia-audiodev/opensl_dev.c:557: error: 'SL_ANDROID_KEY_STREAM_TYPE' undeclared (first use in this function) /home/nishant/CSipSimple/jni//pjsip/android_toolchain/pjmedia/../../sources/pjmedia//../../android_sources/pjmedia/src//pjmedia-audiodev/opensl_dev.c:654: error: 'SL_ANDROID_RECORDING_PRESET_GENERIC' undeclared (first use in this function) /home/nishant/CSipSimple/jni//pjsip/android_toolchain/pjmedia/../../sources/pjmedia//../../android_sources/pjmedia/src//pjmedia-audiodev/opensl_dev.c:669: error: 'SL_ANDROID_KEY_RECORDING_PRESET' undeclared (first use in this function) make[1]: *

[/home/nishant/CSipSimple/obj/local/armeabi/objs/pj_opensl_dev/../../android_sources/pjmedia/src//pjmedia-audiode

宏“SL_ANDROID_STREAM_VOICE”和其他宏,定义在文件“OpenSLES_AndroidConfiguration.h”中,位于 ndk.h 中。我不明白,我正在提供 ndk 路径,但仍然无法跟踪它。

我是否缺少为 NDK 设置路径的内容?

请帮忙

谢谢

最佳答案

我在 ndk 源代码中跟踪版本 android-ndk-r8d,文件 platforms/android-9/arch-arm/usr/include/SLES/OpenSLES_AndroidConfiguration.h:

第 20 行:

#ifdef __cplusplus
extern "C" {

// some source code

}
#endif

我认为,这样定义比较好:

#ifdef __cplusplus
extern "C" {
#endif

// some source code

#ifdef __cplusplus
}
#endif

我将 platforms/android-9/arch-arm/usr/include/SLES/OpenSLES_AndroidConfiguration.h 中的所有定义移动到 pjmedia/src//pjmedia-audiodev/opensl_dev.c 并且它工作正常。但这不是好的解决方案。

关于linux - cSipSimple 应用程序错误 :- 'SL_ANDROID_STREAM_VOICE' undeclared (first use in this function),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12158586/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com