Firefly Open Source Community

Title: Error trying to make a Buildroot distribution, even with Firefly default configu [Print This Page]

Author: mario_mlc    Time: 1/12/2024 12:51
Title: Error trying to make a Buildroot distribution, even with Firefly default configu
Dear sirs,
I am trying to test a compilation of a Linux distribution for my AIO-3288C board, using FF Linux SDK distribution for the board (I have tried to use the Google Drive download version and the GitHub version using Repo - this last one gave me better results. Still, I am not able to compile/make even a default configuration distribution (jusr opened make menuconfig, closed and saved same configuration as Firefly default (which sets parameters for RK3288 like arm32 architecture, Cortex-A17, all the basic definition and yet distributes some basic libraries.

My final objective is, of course, use a very customized distribution (using Wayland instead of X11 and including updated libraries that I need for my system to run). But I assume if I can't even build the default configuration, any other menuconfig change for Buildroot will probably rise the likelihood of failures, or at least show the same one.

I tried to follow strict Wiki manual instructions. When I run make (without parameters), it takes about 2 hours running with all cores at full power and, in the middle of the process (while processing WiFi module as I could see) I get this error message as attached (also printing the end here for quick reference):


ERROR: Kernel configuration is invalid.
         include/generated/autoconf.h or include/config/auto.conf are missing.
         Run 'make oldconfig && make prepare' on kernel src to fix it.


  WARNING: Symbol version dump ./Module.symvers
           is missing; modules will have no dependencies and modversions.

  Building modules, stage 2.
scripts/Makefile.modpost:42: include/config/auto.conf: No such file or directorymake[3]: *** No rule to make target 'include/config/auto.conf'.  Stop.
Makefile:1482: recipe for target 'modules' failed
make[2]: *** [modules] Error 2
package/pkg-generic.mk:228: recipe for target '/home/firefly/ffsdk/rk3288_linux_release_v2.5.0a_20230510/buildroot/output/rockchip_rk3288/build/rkwifibt-1.0.0/.stamp_built' failed
make[1]: *** [/home/firefly/ffsdk/rk3288_linux_release_v2.5.0a_20230510/buildroot/output/rockchip_rk3288/build/rkwifibt-1.0.0/.stamp_built] Error 2
Makefile:16: recipe for target '_all' failed
make: *** [_all] Error 2



My environment is a Docker container made with the exact Dockerfile suggested on the manual. Copied the SDK inside the container using repo and started as directed by the manual.


I don't have an idea about where this kernel source is and even if I really should do the suggestion the error message gives me. I suppose since I did not make any modification, that this should work "out of the box", without severe problems that stop execution of Buildroot.

I thank you very much in advance for your help and please inform if you need further information, I will try to provide ASAP.


Mario
tchip_askquestions

truncated_stdout_err.txt.zip

2.17 KB, Down times: 0


Author: mario_mlc    Time: 1/15/2024 15:19
UPDATE: For some reason, the default option for Kernel in the SDK I have cloned from git repo was not selecting Kernel as default. So I selected it, error changes but Kernel still can't compile. Error attached.

NEED URGENT HELP!

Thank you very much in advance.

make_last_error.txt.zip

662 Bytes, Down times: 1

Error during kernel make stage


Author: zhangzhenzhao    Time: 1/15/2024 15:35
Did you make any modifications after downloading it? Here is a prompt for dirty content
WARN: /home/firefly/ffsdk/rk3288_linux_release_v2.5.0a_20230510/buildroot/../kernel is dirty!

Please strictly follow the Wikipedia configuration to compile the environment and execute the compilation commands
https://wiki.t-firefly.com/en/AI ... pile-linux-firmware

Additionally, you do not necessarily need to fully compile. After downloading the SDK, first confirm that uboot has been compiled and kernel has been compiled, and then compile it as a whole

It is definitely possible to compile according to the wiki, and also pay attention to the red font description prompted in the wiki


Author: mario_mlc    Time: 1/15/2024 20:50
Thank you for your attention!
Yes, I did not make any change EXCEPT that I ran make menuconfig as directed by https://wiki.t-firefly.com/en/AI ... pile-linux-firmware (which I am STRICTLY following the instructions) and this results in the creation of a .config file inside the SDK structure, buildroot directory.

From your last but one paragraph above, it seems, though, that I have to first compile uboot and kernel before running make, if I understood it right. I did not know it. I will try this way with a fresh SDK download again and let you know of the results.

Thanks again!
Author: mario_mlc    Time: 1/16/2024 10:02
Hi! I have made a clean SDK download again and started from scratch with a brand new Docker container. Built uboot and kernel prior to running make for Buildroot. Now I had a problem with Cairo, which broke the make process. Seems like it is no longer available or repo has changed:
  1. >>> cairo 1.16.0 Downloading
  2. --2024-01-16 01:37:01--  <a href="http://cairographics.org/releases/cairo-1.16.0.tar.xz" target="_blank">http://cairographics.org/releases/cairo-1.16.0.tar.xz</a>
  3. Resolving cairographics.org (cairographics.org)... 131.252.210.176
  4. Connecting to cairographics.org (cairographics.org)|131.252.210.176|:80... failed: Connection refused.
  5. --2024-01-16 01:37:02--  <a href="http://sources.buildroot.net/cairo-1.16.0.tar.xz" target="_blank">http://sources.buildroot.net/cairo-1.16.0.tar.xz</a>
  6. Resolving sources.buildroot.net (sources.buildroot.net)... 104.26.0.37, 172.67.72.56, 104.26.1.37, ...
  7. Connecting to sources.buildroot.net (sources.buildroot.net)|104.26.0.37|:80... connected.
  8. HTTP request sent, awaiting response... 404 Not Found
  9. 2024-01-16 01:37:02 ERROR 404: Not Found.
Copy the code
  1. package/pkg-generic.mk:138: recipe for target '/home/firefly/proj/rk3288_linux_release_v2.5.0a_20230510/buildroot/output/rockchip_rk3288/build/cairo-1.16.0/.stamp_downloaded' failed
  2. make[1]: *** [/home/firefly/proj/rk3288_linux_release_v2.5.0a_20230510/buildroot/output/rockchip_rk3288/build/cairo-1.16.0/.stamp_downloaded] Error 1
  3. Makefile:16: recipe for target '_all' failed
  4. make: *** [_all] Error 2
Copy the code
If I download the new version of the library, what would be the correct way to aggregate it inside the SDK folders?
Here is why no one can get rid of Cairo: A bunch of other libraries require it:


  1. Symbol: BR2_PACKAGE_CAIRO [=y]                                                                                                                                       ©¦  
  2.   ©¦ Type  : boolean                                                                                                                                                      ©¦  
  3.   ©¦ Prompt: cairo                                                                                                                                                        ©¦  
  4.   ©¦   Location:                                                                                                                                                          ©¦  
  5.   ©¦     -> Target packages                                                                                                                                               ©¦  
  6.   ©¦       -> Libraries                                                                                                                                                   ©¦  
  7.   ©¦         -> Graphics                                                                                                                                                  ©¦  
  8.   ©¦   Defined at package/cairo/Config.in:1                                                                                                                               ©¦  
  9.   ©¦   Selects: BR2_PACKAGE_PIXMAN [=y] && BR2_PACKAGE_FONTCONFIG [=y] && BR2_PACKAGE_XLIB_LIBX11 [=n] && BR2_PACKAGE_XLIB_LIBXEXT [=n]                                   ©¦  
  10.   ©¦   Selected by: BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_CAIRO [=n] && BR2_PACKAGE_GSTREAMER1 [=y] && BR2_PACKAGE_GST1_PLUGINS_GOOD [=y] || \                             ©¦  
  11.   ©¦ BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_TTML [=n] && BR2_PACKAGE_GSTREAMER1 [=y] && BR2_PACKAGE_GST1_PLUGINS_BAD [=y] && BR2_USE_WCHAR [=y] && \                         ©¦  
  12.   ©¦ BR2_TOOLCHAIN_HAS_THREADS [=y] && BR2_INSTALL_LIBSTDCPP [=y] && BR2_TOOLCHAIN_HAS_SYNC_4 [=y] || BR2_PACKAGE_WESTON [=y] && BR2_PACKAGE_HAS_UDEV [=y] && !\          ©¦  
  13.   ©¦ BR2_STATIC_LIBS [=n] && BR2_TOOLCHAIN_HAS_THREADS [=y] && BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 [=y] || BR2_PACKAGE_RRDTOOL_RRDGRAPH [=n] && BR2_PACKAGE_RRDTOOL [=n]\  ©¦  
  14.   ©¦  && BR2_TOOLCHAIN_HAS_SYNC_4 [=y] && BR2_INSTALL_LIBSTDCPP [=y] || BR2_PACKAGE_EFL_SVG [=n] && BR2_PACKAGE_EFL [=n] && BR2_TOOLCHAIN_HAS_SYNC_4 [=y] || \            ©¦  
  15.   ©¦ BR2_PACKAGE_WESTON_XWAYLAND [=n] && BR2_PACKAGE_WESTON [=y] && BR2_PACKAGE_XORG7 [=n] && BR2_PACKAGE_LIBEPOXY [=n] || BR2_PACKAGE_CAIROMM [=n] && \                  ©¦  
  16.   ©¦ BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 [=y] && BR2_TOOLCHAIN_HAS_THREADS [=y] && BR2_USE_WCHAR [=y] && BR2_USE_MMU [=y] && BR2_INSTALL_LIBSTDCPP [=y] || \                   ©¦  
  17.   ©¦ BR2_PACKAGE_LIBFM [=n] && BR2_PACKAGE_XORG7 [=n] && BR2_USE_WCHAR [=y] && BR2_TOOLCHAIN_HAS_THREADS [=y] && BR2_USE_MMU [=y] && BR2_INSTALL_LIBSTDCPP [=y] && \      ©¦  
  18.   ©¦ BR2_TOOLCHAIN_HAS_SYNC_4 [=y] || BR2_PACKAGE_LIBGDIPLUS [=n] && BR2_PACKAGE_XORG7 [=n] && BR2_USE_WCHAR [=y] && BR2_TOOLCHAIN_HAS_THREADS [=y] && BR2_USE_MMU [=y]\  ©¦  
  19.   ©¦  || BR2_PACKAGE_LIBGTK2 [=n] && BR2_PACKAGE_XORG7 [=n] && BR2_USE_WCHAR [=y] && BR2_TOOLCHAIN_HAS_THREADS [=y] && BR2_USE_MMU [=y] && BR2_INSTALL_LIBSTDCPP [=y]\    ©¦  
  20.   ©¦  && BR2_TOOLCHAIN_HAS_SYNC_4 [=y] || BR2_PACKAGE_LIBGTK3 [=n] && BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS [=y] && BR2_USE_WCHAR [=y] && BR2_TOOLCHAIN_HAS_THREADS [=y]\  ©¦  
  21.   ©¦  && BR2_USE_MMU [=y] && BR2_INSTALL_LIBSTDCPP [=y] && BR2_TOOLCHAIN_HAS_SYNC_4 [=y] && BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 [=y] && (BR2_PACKAGE_HAS_LIBEGL_WAYLAND [=y]\  ©¦  
  22.   ©¦  || BR2_PACKAGE_HAS_LIBGL [=n]) || BR2_PACKAGE_LIBRSVG [=n] && BR2_USE_WCHAR [=y] && BR2_TOOLCHAIN_HAS_THREADS [=y] && BR2_USE_MMU [=y] && \                         ©¦  
  23.   ©¦ BR2_INSTALL_LIBSTDCPP [=y] && BR2_TOOLCHAIN_HAS_SYNC_4 [=y] || BR2_PACKAGE_LIBSVG_CAIRO [=n] || BR2_PACKAGE_PANGO [=n] && BR2_USE_WCHAR [=y] && \                    ©¦  
  24.   ©¦ BR2_TOOLCHAIN_HAS_THREADS [=y] && BR2_USE_MMU [=y] && BR2_INSTALL_LIBSTDCPP [=y] && BR2_TOOLCHAIN_HAS_SYNC_4 [=y] && BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 [=y] || \        ©¦  
  25.   ©¦ BR2_PACKAGE_WEBKITGTK [=n] && BR2_INSTALL_LIBSTDCPP [=y] && BR2_HOST_GCC_AT_LEAST_4_8 [=y] && BR2_TOOLCHAIN_GCC_AT_LEAST_5 [=y] && BR2_TOOLCHAIN_USES_GLIBC [=y]\    ©¦  
  26.   ©¦  && BR2_PACKAGE_LIBGTK3 [=n] && BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS [=y] || BR2_PACKAGE_CHROMIUM_WAYLAND [=n] && (BR2_arm [=y] && BR2_GCC_TARGET_FLOAT_ABI [=hard]\  ©¦  
  27.   ©¦ =hard || BR2_aarch64 [=n]) && BR2_PACKAGE_WAYLAND [=y] && BR2_TOOLCHAIN_GCC_AT_LEAST_9 [=y] && BR2_PACKAGE_LIBMALI [=y]
Copy the code
Hope you can help me with some solution. I did not make any change to Buildroot's menuconfig, trying to avoid braking anything...

Thank you very much again for your help!
Mario

Author: zhangzhenzhao    Time: 1/16/2024 10:07
Did you ensure that uboot and kernel compilation pass as I said? Please refer to the wiki


Author: mario_mlc    Time: 1/17/2024 02:23
zhangzhenzhao Posted at 1/16/2024 10:07
Did you ensure that uboot and kernel compilation pass as I said? Please refer to the wiki

Yes, U-Boot and Kernel were compiled successfully. I am following strictly the wiki document.
I also did not make any change on menuconfig. In fact, after running build.sh kernel, I just went to SDK root, ran envsetup.sh rockchip_rk3288 and, then, inside buildroot/output/rockchip_rk3288, I ran make.
It seems the Cairo repository is not available anymore. It seems it is not included in the SDK but it is used by a lot of dependencies. That is when and why it breaks.





Welcome Firefly Open Source Community (https://bbs.t-firefly.com/) Powered by Discuz! X3.1