Buildroot ".stamp_images_installed" Failed After Folder Name Change - linux

I fire up the Buildroot by make. Compilation progress was successful.
In the installation progress, it tried to copy /output/build/uboot/SPL but that folder does not exist. Instead, /output/build/uboot/spl exists.
I changed the spl folder name to SPL
Run the make again but I got .stamp_images_installed failed error. Check the end of the post for full error log.
To solve the problem, I want to build the target again so I removed output/target folder and all the .stamp_images_installed files under output/build but still I got .stamp_images_installed failed error.
Why Buildroot still gives me this error ? What am I doing wrong ?
My full error log is as the following;
>>> uboot e1cbe8c74e87036e649b0e34656aebabb3aa00c7 Installing to target
>>> uboot e1cbe8c74e87036e649b0e34656aebabb3aa00c7 Installing to images directory
cp -dpf /home/mei/buildroot/output/build/uboot-e1cbe8c74e87036e649b0e34656aebabb3aa00c7/u-boot.bin /home/mei/buildroot/output/images/
cp -dpf /home/mei/buildroot/output/build/uboot-e1cbe8c74e87036e649b0e34656aebabb3aa00c7/u-boot.img /home/mei/buildroot/output/images/
cp -dpf /home/mei/buildroot/output/build/uboot-e1cbe8c74e87036e649b0e34656aebabb3aa00c7/SPL /home/mei/buildroot/output/images/
cp: -r not specified; omitting directory '/home/mei/buildroot/output/build/uboot-e1cbe8c74e87036e649b0e34656aebabb3aa00c7/SPL'
package/pkg-generic.mk:320: recipe for target '/home/mei/buildroot/output/build/uboot-e1cbe8c74e87036e649b0e34656aebabb3aa00c7/.stamp_images_installed' failed
make[1]: *** [/home/mei/buildroot/output/build/uboot-e1cbe8c74e87036e649b0e34656aebabb3aa00c7/.stamp_images_installed] Error 1
Makefile:84: recipe for target '_all' failed
make: *** [_all] Error 2
Thanks!

There is a folder called spl (in lowercase), but we're looking for a file called SPL (in uppercase). When you build a first stage bootloader, it may have various names, depending on the platform. Usually the name is u-boot-spl.bin, and it resides inside the spl directory. Some platforms, however, use a different name for this file (for historical reasons). For iMX6, the file name is SPL and it resides directly in the U-Boot directory.
However, in your case, apparently the SPL file doesn't get built. Probably this is because you are using a U-Boot configuration that doesn't build it under that name. If you are actually building for iMX6, this indicates that there is something wrong with your U-Boot configuration. If you're building for some other SoC, it's Buildroot's BR2_TARGET_UBOOT_SPL_NAME option that is incorrectly set.

Related

Run ./configure from bash script fails due "error: cannot compute suffix of object files"

I'm trying to automate some stage of compile/build on Linux RHEL7 host using a bash script, but when i try to use ./configure it fails due to :
configure:3793: error: in `/app/compiling/BUILD_AREA/TEST/SRC/zabbix-4.2.6':
configure:3795: error: cannot compute suffix of object files: cannot compile
using :
CC="gcc"
PATH="/app/app_lib/mysql/bin:/app/app_lib/bin:/app/app_lib/build-1:/app/app_lib:$PATH"
LD_LIBRARY_PATH="/app/app_lib:/app/app_lib/include:/app/app_lib/lib:/app/apache/modules:/app/app_lib/ssl:/app/app_lib/lib/iconv:/app/oracle/product/12.1.0/lib:/app/ap_lib/mysql/lib:$LD_LIBRARY_PATH"
export CC
export PATH
export LD_LIBRARY_PATH
ARG_ZABBIX="--prefix=/app/zabbix --datarootdir=/app/zabbix/share --docdir=/app/zabbix/share/doc/$PKGAPPDIR --enable-agent --enable-ipv6 --enable-java --enable-server --includedir=/app/zabbix/include --libdir=/app/zabbix/lib --mandir=/app/zabbix/share/man/$PKGAPPDIR --with-libcurl=/app/app_lib/bin/curl-config --with-libxml2=/app/app_lib/bin/xml2-config --with-mysql=/app/mysql/bin/mysql_config --with-net-snmp=/app/app_lib/bin/net-snmp-config --with-openipmi=/app/app_lib --with-ssh2=/app/app_lib"
CONFIGURE="configure"
cd /app/compiling/BUILD_AREA/TEST/SRC/zabbix-4.2.6
"./${CONFIGURE}" "${ARG_ZABBIX}" 2>&1
Any help would be really appreciated!
Any help would be really appreciated!
Find the respective config.log (like the one in $(builddir)/gcc) and have a look. Some configure tests might fail as configure is querying availability of host features; the relevant fail is usually recorded at the end of the relevant config.log.
A common cause for this error is that the target Binutils (as, the assembler) cannot be found as configure is trying to find out what suffix to use for object files. Or host as is used where actually the target as (as of --target=) should be used, and the host as throws a syntax error because it is fed with target assembly.
./configure
GCC does not support configuring in the source directory or any of its sub-folders:
"First, we highly recommend that GCC be built into a separate directory from the sources which does not reside within the source tree."

miss asm/types.h in linux compile

lenge#lenge-pc:/lenge/linux/kernel_online$ git branch
master
* tag_v4.15
CONFIG is defconfig.
when I compile kernel(v4.15), error occurred, as follows:
In file included from
/lenge/linux/kernel_online/include/linux/types.h:6,
from /lenge/linux/kernel_online/include/linux/page-flags.h:9,
from /lenge/linux/kernel_online/kernel/bounds.c:10:
/lenge/linux/kernel_online/include/uapi/linux/types.h:5:10: fatal
error: asm/types.h: No such file or directory #include <asm/types.h>
^~~~~~~~~~~~~ compilation terminated.
That is my compile method:
make ARCH=arm64 -C /lenge/linux/kernel_online O=/lenge/linux/kernel_out_aarch64 CROSS_COMPILE=/lenge/gnu/aarch64/bin/aarch64-lenge-linux-gnu- -j4
I create symbolic link as fallows:
ln -s /lenge/linux/kernel_out_aarch64/source/arch/arm64/include/generated/uapi/asm arch/arm64/include/generated/uapi/asm
It's OK.
I just had the same issue cross-compiling to arm64.
I noticed I had some generated files in my source tree even though I use an output directory for my build (O=). I'm not sure if I accidentally omitted O= one time or what happened, but this was messing things up.
To resolve this, I ran make clean (or make mrproper if you're paranoid) in the source directory to remove all generated files. Rerunning my normal make command with O= succeeded, and did not result in generated files in my source dir (as expected).

Makefile.inc: No such file or directory

I don't have much experience with makefiles, but I am trying to compile and run the program "hdf5ToMds.c" found on this Github repository: https://github.com/MDSplus/mdsplus/tree/alpha/hdf5
My steps towards using the Makefile.in in the folder were as follows:
autoscan
mv configure.scan configure.ac
aclocal
autoheader
autoconf
./configure
make
Now when I run the make I get the error:
Makefile:1: Makefile.inc: No such file or directory
make: *** No rule to make target 'Makefile.inc'. Stop.
Am I missing something obvious? I'm not very familiar with this whole process of getting the code from Github and having to make it. I do have the entire repository cloned, just in case that's relevant.

Find exact point where 'make' fails

I'm working with a modified version of Contiki in conjunction with an extension (a pub/sub system) and had to port some code around. This is on Linux.
Currently, the traditional 'make' execution of the pub/sub system fails, most likely because of a different folder structure.
I'm unable to find where I need to adjust it however and the problem is there are so many nested makefiles and include commands and such that I can't seem to find it. I get the error beneath and I know that the correct uip6.c location is /net/ip/uip6.c but I can't find the place to make that adjustment. Any suggestions on how I can identify that?
selected command: make
execute make command with args:
make -f ../core/Makefile.looci loociCore.hex > debug.txt
/home/looci/looci/lnk/lc_contiki/platform/avr-zigduino/Makefile.early.avr-zigduino:1: loading AVR zigduino early makefile fuses
fatal: Not a git repository: '/home/looci/looci/lnk/lc_contiki_os/.git'
/home/looci/looci/lnk/lc_contiki/core/reconfiguration/reconfigurationEngine.c: In function ‘on_event’:
/home/looci/looci/lnk/lc_contiki/core/reconfiguration/reconfigurationEngine.c:663:2: warning: implicit declaration of function ‘mmem_freememory’
avr-gcc: /home/looci/looci/lnk/lc_contiki_os/core/net/uip6.c: No such file or directory
make[1]: *** [obj_avr-zigduino/uip6.o] Error 1
make: *** [all] Error 2

Changing directories for the makefile in xScreenSaver

I am trying to build an xsreensaver module using the makefile. I downloaded the source from http://www.jwz.org/xscreensaver/, and read the hacking readme.
As my screensaver involves opengl and reading of images, I'm trying to compile the 'photopile' screensaver.
I've run the following
$ cd xscreensaver-5.29
$ cd hacks
$ cd glx
$ make photopile
After running I get the following output errors
cc photopile.c -o photopile
photopile.c:38:23: fatal error: xlockmore.h: No such file or directory compilation terminated.
make: *** [photopile] Error 1
The referenced file is in the "hacks" root folder rather than the "glx" folder. I realize it would be simple enough to just copy that needed file to "glx", but the "xlockmore.h" file is not the only file that its trying to find that is not in the current directory.
It is also looking for "yarandom.h" in the "../../utils" folder.
I'm assuming the makefile was made correctly, and that I am doing something wrong with regards to calling the
make photopile
option from within the "glx" folder.
I'm still learning makefiles and would rather not modify it (or the directory structure by copying header files) anymore than the directions say to.
Any advice?

Resources