Linux软件移植configure和menuconfig优缺点对比

在Linux系统中安装、测试一项beta版软件,真不是一件容易的事。相信Linux软件测试工程师对configure和menuconfig优缺点深有体会,待测软件预编译阶段依赖库,autoconf、automake、libtool等脚本工具,及字符图形界面库libncurses都是必备。而native-compile及cross-compile前都要对待测软件进行预编译配置,这就需要最常用的configure和menuconfig来完成。

一、GNU configure配置

       这种方式是GNU组织发布的软件通用配置方式,我称之为“GNU风格”。配置完成后,生成Makefile.in、Makefile等脚本,供后续正式编译阶段make的自动化执行。

       优点:1、预编译阶段全面检查依赖库,并打印出结果;

                  2、Makefile脚本逻辑清晰、执行高效;

       缺点:1、纯字符命令行界面,不能直观、全面地展示软件的组件、功能选项;

                  2、配置参数复杂,完全手工输入,效率较低;

       代表性软件:binutils、coreutils、gcc、ncurses、samba、texinfo

Linux软件移植configure和menuconfig优缺点对比

二、Kbuild menuconfig配置

      这种方式是Kbuild框架的软件通用配置方式,我称之为“Kbuild风格”。配置完成后,生成隐藏的.config文件,供后续正式编译阶段make的自动化执行。

       优点:1、直观、较全面地展示软件的组件、功能选项;

                  2、项目清单式的.config文件内容,易于阅读;

       缺点:1、软件依赖性不能直观打印出来,调试、改配置循环进行,效率低;

                  2、Kconfig框架复杂,增减配置需对多层子项目Kconfig修改;

       代表性软件:Linux-kernel、buildroot、crosstool-ng、busybox、uClibc

Linux软件移植configure和menuconfig优缺点对比

 

相关文章:

  • 2021-10-23
  • 2022-12-23
  • 2021-09-17
  • 2021-11-09
  • 2021-12-08
  • 2021-08-26
  • 2021-05-29
猜你喜欢
  • 2021-09-30
  • 2022-02-10
  • 2022-12-23
  • 2021-11-17
  • 2022-12-23
相关资源
相似解决方案