最近在学习纯c++ android编程(使用NDK),遇到一个问题:如果一个Solution中有多个Project,其中一个是启动的Project,其它是编译生成动态库(或静态库),就像是在vs中多个工程那样,最终怎样才能变成可执行程序呢,我之前所练习的程序都是只有一个so文件。
希望我的表述大家可以看明白啊,先谢过了!

解决方案 »

  1.   

    一个so和多个so也没啥区别,都链接进来就是
      

  2.   

    谢谢 challchampion 的回复,但还有一个问题请教一下哈,我现在的工程一编译就报错:
    make: execvp: /cygdrive/d/android-ndk-r7/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-ar: Argument list too long
    我google了,但没找到好的办法,你遇到过这种错误吗? 谢谢!
      

  3.   

    你是用 windows下面编译的吧, 试试在linux环境下编,我也碰到过类似的问题,貌似是cygwin环境的问题
      

  4.   

    谢谢sandmangu的回复,这个错误 make: execvp: /cygdrive/d/android-ndk-r7/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-ar: Argument list too long是因为一个静态库中的文件太多以及路径太深,我使用junction.exe把深的文件映射到另外一个文件夹就好了。但现在遇到一个更为棘手的问题,下面是一个简短的描述:在A.a中实现了一个函数functionA, 然后在B.a中有很多地方用到这个函数,大多数使用的地方可以链接成功,只有几个地方老是链接不过去! 困扰好几天了,请帮帮忙啊!!!