Форум для тех, кто программирует под Android
Anonymous
Получение фатальной ошибки: 'features.h' файл не найден #include , пытаясь сгенерировать файлы.
Сообщение
Anonymous » 01 окт 2025, 18:00
Я использую библиотеку CSIPSIMPLE для функции вызова VoIP в моем приложении Android, и недавно мое приложение было отвергнуто в Play Store, потому что версия OpenSSL с этими LIBS была старой. Мне нужно обновить файлы .so pjsip в соответствии с новой /поддерживаемой версией OpenSSL. Я использую их в качестве ссылок:
1.
https://medium.com/@shehrazjazib/pjsip- ... 677ea68373
2.
https://trac.pjsip.org/repos/wiki/getti ... sslsupport
Я могу генерировать сценарий настройки инструментов и запустить. Также может успешно выполнить DEP. Но я получаю ошибку во время выполнения сделать < /strong> как SO: < /p>
Код: Выделить всё
In file included from ../src/pjmedia-codec/openh264.cpp:19:
In file included from ../include/pjmedia-codec/openh264.h:22:
In file included from ../include/pjmedia-codec/types.h:28:
In file included from ../include/pjmedia-codec/config.h:35:
In file included from ../include/pjmedia/types.h:28:
In file included from ../include/pjmedia/config.h:27:
In file included from ../../pjlib/include/pj/config.h:313:
In file included from ../../pjlib/include/pj/compat/size_t.h:28:
In file included from /mnt/e/AndroidNDK/android-ndk-r17-linux-x86_64/android-ndk-r17/sources/cxx-stl/llvm-libc++/include/stddef.h:40:
/mnt/e/AndroidNDK/android-ndk-r17-linux-x86_64/android-ndk-r17/sources/cxx-stl/llvm-libc++/include/__config:169:10: fatal error:
'features.h' file not found
#include
^~~~~~~~~~~~
1 error generated.
/mnt/e/PJSIP/pjproject-2.7.2/build/rules.mak:173: recipe for target 'output/pjmedia-codec-arm-unknown-linux-androideabi/openh264.o' failed
make[2]: *** [output/pjmedia-codec-arm-unknown-linux-androideabi/openh264.o] Error 1
make[2]: Leaving directory '/mnt/e/PJSIPOpenSSL/pjproject-2.7.2/pjmedia/build'
Makefile:220: recipe for target 'libpjmedia-codec-arm-unknown-linux-androideabi.a' failed
make[1]: *** [libpjmedia-codec-arm-unknown-linux-androideabi.a] Error 2
make[1]: Leaving directory '/mnt/e/PJSIPOpenSSL/pjproject-2.7.2/pjmedia/build'
Makefile:14: recipe for target 'all' failed
make: *** [all] Error 1
< /code>
Я новичок в Native Android, поэтому я очень мало об этом знаю. Я могу вставить функции .h из папки /usr /include, но это, в свою очередь, получает ошибку для других недостающих заголовок. Мне нужно иметь возможность генерировать файлы. При попытке генерировать файлы PJSIP с помощью OpenSSL я получаю эту ошибку линкера: < /p>
make depend && make _all
make[1]: Entering directory `/home/rspl/Downloads/openssl-1.1.0h'
make[1]: Leaving directory `/home/rspl/Downloads/openssl-1.1.0h'
make[1]: Entering directory `/home/rspl/Downloads/openssl-1.1.0h'
CC="/home/rspl/Downloads/android-ndk-r17/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -Iusr/include --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm" /usr/bin/perl crypto/aes/asm/aes-armv4.pl void crypto/aes/aes-armv4.S
( trap "rm -f crypto/aes/aes-armv4.o.*" INT 0; \
/home/rspl/Downloads/android-ndk-r17/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -Iusr/include --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -E -I. -Icrypto/include -Iinclude -Icrypto -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE crypto/aes/aes-armv4.S | \
/usr/bin/perl -ne '/^#(line)?\s*[0-9]+/ or print' > crypto/aes/aes-armv4.o.s && \
/home/rspl/Downloads/android-ndk-r17/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -Iusr/include --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -c -o crypto/aes/aes-armv4.o crypto/aes/aes-armv4.o.s )
/home/rspl/Downloads/android-ndk-r17/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -Iusr/include --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_cbc.d.tmp -MT crypto/aes/aes_cbc.o -c -o crypto/aes/aes_cbc.o crypto/aes/aes_cbc.c
/home/rspl/Downloads/android-ndk-r17/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -Iusr/include --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_cfb.d.tmp -MT crypto/aes/aes_cfb.o -c -o crypto/aes/aes_cfb.o crypto/aes/aes_cfb.c
/home/rspl/Downloads/android-ndk-r17/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -Iusr/include --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ecb.d.tmp -MT crypto/aes/aes_ecb.o -c -o crypto/aes/aes_ecb.o crypto/aes/aes_ecb.c
crypto/aes/aes_ecb.c:10:20: fatal error: assert.h: No such file or directory
#include
^
compilation terminated.
make[1]: *** [crypto/aes/aes_ecb.o] Error 1
make[1]: Leaving directory `/home/rspl/Downloads/openssl-1.1.0h'
make: *** [all] Error 2
Поскольку GCC не может найти файл заголовка в Crypto/inclod>
Подробнее здесь:
https://stackoverflow.com/questions/503 ... -while-try
1759330825
Anonymous
Я использую библиотеку CSIPSIMPLE для функции вызова VoIP в моем приложении Android, и недавно мое приложение было отвергнуто в Play Store, потому что версия OpenSSL с этими LIBS была старой. Мне нужно обновить файлы .so pjsip в соответствии с новой /поддерживаемой версией OpenSSL. Я использую их в качестве ссылок: 1. https://medium.com/@shehrazjazib/pjsip-build-for-android-with-integration-of-g729-codec-7d677ea68373 2. https://trac.pjsip.org/repos/wiki/getting-started/android#opensslsupport Я могу генерировать сценарий настройки инструментов и запустить. Также может успешно выполнить DEP. Но я получаю ошибку во время выполнения сделать < /strong> как SO: < /p> [code]In file included from ../src/pjmedia-codec/openh264.cpp:19: In file included from ../include/pjmedia-codec/openh264.h:22: In file included from ../include/pjmedia-codec/types.h:28: In file included from ../include/pjmedia-codec/config.h:35: In file included from ../include/pjmedia/types.h:28: In file included from ../include/pjmedia/config.h:27: In file included from ../../pjlib/include/pj/config.h:313: In file included from ../../pjlib/include/pj/compat/size_t.h:28: In file included from /mnt/e/AndroidNDK/android-ndk-r17-linux-x86_64/android-ndk-r17/sources/cxx-stl/llvm-libc++/include/stddef.h:40: /mnt/e/AndroidNDK/android-ndk-r17-linux-x86_64/android-ndk-r17/sources/cxx-stl/llvm-libc++/include/__config:169:10: fatal error: 'features.h' file not found #include ^~~~~~~~~~~~ 1 error generated. /mnt/e/PJSIP/pjproject-2.7.2/build/rules.mak:173: recipe for target 'output/pjmedia-codec-arm-unknown-linux-androideabi/openh264.o' failed make[2]: *** [output/pjmedia-codec-arm-unknown-linux-androideabi/openh264.o] Error 1 make[2]: Leaving directory '/mnt/e/PJSIPOpenSSL/pjproject-2.7.2/pjmedia/build' Makefile:220: recipe for target 'libpjmedia-codec-arm-unknown-linux-androideabi.a' failed make[1]: *** [libpjmedia-codec-arm-unknown-linux-androideabi.a] Error 2 make[1]: Leaving directory '/mnt/e/PJSIPOpenSSL/pjproject-2.7.2/pjmedia/build' Makefile:14: recipe for target 'all' failed make: *** [all] Error 1 < /code> Я новичок в Native Android, поэтому я очень мало об этом знаю. Я могу вставить функции .h из папки /usr /include, но это, в свою очередь, получает ошибку для других недостающих заголовок. Мне нужно иметь возможность генерировать файлы. При попытке генерировать файлы PJSIP с помощью OpenSSL я получаю эту ошибку линкера: < /p> make depend && make _all make[1]: Entering directory `/home/rspl/Downloads/openssl-1.1.0h' make[1]: Leaving directory `/home/rspl/Downloads/openssl-1.1.0h' make[1]: Entering directory `/home/rspl/Downloads/openssl-1.1.0h' CC="/home/rspl/Downloads/android-ndk-r17/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -Iusr/include --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm" /usr/bin/perl crypto/aes/asm/aes-armv4.pl void crypto/aes/aes-armv4.S ( trap "rm -f crypto/aes/aes-armv4.o.*" INT 0; \ /home/rspl/Downloads/android-ndk-r17/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -Iusr/include --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -E -I. -Icrypto/include -Iinclude -Icrypto -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE crypto/aes/aes-armv4.S | \ /usr/bin/perl -ne '/^#(line)?\s*[0-9]+/ or print' > crypto/aes/aes-armv4.o.s && \ /home/rspl/Downloads/android-ndk-r17/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -Iusr/include --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -c -o crypto/aes/aes-armv4.o crypto/aes/aes-armv4.o.s ) /home/rspl/Downloads/android-ndk-r17/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -Iusr/include --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_cbc.d.tmp -MT crypto/aes/aes_cbc.o -c -o crypto/aes/aes_cbc.o crypto/aes/aes_cbc.c /home/rspl/Downloads/android-ndk-r17/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -Iusr/include --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_cfb.d.tmp -MT crypto/aes/aes_cfb.o -c -o crypto/aes/aes_cfb.o crypto/aes/aes_cfb.c /home/rspl/Downloads/android-ndk-r17/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc -Iusr/include --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -I. -Icrypto/include -Iinclude -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-1.1\"" -Wall -O3 -pthread -mandroid -fPIC --sysroot=/home/rspl/Downloads/android-ndk-r17/platforms/android-27/arch-arm -Wa,--noexecstack -fPIC -DOPENSSL_USE_NODELETE -MMD -MF crypto/aes/aes_ecb.d.tmp -MT crypto/aes/aes_ecb.o -c -o crypto/aes/aes_ecb.o crypto/aes/aes_ecb.c crypto/aes/aes_ecb.c:10:20: fatal error: assert.h: No such file or directory #include ^ compilation terminated. make[1]: *** [crypto/aes/aes_ecb.o] Error 1 make[1]: Leaving directory `/home/rspl/Downloads/openssl-1.1.0h' make: *** [all] Error 2 [/code] Поскольку GCC не может найти файл заголовка в Crypto/inclod> Подробнее здесь: [url]https://stackoverflow.com/questions/50386582/getting-fatal-error-features-h-file-not-found-include-features-h-while-try[/url]