Meier Posted March 16, 2019 Posted March 16, 2019 (edited) Noob here, please excuse if I ask something obvious and feel free to just point me into the right direction. About a week ago, I was able to successfully build Armbian for RockPro64 in the standard Vagrant build environment, creating a bootable image using the compilation GUI without any special kernel configuration. I tried again yesterday, both with the GUI and the CLI command below, but the build process always fails: $ sudo ./compile.sh BOARD=rockpro64 PROGRESS_LOG_TO_FILE=yes KERNEL_ONLY=no KERNEL_CONFIGURE=no RELEASE=stretch BUILD_DESKTOP=no BRANCH=default ... CC [M] drivers/net/wireless/rockchip_wlan/rtl8723bu/core/rtw_mp_ioctl.o CC [M] drivers/net/wireless/rockchip_wlan/rtl8723bu/core/rtw_bt_mp.o LD [M] drivers/net/wireless/rockchip_wlan/rtl8723bu/8723bu.o LD drivers/net/wireless/built-in.o LD drivers/net/built-in.o LD drivers/built-in.o [ error ] ERROR in function compile_kernel [ compilation.sh:389 ] [ error ] Kernel was not built [ @host ] [ o.k. ] Process terminated In the `compilation.log` there are two main errors. First example (occurs maybe 10+ times): In file included from drivers/net/wireless/rockchip_wlan/mvl88w8977/mlan/mlan.h:32:0, from drivers/net/wireless/rockchip_wlan/mvl88w8977/mlan/mlan_shim.c:26: drivers/net/wireless/rockchip_wlan/mvl88w8977/mlan/mlan_ioctl.h:1797:1: note: offset of packed bit-field ‘MaxAMSDU’ has changed in GCC 4.4 } MLAN_PACK_END ExtCap_t, *pExtCap_t; ^ Second example (occurs 50+ times): In file included from ./arch/arm64/include/asm/compat.h:25:0, from ./arch/arm64/include/asm/stat.h:23, from include/linux/stat.h:5, from include/linux/module.h:10, from drivers/net/wireless/rtl8812au/include/basic_types.h:76, from drivers/net/wireless/rtl8812au/include/drv_types.h:26, from drivers/net/wireless/rtl8812au/core/rtw_cmd.c:17: include/linux/sched.h:1211:1: warning: type qualifiers ignored on function return type [-Wignored-qualifiers] const struct sched_group_energy * const(*sched_domain_energy_f)(int cpu); ^~~~~ cc1: warning: unrecognized command line option ‘-Wno-cast-function-type’ Initially I was suspecting the virtualbox image, going back to the exact release I've been using last week (two updates from Vagrant since), but to no avail. After looking at Github issues, reading posts and sifting through the scripts, I got the build process working by explicitly using BRANCH="dev". I am especially wondering why it worked wihtout issues a week ago, but not anymore. Any recent changes? Might this have something to do with these ongoing changes? In that regard, I'd rather expect the "dev" branch to fail than the default one. Please find attached the various compilation.log files: compilation.log for BRANCH="default": https://pastebin.com/wMLiAHdA (compilation fails with error shown at the beginning) compilation.log for BRANCH="dev": https://pastebin.com/i5UXZZys (compilation successful) I'm thankful for any insights or pointers to getting a stable RockPro64 image, as I'd like to later customize it with additional software (definitely not there yet). Edited March 16, 2019 by Meier
martinayotte Posted March 16, 2019 Posted March 16, 2019 3 hours ago, Meier said: compilation fails with error shown at the beginning The error is rather this one : net/wireguard/ratelimiter.c:60:2: error: implicit declaration of function ‘call_rcu’; did you mean ‘call_srcu’? [-Werror=implicit-function-declaration] call_rcu(&entry->rcu, entry_free); ^~~~~~~~ call_srcu cc1: some warnings being treated as errors You can try to add at command line "WIREGUARD=no" , it will skip this part of the build ... 1
Meier Posted March 16, 2019 Author Posted March 16, 2019 Thanks for the quick reply! I just ran the command with additional WIREGUARD=no for BRANCH=default, unfortunately it did not even start to work. The "board selection" pops up, and then the script exits: sudo ./compile.sh BOARD=rockpro64 PROGRESS_LOG_TO_FILE=yes KERNEL_ONLY=no KERNEL_CONFIGURE=no RELEASE=stretch BUILD_DESKTOP=no BRANCH=default WIREGUARD=no [ o.k. ] Using config file [ config-default.conf ] [ o.k. ] Command line: setting BOARD to [ rockpro64 ] ./compile.sh: line 57: BOARD=rockpro64: command not found [ o.k. ] Command line: setting PROGRESS_LOG_TO_FILE to [ yes ] [ o.k. ] Command line: setting KERNEL_ONLY to [ no ] [ o.k. ] Command line: setting KERNEL_CONFIGURE to [ no ] [ o.k. ] Command line: setting RELEASE to [ stretch ] [ o.k. ] Command line: setting BUILD_DESKTOP to [ no ] [ o.k. ] Command line: setting BRANCH to [ default ] [ o.k. ] Command line: setting WIREGUARD to [ no ] [ o.k. ] This script will try to update Already up to date. Already on 'master' Your branch is up to date with 'origin/master'. [ o.k. ] Preparing [ host ] [ o.k. ] Build host OS release [ bionic ] [ o.k. ] Syncing clock [ host ] >> GUI: Select the target board. >> select "rockpro64", <OK> [ error ] ERROR in function source [ main.sh:198 ] [ error ] Kernel branch not defined for this board [ default ] [ o.k. ] Process terminated note: line 57 in compile.sh is: `eval $parameter=\"$value\"` When running `sudo ./compile.sh BOARD=rockpro64 PROGRESS_LOG_TO_FILE=yes KERNEL_ONLY=no KERNEL_CONFIGURE=no RELEASE=stretch BUILD_DESKTOP=no WIREGUARD=no` without specifying the branch, the compilation is successful. What branch is used in this case? Although successful, there are still a lot of warnings in the `compilation.log`, mostly `warning: type qualifiers ignored on function return type [-Wignored-qualifiers]` and `note: offset of packed bit-field ‘MaxAMSDU’ has changed in GCC 4.4` At least for the latter, I guess according to the GCC release notes that is safe to ignore? See full compilation log here: compilation_WIREGUARD-no.log One additional question, if I may? When tinkering with the User provided image configuration script, is there a way to skip recompiling the kernel every time?
lanefu Posted March 16, 2019 Posted March 16, 2019 One additional question, if I may? When tinkering with the User provided image configuration script, is there a way to skip recompiling the kernel every time?See clean_level optionhttps://docs.armbian.com/Developer-Guide_Build-Options/Sent from my SM-G950U using Tapatalk 1
Meier Posted March 16, 2019 Author Posted March 16, 2019 2 minutes ago, lanefu said: See clean_level optionhttps://docs.armbian.com/Developer-Guide_Build-Options/ Thanks a ton! 1
Recommended Posts