如何将 autotools 包添加到 Buildroot?

Jam*_*mes 6 compiling embedded buildroot

我正在尝试向 buildroot 添加一个包,但我没有取得太大的成功。我要添加的包是一个名为 scew 的 autotools 包。我遵循了关于添加包的 buildroot 指南,虽然在make menuconfig运行时列出了包,但当我运行时make,最终的rootfs.tar.

我还复制了另一个.mk用于安装的简单文件which,并相应地更改了变量名称和 URL。这是我的副本scew.mk

SCEW_VERSION = 1.1.3
SCEW_SITE = http://savannah.nongnu.org/download/scew/
SCEW_LICENSE = GPLv3
SCEW_LICENSE_FILES = COPYING

$(eval $(autotools-package))
Run Code Online (Sandbox Code Playgroud)

在我有的同一个目录中Config.in,它看起来像:

config BR2_PACKAGE_SCEW
   bool "scew"
   help
   google scew
Run Code Online (Sandbox Code Playgroud)

我还将以下几行添加到package/Config.in

menu "My Packages"

 menu "Packages I Wrote"
 source "package/MyPackages/packagesIWrote/hello/Config.in"
 source "package/MyPackages/packagesIWrote/helloworld/Config.in"
 endmenu

 menu "External Packages"
 source "package/MyPackages/external-packages/scew/Config.in"
 endmenu

endmenu
Run Code Online (Sandbox Code Playgroud)

这部分似乎有效,因为包已列出并可被选择。hello 和 helloworld 包是从本网站(用法语编写)获取的添加包指南的副本:添加 Hello Wolrd

hello world 包也不起作用。我很乐意接受任何建议,因为似乎我只是在这个问题上绕圈子,我看不出我做错了什么。

小智 0

我遇到了似乎相同的问题:而其他包最终会构建一个可执行文件,然后将其剥离到目录中./project_build_arm/my_device/root/usr/bin/,而我添加的包会构建然后剥离到./build_arm/staging_dir/usr/bin/目录中。

为了解决这个问题,目前我所做的就是将剥离的二进制文件从错误的目录复制到正确的目录。这并不聪明,也不正确,但它确实有效(以创可贴的方式)。

似乎无论出现什么问题,都是以相当高级的方式进行的,因此对于具有更好 buildroot 经验的人来说,上面的描述可能足以诊断问题的实际原因。

...或者你自己解决了吗?