AllWinner T113 buildroot 包篇

buildroot主要解决:1、如何增加packge?2、如何提交修改代码?

cd buildroot/buildroot-201902/

make menuconfig需要哪些package需要加入系统

引导的是.config ,此文件是如何生成的?他对应的defconfig都是在根目录device目录下定义的。

编译一次buildroot目录后即会生成.config文件。

 编译生成后,需要将对应的config配置放到相应的defconfig中。

另外,如果本地的buildroot中没有此库,也可以google查看最新的buildroot是否有相应库支持,如libgeos库。

如下所示增加一个libgeos库

diff --git a/buildroot/buildroot-201902/package/Config.in b/buildroot/buildroot-201902/package/Config.in
index 4692ebed40..574290a89d 100755
--- a/buildroot/buildroot-201902/package/Config.in
+++ b/buildroot/buildroot-201902/package/Config.in
@@ -1667,6 +1667,7 @@ menu "Other"
        source "package/libevent/Config.in"
        source "package/libffi/Config.in"
        source "package/libgee/Config.in"
+       source "package/libgeos/Config.in"
        source "package/libglib2/Config.in"
        source "package/libglob/Config.in"
        source "package/libical/Config.in"
diff --git a/buildroot/buildroot-201902/package/libgeos/Config.in b/buildroot/buildroot-201902/package/libgeos/Config.in
new file mode 100755
index 0000000000..8411627d43
--- /dev/null
+++ b/buildroot/buildroot-201902/package/libgeos/Config.in
@@ -0,0 +1,19 @@
+config BR2_PACKAGE_LIBGEOS
+       bool "libgeos"
+       depends on BR2_INSTALL_LIBSTDCPP
+       depends on BR2_USE_WCHAR
+       depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_27597
+       help
+         GEOS (Geometry Engine - Open Source) is a C++ port of the
+         JTS Topology Suite (JTS). It aims to contain the complete
+         functionality of JTS in C++. This includes all the OpenGIS
+         Simple Features for SQL spatial predicate functions and
+         spatial operators, as well as specific JTS enhanced functions.
+
+         https://trac.osgeo.org/geos
+
+comment "libgeos needs a toolchain w/ C++, wchar, threads not binutils bug 27597"
+       depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
+                  !BR2_TOOLCHAIN_HAS_THREADS || \
+                  BR2_TOOLCHAIN_HAS_BINUTILS_BUG_27597
diff --git a/buildroot/buildroot-201902/package/libgeos/libgeos.hash b/buildroot/buildroot-201902/package/libgeos/libgeos.hash
new file mode 100755
index 0000000000..3b913b750c
--- /dev/null
+++ b/buildroot/buildroot-201902/package/libgeos/libgeos.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256  3c141b07d61958a758345d5f54e3c735834b2f4303edb9f67fb26914f0d44770  geos-3.10.3.tar.bz2
+sha256  dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551  COPYING
diff --git a/buildroot/buildroot-201902/package/libgeos/libgeos.mk b/buildroot/buildroot-201902/package/libgeos/libgeos.mk
new file mode 100755
index 0000000000..443c884abe
--- /dev/null
+++ b/buildroot/buildroot-201902/package/libgeos/libgeos.mk
@@ -0,0 +1,32 @@
+################################################################################
+#
+# libgeos
+#
+################################################################################
+
+LIBGEOS_VERSION = 3.10.3
+LIBGEOS_SITE = http://download.osgeo.org/geos
+LIBGEOS_SOURCE = geos-$(LIBGEOS_VERSION).tar.bz2
+LIBGEOS_LICENSE = LGPL-2.1
+LIBGEOS_LICENSE_FILES = COPYING
+LIBGEOS_INSTALL_STAGING = YES
+LIBGEOS_CONFIG_SCRIPTS = geos-config
+LIBGEOS_CONF_OPTS = -DBUILD_BENCHMARKS=OFF
+
+LIBGEOS_CXXFLAGS = $(TARGET_CXXCFLAGS)
+
+ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_68485),y)
+LIBGEOS_CXXFLAGS += -O0
+endif
+
+ifeq ($(BR2_arm)$(BR2_armeb),y)
+LIBGEOS_CONF_OPTS += -DDISABLE_GEOS_INLINE=ON
+endif
+
+ifeq ($(BR2_or1k),y)
+LIBGEOS_CXXFLAGS += -mcmodel=large
+endif
+
+LIBGEOS_CONF_OPTS += -DCMAKE_CXX_FLAGS="$(LIBGEOS_CXXFLAGS)"
+
+$(eval $(cmake-package))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值