Я попытался построить библиотеку cryptopp для android.I использовал эту часть учебника. https://www.cryptopp.com/wiki/Android_(Command_Line)Добавление Cryptopp в Android.mk
$ cat build-all-android.sh
#!/bin/bash
for arch in armeabi armeabi-v7a armeabi-v7a-hard arm64-v8a mips mips64 x86 x86_64
do
. ./setenv-android.sh $arch stlport
if [ "$?" -eq "0" ]; then
make -f GNUmakefile-cross distclean
make -f GNUmakefile-cross static dynamic
sudo make -f GNUmakefile-cross install PREFIX=/usr/local/cryptopp/android-$arch
fi
done
Я был в состоянии сделать библиотеки. Моя проблема: я не могу добавить ее в свой проект. Кажется, мне нужно отредактировать файл Android.mk, но я не могу сделать это правильно. Я добавил этот блок к моему Anroid.mk
#########################################################
# STLport library
include $(CLEAR_VARS)
STLPORT_INCL := /Applications/Cocos/Android/android-ndk-r10e/sources/cxx-stl/stlport
STLPORT_LIB := /Applications/Cocos/Android/android-ndk-r10e/sources/cxx-stl/stlport/libs/$(TARGET_ARCH_ABI)
LOCAL_MODULE := stlport_shared
LOCAL_SRC_FILES := $(STLPORT_LIB)/libstlport_shared.so
LOCAL_CPP_FEATURES += rtti exceptions
LOCAL_EXPORT_CPPFLAGS :=
LOCAL_EXPORT_C_INCLUDES := $(STLPORT_INCL)
include $(PREBUILT_SHARED_LIBRARY)
LOCAL_SHARED_LIBRARIES := stlport_shared
#########################################################
# Crypto++ library
include $(CLEAR_VARS)
CRYPTOPP_INCL := /usr/local/cryptopp/android-$(TARGET_ARCH_ABI)/include
CRYPTOPP_LIB := /usr/local/cryptopp/android-$(TARGET_ARCH_ABI)/lib
LOCAL_MODULE := cryptopp
LOCAL_SRC_FILES := $(CRYPTOPP_LIB)/libcryptopp.so
LOCAL_CPP_FEATURES := rtti exceptions
LOCAL_EXPORT_C_INCLUDES := $(CRYPTOPP_INCL) $(CRYPTOPP_INCL)/cryptopp
include $(PREBUILT_SHARED_LIBRARY)
LOCAL_SHARED_LIBRARIES := cryptopp
#########################################################
я на основе этого на Crypto ++ странице вики Android Activity которая ссылается AndroidPRNG, который демонстрирует использование Crypto ++, как общий объект на Android.
Я застреваю, потому что я не могу заставить его работать. Я очень новичок в андроиде, поэтому не знаю, что с этим делать. Мне удалось запустить версию ios. Я последовал за учебником XCode. Это только то, что делает меня сумасшедшим. Буду признателен за всю помощь, которую я могу получить. Что-то не так с тем, как я строю? После того, как я построил, скопирую ли я его в свой проект или просто связал установленный вариант в порядке? Как правильно добавить/связать его с моим проектом? Извините за задание стольких вопросов.
PS: Я использую cocos2dx для своего проекта. Может быть, стоит упомянуть.
Что делает * «Моя проблема заключается в том, что я не могу добавить ее в свой проект» * и * «Я застрял, потому что я не могу заставить ее работать». * Означает? Нам действительно ничего не полезно, чтобы помочь вам. – jww
Кроме того, если Cocos2d-x использует среду исполнения GNU, вам понадобится перейти на GNU и прекратить использование STLport. Смешивание и совпадение с этими режимами времени приводит к непонятным ошибкам памяти. – jww
@jww Я уже задал свой вопрос. Как правильно его построить? Что я буду делать со встроенной библиотекой, скопировать ее в проект или просто связать с ней после ее установки? Как правильно связать его с моим проектом в android.mk? – cessmestreet