NXP L5.10.9 SDK编译问题解决方法
近期公司新的项目需要使用到L5.10.9的SDK,而在下载代码的时候,由于网络的原因导致很多包都下载不了造成编译中断的问题。为解决此问题我也是百度了很多发现没什么可靠的方法。
错误分析
根据代码下载时的log
这里可以发现是由于github访问时发生的问题,这里打开“.repo/manifests/” 文件夹,可以看到SDK的版本管理配置文件。
work@ubuntu:~/imx6/L5.10.9/.repo/manifests$ ls
ChangeLog imx-5.10.9-1.0.0_demo_iotg.xml imx-5.10.9-1.0.0_genivi.xml README
GraphicsChangeLogv6 imx-5.10.9-1.0.0_desktop.xml imx-5.10.9-1.0.0.xml
而我们使用的是imx-5.10.9-1.0.0.xml的版本,各个模块的下载地址如下:
work@ubuntu:~/Documents/.repo/manifests$ cat imx-5.10.9-1.0.0.xml
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="CAF" fetch="https://source.codeaurora.org/external/imx"/>
<remote name="OSSystems" fetch="https://github.com/OSSystems"/>
<remote name="QT5" fetch="https://github.com/meta-qt5"/>
<remote name="Timesys" fetch="https://github.com/TimesysGit"/>
<remote name="clang" fetch="https://github.com/kraj"/>
<remote name="community" fetch="https://github.com/Freescale"/>
<remote name="imx-support" fetch="https://source.codeaurora.org/external/imxsupport"/>
<remote name="oe" fetch="https://github.com/openembedded"/>
<remote name="python2" fetch="https://git.openembedded.org"/>
<remote name="rust" fetch="https://github.com/meta-rust"/>
<remote name="yocto" fetch="https://git.yoctoproject.org/git"/>
对此可以猜想是否换个地址就可以解决了?
问题的解决
直接访问githu可能存在网络连接的问题,那么就可以尝试通过其他的地址进行代码的下载。这里可以使用快速github进行访问。如下即可
work@ubuntu:~/imx6/L5.10.9/.repo/manifests$ cat imx-5.10.9-1.0.0.xml
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="CAF" fetch="https://source.codeaurora.org/external/imx"/>
<remote name="OSSystems" fetch="https://hub.fastgit.org/OSSystems"/>
<remote name="QT5" fetch="https://hub.fastgit.org/meta-qt5"/>
<remote name="Timesys" fetch="https://hub.fastgit.org/TimesysGit"/>
<remote name="clang" fetch="https://hub.fastgit.org/kraj"/>
<remote name="community" fetch="https://hub.fastgit.org/Freescale"/>
<remote name="imx-support" fetch="https://source.codeaurora.org/external/imxsupport"/>
<remote name="oe" fetch="https://hub.fastgit.org/openembedded"/>
<remote name="python2" fetch="https://git.openembedded.org"/>
<remote name="rust" fetch="https://hub.fastgit.org/meta-rust"/>
<remote name="yocto" fetch="https://git.yoctoproject.org/git"/>
yocto菜谱配置的下载依然可以解决,如:
只需将菜谱文件中的SRC_URI改为加速地址即可。
work@ubuntu:~/imx6/L5.10.9/sources/meta-imx/meta-sdk/recipes-support/fmt$ cat fmt_7.0.2.bb
SUMMARY = "open-source formatting library for C++"
DESCRIPTION = "{fmt} is an open-source formatting library for C++. It can be used as a safe and fast alternative to (s)printf and iostreams."
HOMEPAGE = "https://fmt.dev"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=af88d758f75f3c5c48a967501f24384b"
SRC_URI = "https://hub.fastgit.org/fmtlib/fmt/releases/download/${PV}/${BP}.zip"
SRC_URI[md5sum] = "63264893108c311c948a75ccb9a5f9f6"
SRC_URI[sha256sum] = "b59501071960062217679989b794f0c865e15a6e5d515ef5a700ce739e3daec9"
inherit cmake ptest
EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON"