minigui 3.2.0:对mgncs剪裁遇到的问题error: The pkg-config script could not be found or is too old.
考虑到嵌入式平台的存储和运行空间都有限,在向目标平台移植时肯定要对minigui及其组件进行剪裁,删除掉不需要的功能和特性,以缩小程序体积,对mgncs做剪裁时遇到了一个非常奇怪的问题,虽然解决了,但现在也没找到根本原因:
根据configure --help
的提示使用--enable-fashionrdr=no
禁用fashion 渲染器(fashion render) 时报错了.
错误信息(片段)如下:
./configure --enable-fashionrdr=no
.....
checking for xmlFree in -lxml2... yes
checking for MINIGUI... no
configure: error: in `/home/gyd/workspace/facelock/dependencies/libmgncs-1.2.0':
configure: error: The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
path to pkg-config.Alternatively, you may set the environment variables MINIGUI_CFLAGS
and MINIGUI_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.To get pkg-config, see <http://pkg-config.freedesktop.org/>.
See `config.log' for more details
错误提示非常明确找不到pkg-config
,但明明我是安装了pkg-config
而且可以正常使用的。
如果我不使用--enable-fashionrdr=no
这个参数禁用fashion render,configure
就可以正常执行。显然问题不出在是不是安装pkg-config
于是找到configure.ac
中与--enable-fashionrdr
相关的代码,如下:
上面的逻辑很清楚,enable_rdr_fashion
中存储了命令行输入的--enable-fashionrdr
的值(enable_rdr_fashion
默认为在代码最开始设置为yes
),
当--enable-fashionrdr=yes
时,会执行PKG_CHECK_MODULES([MGPLUS], [mgplus >= 1.4.0])
,检查minigui的mgplus组件是否安装。而为no
时,不会执行这个动作。于是我做了个简单的测试,删除PKG_CHECK_MODULES([MGPLUS], [mgplus >= 1.4.0])
这一行,则即使不指定--enable-fashionrdr=no
,也会报错了。
所以可以总结:只要执行了PKG_CHECK_MODULES([MGPLUS], [mgplus >= 1.4.0])
就不会报错。
于是我做了如下修改:不论--enable-fashionrdr
为yes
或no
,都执行PKG_CHECK_MODULES([MGPLUS], [mgplus >= 1.4.0])
,就不再报错
为什么?!
按理说pkg-config
检查MiniGUI
与检查mGPlus
是相互独立,互不影响的事件,
但是事实就是PKG_CHECK_MODULES([MGPLUS], [mgplus >= 1.4.0])
这一行是否执行会影响到后面的PKG_CHECK_MODULES([MINIGUI], [minigui >= 3.2.0])
,两个看似没有逻辑关系的事件产生了关联。
太奇怪了,到现在也没找到原因。
minigui 3.2.0:对mgncs剪裁遇到的问题error: The pkg-config script could not be found or is too old.相关推荐
- minigui 3.2.0:基于miniStudio应用TrueType字体的过程(2)-字体边缘锯齿,字库剪裁
CSDN好像有问题,文章中图片太多无法继续增加图片,所以文章分两个部分:上半部分地址: <minigui 3.2.0:基于miniStudio应用TrueType字体的过程(1)>,下半部 ...
- fatal: unable to connect to gitee.com: gitee.com[0: 180.97.125.228]: errno=Unknown error
fatal: unable to connect to gitee.com: gitee.com[0: 180.97.125.228]:errno=Unknown error 致命:无法连接到gite ...
- vue 错误building 2/2 modules 0 activeevents.js: 187 throw er; // unhandled 'error' event..... 解决
vue项目启动时出现 building 2/2 modules 0 activeevents.js: 187 throw er; // unhandled 'error' event Error: ...
- MiniGUI--ubuntu16下安装配置MiniGUI 3.2.0
操作系统:Ubuntu Kylin 16.04 x86 MiniGUI版本:3.2.0 最近一直再搞这个东西,要配置的库真的是太多了.从README帮助文档可以看到3.2.0支持架构有x86 32/6 ...
- 【c语言 gcc9.1.0环境下编译报错】error: ‘true’ undeclared (first use in this function)
问题 网上验证一个单链表是否有环的c语言demo,放到gcc9.1.0的环境下编译,发现编译报错: error: 'true' undeclared (first use in this functi ...
- 【Java从0到架构师】SpringCloud - Sleuth、Zipkin、Config
SpringCloud 链路追踪组件 Sleuth Zipkin 分布式配置中心 - Config Git + Config 分布式配置中心 Java 从 0 到架构师目录:[Java从0到架构师]学 ...
- 关于react-router-dom 6.0.1的更新基本写法 解决Error: A <Route> is only ever to be used as the child of <Routes>
文章目录 前言 一.先准备好要切换的组件 二.在 V5 版本则是这样使用 v5版本:`Router`直接包裹着`Route组件` 三.在V6版本则是这样使用 v6版本:`Route`需要先被`Rout ...
- 【OCC学习5】记录最新版本emcc编译occ的bug:opencascade-7.6.0/src/Standard/Standard_Time.hxx:29:25: error: redefinit
1. 在研究OCC与Webassembly结合使用,编译的时候遇到以下问题: C:/workspace/occ_wasm/opencascade-7.6.0/src/Standard/Standard ...
- Streamsets 安装额外Stage包——CDH6.3.0包报错REST API call error: java.io.EOFException
版本 Streamsets3.16.1(core) CDH6.3.2 一.问题 Streamsets安装包名为streamsets-datacollector-core-3.16.1.tgz,安装好后 ...
最新文章
- MyBatis接口的简单实现原理
- Android 四大组件之——Acitivity(一)
- vue中使用moment来实现导出excel时添加格式化的时间戳
- while循环里面scanf_5.1 for循环
- C++STL特殊容器priority_queue
- POJ-3624 Charm Bracelet dp
- html动图放大太模糊怎么调,如何解决图片放大画质失真问题
- linux 配置apache的虚拟主机
- IP转发的最长前缀匹配
- 工程从进场到竣工 资料报验的一般程序
- matlab画图线形
- 研发岗位OKR的设计与激励 - 管理角度(附部分岗位样例)
- 国内顶尖网页游戏制作人和主策划名单(转)
- 图像变换 - 图像拉伸、收缩、扭曲、旋转- 仿射变换(cvWarpAffine)
- 立此存照:杨振宁 VS 邓稼先 (转贴)
- 使用 Suspense 改善 Vue 3 中的用户体验
- [ubuntn]常用软件安装方法
- Nexus Repository和Docker Registry镜像仓库搭建及使用
- Math:泰勒(Taylor)公式
- hadoop 2.6遇到的DataNode无法启动问题
热门文章
- 详解ISA的HTTP过滤功能
- java mysql 获取页码,java获取word页数
- python截图代码讲解_Python为PPT文件进行截图操作的代码详解
- 使用HttpClient模拟登陆并爬取网页
- Python之字典查找元素(3种方式)
- java拍照识物_智能拍照识别app下载-智能拍照识别软件(拍照识物)下载v2.5.8安卓版-西西软件下载...
- C1任务03 Web的世界(下)
- CE MAPI学习(-)开始一个MAPI Session
- 如何在Excel/WPS表格中使用拼音公式?
- ----顾问应该是探索新领域的向导,而不是拉雪橇的狗