如何在Travis CI中构建Linux内核。我已将jQuery('.woshadow').click(function(){
jQuery(this).find('.popup-list').addClass('popup-listh');
jQuery(this).find('.close-popup').addClass('popup-listh');
});
jQuery('.close-popup').click(function(){
jQuery(this).parent().find('.popup-list').removeClass('popup-listh');
jQuery(this).removeClass('popup-listh');
});
添加到我的Travis配置中,但它无法正常工作并说
script: make menuconfig
我该如何解决这个问题?
链接到GitHub repo:https://github.com/ProjectPolyester/tegra_kernel并在可能的情况下在PR中提交修复
答案 0 :(得分:1)
Travis监控您的构建过程,如果大约10分钟没有输出,它会假定您的进程因某种原因而被卡在某处,然后将其杀死。
您需要提供实际的构建命令。
make menuconfig
实际上只允许您配置内核。它并没有真正启动内核构建过程。所以这个命令没有输出。
此外,应该已经配置了内核,或者您可以下载相应的.config文件,如果它在某些位置可用。然后就没有必要执行:
make menuconfig
可以简单地
make
或类似
make -j3 modules ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOCALVERSION=-$SOURCE_VERSION
第二个实际上是执行交叉编译。 您还需要设置所有先决条件,如下载头文件等
您可能需要查看this script,它只交叉编译模块,而不是整个内核。
答案 1 :(得分:0)
如果要将旧配置用于新内核,可以使用make olddefconfig。以下是如何在travis中编译和引导新内核的示例:https://github.com/avagin/criu/blob/linux-next/scripts/travis/kexec.sh#L54
答案 2 :(得分:0)
我知道这是一个旧线程,但我最近能够让Travis CI致力于构建Linux内核 https://github.com/GlassROM-devices/android_kernel_oneplus_msm8994/commit/6ed484812bbd4a25c3b22e730b7489eaaf668da1 GCC修复是针对在Debian unstable,arch,gentoo等上编译的工具链。这些工具链将无法在Ubuntu上编译,因此您必须对这些工具链使用GCC修复
你真的想在尝试构建内核之前升级GCC。 Travis CI有一个非常古老的GCC,如果你试图编译内核将会失败
在我的提交中,我正在用我自己建造的GCC 8 linaro构建它