您好 我需要为Android NDK r5b构建OpenSSL库,今天它将是我用户战斗的第二天。这是我做过的简短列表
/预建/窗/ bin中/臂-Linux的androideabi- SharedLibrary:libcrypto.so arm-linux-androideabi -g ++。exe:CreateProcess:没有这样的文件或目录 make: * [/cygdrive/c/AndroidDev/AndroidOpenSSL/obj/local/armeabi/libcrypto.so] 错误1 *
我上次使用make时已经10年了,我确信这是g ++路径的问题。为工具链添加了一些调试,得到了:
TOOLCHAIN_NAME:arm-linux-androideabi-4.4.3 TOOLCHAIN_PREFIX:/cygdrive/c/Android_NDK/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi -
对我来说都很好,因为/cygdrive/c/Android_NDK/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/确实存在,而arm-linux-androideabi-g ++。exe是对的那里:(
有没有人遇到同样的问题?我真的不知道在哪里看任何未来:( 将会感激帮助
答案 0 :(得分:2)
看起来只有我有这样的问题。这是我发现的解决方案,可能有人会弄清楚为什么会发生这种情况。 保存命令行以分隔名为 bild_data 的文件(从ndk-build输出),然后从g ++调用中删除,这样我的构建文件只有文件列表和所需的标志。然后我刚从cygwin执行 arm-linux-androideabi-g ++ @build_data 之后,我得到了我的'珍贵'libcrypto.so, ndk-build 再次执行了libcrypto.so alerdy从命令行构建,构建了openssl库。 对我来说,看起来超过31kb的命令行不适合cygwin缓冲区:(
答案 1 :(得分:2)
一种解决方案也是缩短openssl构建路径,例如。从c:\ code \ openssl-android到c:\ ssl
答案 2 :(得分:1)
我在Windows(cygwin)上构建同样的问题,缩短项目目录的路径(请参阅芒果的答案)对我有用。