1
  • 最佳答案

    看Log.


    FAILED: out/soong/.intermediates/system/libartpalette/libartpalette-system/android_arm_armv7-a-neon_shared/unstripped/libartpalette-system.so



    ld.lld: error: version script assignment of 'LIBARTPALETTE_1' to symbol 'PaletteTraceEnabled' failed: symbol not defined

    ld.lld: error: version script assignment of 'LIBARTPALETTE_1' to symbol 'PaletteShouldReportDex2oatCompilation' failed: symbol not defined

    ld.lld: error: version script assignment of 'LIBARTPALETTE_1' to symbol 'PaletteNotifyStartDex2oatCompilation' failed: symbol not defined

    ld.lld: error: version script assignment of 'LIBARTPALETTE_1' to symbol 'PaletteNotifyEndDex2oatCompilation' failed: symbol not defined

    ld.lld: error: version script assignment of 'LIBARTPALETTE_1' to symbol 'PaletteNotifyDexFileLoaded' failed: symbol not defined

    ld.lld: error: version script assignment of 'LIBARTPALETTE_1' to symbol 'PaletteNotifyOatFileLoaded' failed: symbol not defined

    ld.lld: error: version script assignment of 'LIBARTPALETTE_1' to symbol 'PaletteShouldReportJniInvocations' failed: symbol not defined

    ld.lld: error: version script assignment of 'LIBARTPALETTE_1' to symbol 'PaletteNotifyBeginJniInvocation' failed: symbol not defined

    ld.lld: error: version script assignment of 'LIBARTPALETTE_1' to symbol 'PaletteNotifyEndJniInvocation' failed: symbol not defined




    error: linker command failed with exit code 1 (use -v to see invocation)



    遇到错误前面找failed,error,exception这些关键字。



    前面说链接失败,提示你看看是不是你的CLang版本对不对得上。这只是编译器的提示,但是不是由这个原因引起的呢?不一定。就像你mysql语法错误了,也是提示你版本对不对。也就是说,在不同的版本语法可能不一样。



    那是不是有可能是前面那个error导致后面的链接失败呢?


    前面报错是啥?


    symbol not defined



    没定义,没定义咋整?查找一下,看看是否存在的?不存在,是不是代码没有同步全呢?存在的话代码有没有导入呢?一是导入了,毕竟是官方的源码。


    顺着线索去解决吧。

    1153952789488054272  评论     打赏       拉大锯
    • 这其实已经告诉你为什么不行了,三个原因:

      1、内存最小要求接近16G,你目前可支配的内存只有12.4G

      2、某些配置项有问题

      3、-j 后面追加的数值减少


      我并不懂编译源码,我只是看到了里面的日志呈现的问题,你可以根据这三个思路看看怎么去优化

      1255088796991492096  评论     打赏       相思病
      • 拉大锯  回复 @相思病
        他编译的版本比较高,配置要求比较大。soong构建是android7.0开始的。
        拉大锯 2021-06-11 09:44   回复 1153952789488054272
      • ChainSmoker  回复 @拉大锯
        嗷,原来如此,我还没接触过编译源码,后面有时间我也试试看
        ChainSmoker 2021-06-15 09:02   回复 1255088796991492096
      1. 使用多少个线程编译的啊
      2. 编译的时候的命令是啥
      1139423796017500160  评论     打赏       断点-含光君
      • ashkhl  回复 @断点-含光君
        编译时候的命令是 m -j16
        ashkhl 2021-06-11 09:15   回复 1403005181217517570
      • 断点-含光君  回复 @ashkhl
        https://stackoverflow.com/questions/64027042/aosp-building-failed-ckati-failed-with-exit-status-1
        断点-含光君 2021-06-11 09:26   回复 1139423796017500160
      • 断点-含光君  回复 @ashkhl
        这里有同样的问题,是不是你分配的内存不够啊。尝试分配大一点内存给虚拟机
        断点-含光君 2021-06-11 09:26   回复 1139423796017500160
      • ashkhl  回复 @断点-含光君
        应该不是内存的问题,我刚才内存拉满试了一下,还是直接报错,一直观察内存占用也并没有吃满
        ashkhl 2021-06-11 09:56   回复 1403005181217517570
      • 拉大锯  回复 @ashkhl
        解决了?解决了你得说说你的解决方法[捂脸]
        拉大锯 2021-06-11 12:11   回复 1153952789488054272
      • ashkhl  回复 @拉大锯
        应该是源码远程库的问题,昨天同步完但是应该有文件缺失,今天早上重新同步后多了一些文件,然后就可以了
        ashkhl 2021-06-11 12:42   回复 1403005181217517570
      • 拉大锯  回复 @ashkhl
        嗯,Okay。如果同步源码不方便,可以直接下载我网盘上的。
        拉大锯 2021-06-11 14:30   回复 1153952789488054272
    相关问题
    断点-含光君 · aosp / Android / Ubuntu
    2021-06-05 11:53 14 20
    断点-含光君 · aosp
    2021-06-05 13:37 21 20
    半修缘半修卿 · aosp
    2021-07-22 10:24 6 2
    郝樊阿 · 网站稳定性
    2021-08-03 16:54 14 2
    2021-08-01 11:59 8 2
    你想不到的人 · 领劵联盟
    2021-07-31 17:27 2 2
    睿智的阿东 · Android / 编译
    2021-07-29 17:10 10 2
    豪豪好吗 · Language
    2021-07-28 09:20 11 2
    liweichao21 · 安卓模拟开发
    2021-07-25 02:17 7 2
    待驯养的小狮子 · 追加保存数据
    2021-07-25 00:09 8 2
    liweichao21 · 观看视频
    2021-07-24 01:03 9 2
    待驯养的小狮子 · 数据保存
    2021-07-22 18:33 20 2
    半修缘半修卿 · aosp
    2021-07-22 10:24 6 2