【MTK 6737】Modem编译

12 篇文章 2 订阅
11 篇文章 0 订阅

之前安卓7.1的编译所使用的是MTK提供的3.18内核,但并未对Modem进行编译和配置。

  • 查看ReleseNote发现需要查看"Build_Configure_Modem_MOLY"这张表,解压MT67xx_(xxx)_MOLY.LR9.W1444.MD.LWTG.MP.Vx.tar.gz到某文件,并在make目录下查看

                                                                           图 一

  • 执行的命令则是./make.sh "SM67xx(Lxx_xxx).mak" new,但是这里需要的软件依赖跟编译安卓7.1的不同。需要的arm-none-eabi-gcc则需要编译,复制到tools目录下,并使其具有 可执行权限。包括libexec下的"cc1"。

                                                                         图二

TIP:执行后make " " new后,会遇到一个找不到生成的.elf文件,让你查看link.log的错误,但是里面实际是没有任何输出的。只在网上找到以下的说明。

         Link过程采用了auto memory configuration的代码动态调整机制。调整过程:假如上一次link成功后,工程会保留上一次link的配置文件,以后每次link都会先按照上一次link成功的配置文件来链接。如果第一次link失败,工程并不会报错和停止编译,而是进行auto memory configuration,将代码重新分配到不同的段(不同的段有不同的压缩率,比如ZIMAGE段压缩率是60%,Alice段的压缩率是83%,ROM段没有压缩),以达到ROM空间和RAM空间的使用的平衡。然后根据auto memory configuration调整后的配置进行第二次link, 如果第二次lin成功,表明编译成功,并且保留该配置;如果第二次link失败,这时工程报错并停止编译。

      但是几个log虽然都有异常,但是无从下手。不过在移动文件到其他目录后就编译过了,并且将其移回原目录也编译成功了...

同时需要注意tools/NVRAMStatistic/nvram_auto_gen.mak 下高层次版本问题,16.04自带的5.4.0版本实际是过高的,需要修改

ifeq ($(strip $(OS_VERSION)),MSWin32)
    GCC := "tools/MinGW/bin/gcc.exe"
    LINKER_SCRIPT := tools/NVRAMStatistic/src/nvram_auto_gen_windows.txt
    MV := perl tools/init/move.pl -f
    override PATH := tools/MinGW/bin:${PATH}
        export $(PATH)
else
    GCC := "/usr/bin/gcc"
    LINKER_SCRIPT := tools/NVRAMStatistic/src/nvram_auto_gen_linux.txt
    MV := mv
endif
下载某版本可以用update-alternatives --config gcc进行选择,也可以直接更改GCC := "/%yourpath%/gcc"。

2.执行

perl device/mediatek/build/build/tools/modemRenameCopy.pl [Modem 代码路径] [编译Modem所使用的.mak文件 ]

如 perl *****/modemRenameCopy.pl  ./Moly/  MT67xx_LTG_DSDS

  • 自动为所要复制到alps/vendor/mediatek/proprietary/modem/${modem} 下的文件重命名,并生成一个Android.mk文件,alps/vendor/mediatek/proprietary/该路径下是没有modem这个文件夹的,需要自己创建。
  • 请确保在alps/vendor/mediatek/proprietary/modem/中有一个Android.mk。 你可以从alps/device/mediatek/build/build/tools/modem/modem_Android.mk复制到alps/vendor/mediatek/proprietary/modem/Android.mk

3.在alps/device/${company}/${project}/ProjectConfig.mk找到相应的ProjectConfig.mk,配置CUSTOM_MODEM,保证跟自己创建的目录alps/vendor/mediatek/proprietary/modem/${modem}名称一致。

然后再/alps下重新编译

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值