Rockbox Development > Starting Development and Compiling
Build Failing...
MinorKey:
Hello,
I'm trying to set up my dev environment on a PC running Linux, but I'm getting an ugly set of errors and I have absolutely no clue what's going on. I had absolutely no problems getting it to work in the same distro on a virtual machine, so it's very odd that it refuses to do the same running on a real one for some reason.
I've downloaded the rockbox repo to a subfolder inside my home directory, but the result is the same even if I download it directly to my home folder.
This is what the terminal tells me after running make -j:
};
^
/home/matej/git/rockbox/apps/settings_list.c:114:40: warning: missing initializer for field ‘({anonymous})’ of ‘const struct settings_list’ [-Wmissing-field-initializers]
{.bool_setting=(struct bool_setting[]){{cb,yes_id,no_id,cfgvals}}} }
^
/home/matej/git/rockbox/apps/settings_list.c:118:13: note: in expansion of macro ‘BOOL_SETTING’
BOOL_SETTING(flags,var,lang_id,default,name,off_on, \
^
/home/matej/git/rockbox/apps/settings_list.c:2317:5: note: in expansion of macro ‘OFFON_SETTING’
OFFON_SETTING(0, playback_log, LANG_LOGGING, false, "play log", NULL),
^
In file included from /home/matej/git/rockbox/apps/settings_list.c:36:0:
/home/matej/git/rockbox/apps/settings_list.h:187:5: note: ‘({anonymous})’ declared here
};
^
make: *** [/home/matej/git/rockbox/tools/root.make:484: /home/matej/git/rockbox/build/apps/settings_list.o] Error 1
matej@Linux-PC:~/git/rockbox/build$
Here I was trying to build RB for theEros Q Native, but what I choose to build doesn't seem to make a difference.
I can still use my VM should it be necessary to test/update translations, but getting it to work on a real machine instead and getting rid of the VM would be far better.
So hope there's a solution for this, but be as it may, thanks for reading and have a nice day. 🙂
speachy:
I honestly have no idea what's wrong, other than perhaps something failing earlier in the build leading to this, most likely due to something being different from one environment/system to the other.
After every commit we rebuild _everything_ -- all binary packages, bootloaders, checkwpses, simulators, and manuals (nearly 400 separate builds in total!) and the board is currently completely warning-free for all of 'em.
(see https://build.rockbox.org/dev.cgi )
MinorKey:
Thank you for your reply.
I think I posted the wrong output. Well not entirely wrong, but that's the output generated after running make -j for the second time, when there's already something in the build directory. This is actually what's generated generated after running make -j when that dir is blank:
CC lib/rbcodec/metadata/oma.c
CC lib/rbcodec/metadata/rm.c
CC lib/rbcodec/metadata/sgc.c
CC lib/rbcodec/metadata/sid.c
CC lib/rbcodec/metadata/smaf.c
CC lib/rbcodec/metadata/spc.c
CC lib/rbcodec/metadata/tta.c
CC lib/rbcodec/metadata/vgm.c
CC lib/rbcodec/metadata/vorbis.c
CC lib/rbcodec/metadata/vox.c
CC lib/rbcodec/metadata/wave.c
CC lib/rbcodec/metadata/wavpack.c
CC lib/rbcodec/metadata/aac.c
CC lib/mipsunwinder/backtrace-mips32.c
CC lib/mipsunwinder/init_context_32.S
CC lib/skin_parser/skin_buffer.c
CC lib/skin_parser/skin_parser.c
CC lib/skin_parser/skin_scan.c
CC lib/skin_parser/tag_table.c
CC lib/fixedpoint/fixedpoint.c
make: *** No rule to make target '/home/matej/git/rockbox/firmware/export/config/erosqnative_v4.h', needed by '/home/matej/git/rockbox/build/ram.link'. Stop.
make: *** Waiting for unfinished jobs....
matej@Linux-PC:~/git/rockbox/build$
It's as if the make process is hanging or something, but of course, I'm no expert when it comes to this.
Also this is what the configure step tells me after setting my target, but probably this is all OK:
229) NWZ-S750 series 233) DX90 240) Rocker
==FiiO== ==xDuoo== ==AIGO==
244) M3K Linux 241) X3 245) Eros Q / K
246) M3K baremetal 242) X3II 247) Eros Q / K native
243) X20 (hw1/hw2 bl, all hw rb)
==Shanling== 248) Eros Q / K native
260) Q1 (hw3 bl only)
249) Eros Q / K native
(hw4 bl only)
249
Platform set to erosqnative_v4
Build (N)ormal, (A)dvanced, (S)imulator, (B)ootloader, (C)heckWPS, (D)atabase tool, (W)arble codec tool: (Defaults to N)
n
Normal build selected
Using source code root directory: /home/matej/git/rockbox
Using mipsel-elf-gcc 4.9.4 (409)
Using mipsel-elf-ld
Detected make GNU Make 4.3
Found and uses ccache (/usr/bin/ccache)
Automatically selected arch: mips (ver 32)
Created Makefile
matej@Linux-PC:~/git/rockbox/build$
Edit: More/Fixed info
MinorKey:
I finally got it to work. Not sure what was wrong before, but I cleared the TMP directory and ran rockboxdev.sh again and made sure that that finished properly.
Also I used 247 and not 249 when selecting the build target. In hindsight that could have been the whole problem. Either way, cool that it's finally working.
bahus:
--- Quote from: MinorKey on April 18, 2025, 06:06:39 AM ---Also I used 247 and not 249 when selecting the build target.
--- End quote ---
249) Eros Q / K native (hw4 bl only)
My guess "hw4 bl only" means Bootloader only build for hw4 variant. So, no wonder it fails for Normal build.
Navigation
[0] Message Index
[#] Next page
Go to full version