From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dr. Philipp Tomsich Date: Mon, 9 Jul 2018 10:36:55 +0200 Subject: [U-Boot] build fail due to dependence error In-Reply-To: <3b7758db11d543768be991bdc8eb1b00@SFHDAG6NODE3.st.com> References: <83756b95-d066-2667-f036-24fd1097541e@rock-chips.com> <19ab9dda-5133-829a-4c4f-6988926a4a9f@rock-chips.com> <0C0CB5DB-9494-4784-AFA0-FD15BD8D2390@theobroma-systems.com> <16B6121B-9855-47A6-961A-613834160116@theobroma-systems.com> <3b7758db11d543768be991bdc8eb1b00@SFHDAG6NODE3.st.com> Message-ID: <0F60EB1D-FBDD-4446-9D63-91B8B95D59F7@theobroma-systems.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit To: u-boot@lists.denx.de > On 9 Jul 2018, at 09:18, Patrick DELAUNAY wrote: > >> From: U-Boot On Behalf Of Masahiro Yamada >> Sent: lundi 9 juillet 2018 07:27 >> Subject: Re: [U-Boot] build fail due to dependence error >> >> Hi. >> >> >> 2018-07-09 11:39 GMT+09:00 Simon Glass : >>> +Masahiro who might know >>> >>> On 2 July 2018 at 01:23, Dr. Philipp Tomsich >>> wrote: >>>> Kever, >>>> >>>> Could you check the build artifacts in Jenkins to see whether after >>>> the ‘make [configname]_defconfig’, the link for asm/arch is correctly >>>> set up? >>>> >>>> Thanks, >>>> Philipp. >>>> >>>> On 2 Jul 2018, at 09:54, Kever Yang wrote: >>>> >>>> Hi Simon, >>>> >>>> >>>> On 06/30/2018 12:19 PM, Simon Glass wrote: >>>> >>>> Hi, >>>> >>>> On 28 June 2018 at 01:41, Dr. Philipp Tomsich >>>> wrote: >>>> >>>> Kever, >>>> >>>> is the link for ‘asm’ set up correctly? >>>> >>>> Thanks, >>>> Philipp. >>>> >>>> On 28 Jun 2018, at 10:38, Kever Yang wrote: >>>> >>>> Hi Simon, >>>> >>>> Do you have any idea about this error? >>>> >>>> >>>> CC lib/asm-offsets.s >>>> CC arch/arm/lib/asm-offsets.s >>>> fixdep: error opening config file: >>>> arch/arm/include/asm/arch/hardware.h: No such file or directory >>>> Kbuild:64: recipe for target 'arch/arm/lib/asm-offsets.s' failed >>>> make[1]: *** [arch/arm/lib/asm-offsets.s] Error 2 >>>> make[1]: *** 正在等待未完成的任务.... >>>> CHK include/config.h >>>> Makefile:1340: recipe for target 'prepare0' failed >>>> >>>> Thanks, >>>> - Kever >>>> >>>> On 06/01/2018 05:59 PM, Kever Yang wrote: >>>> >>>> Hi Guys, >>>> >>>> I met below error from time to time when build U-Boot project. >>>> >>>> fixdep: error opening config file: >>>> arch/arm/include/asm/arch/hardware.h: No such file or directory >>>> >>>> The folder 'arch/arm/include/asm/arch' is a link for >>>> 'arch/arm/include/asm/arch-rockchip', >>>> >>>> which is dynamic generate by build system, I thinks there should be >>>> some dependency issue? >>>> >>>> How to fix this kind of issue? >>>> >>>> I am not sure what is going on there. I don't see this. >>>> >>>> Are you using 'make distclean' or 'make mrproper' on your object tree >>>> every now and then? >>>> >>>> >>>> This is happen sometimes in our Jenkins verify, It will gone when I >>>> rebase the patch(re-build without any change), we do 'make distclean' >>>> every time before a new build. >> >> >> Hmm, I cannot reproduce this error. >> >> >> I have no clue about this. > > Just for information, I have also the same issue sometime in the same context (Jenkins build) for stm32mp1 board. > > The error is : "Missing stm32.h file in the directory include/asm/arch/" > > I try to understood the dependency issue, but I don't found any issue: > the needed symbolic link is done just before in the trace of the artifact... > > 2018-03-03-17-00-02] | if [ -d /opt/STM/workspace/workdir/rdk/build-stm32mp1/tmp-glibc/work/stm32mp1-stm32mpvalid-linux-gnueabi/u-boot-basic-stm32mp/2018.01-git-AUTOINC+d741b91b3c.r0/git/arch/arm/mach-stm32mp/include/mach ]; then \ > [2018-03-03-17-00-02] | dest=arch/arm/mach-stm32mp/include/mach; \ > [2018-03-03-17-00-02] | else \ > [2018-03-03-17-00-02] | dest=arch/arm/include/asm/arch-stm32mp; \ > [2018-03-03-17-00-02] | fi; \ > [2018-03-03-17-00-02] | ln -fsn /opt/STM/workspace/workdir/rdk/build-stm32mp1/tmp-glibc/work/stm32mp1-stm32mpvalid-linux-gnueabi/u-boot-basic-stm32mp/2018.01-git-AUTOINC+d741b91b3c.r0/git/$dest include/asm/arch > [2018-03-03-17-00-02] | fixdep: error opening config file: include/asm/arch/stm32.h: No such file or directory > > I don't understood why the dependency failed.... > > Perhaps it is because in our Jenkins task the parallel compilation is requested with high value... (-J 8) > and the dependency check is done in parallel of the link creation…. For what it’s worth: I always build with -j8 on my main development system and have never (my expectation would be that it should have cropped up at least a few times over the years) encountered this. > The dependancy are : > ./arch/arm/lib/asm-offsets.c => Kbuild > > with: > lib/asm-offsets.s: lib/asm-offsets.c FORCE > > > but the link on the directory is requested only by the rules about config.h not for stm32.h (or hardware.h in your case): > ./scripts/Makefile.autoconf:115:include/config.h: scripts/Makefile.autoconf create_symlink FORCE > > Perhaps add a simple rule in some makefile can solve the issue.... > > For me > > include/asm/arch/stm32.h: create_symlink > > or for you : > > include/asm/arch/hardware.h: create_symlink > > > or it is better to add generic dependancy in ./scripts/Makefile.autoconf ? > > include/asm/arch/*.h: create_symlink > > >> -- >> Best Regards >> Masahiro Yamada > > Regards > > Patrick. > _______________________________________________ > U-Boot mailing list > U-Boot at lists.denx.de > https://lists.denx.de/listinfo/u-boot