qt linux 添加库文件路径,linux下qt使用第三方库的那些事

开发库查看工具:$sudo apt-get install pkg-config

很多时候我们并不知道自己电脑有没有这个库,所以我们可以使用这个工具来查看自己有哪些工具,或者哪些工具没有。同时,qmake是对这个工具配置支持的,所以我们很多时候很方便的使用这个。

bVz8BW

bVz8B3

从截图可以看出我们可以通过这个工具查到自己的库的所在位置,还有它所依赖的其他库。

开发库的一些标准:

bVz8C9

上面截图是一个配置poppler-qt5 和ffmpeg这两个开发库的配置文件列表,我们发现这里有用到了LIBS+=还有PKGCONFIG+=这两个东西,他们有什么区别呢?其实他们都做了相同的事情,就是告诉qt 找到对应的库目录。LIBS是一个比较简单原始的办法,我们可以直接在后面加库的路径,以可以通过-l参数直接加入库的名称。PKGCONFIGz这个其实是qt对pkg-config的支持,大家看到CONFIG+= .... link_pkgconfig这个参数,其实它就是qmake会自动执行pkg-config这个工具,找到对应的库文件目录,根据的是PKGCONFIG+= poppler-qt5这一行命令。为啥有些会用LIBS+= ,然而有些用PKGCONFIG?其实两个都可以任选一个,只要使用正确就好了。只是PKGCONFIG提供了更高级的用法,大家注意后面的库文件没有前缀lib,那是应为pkg-config工具做的事情,将其简化了,很多库都可以直接这样用。当然有些库是没有的,至于有没有,我们可以直接使用命令pkg-config --cflags ××× 来验证它是否存在就好了。

第三方库的下载,我们在用某个东西,qt编译报错提示找不到库的时候,不要急,使用apt-cache search 命令模糊搜索这个库具体是什么,然后sudo apt-get install lib*-dev就行了。比如qt编译时候报错:cannot find -lavcodec ,我们可以进终端:apt-cache search avcode ,然后找到libavcode-dev 这个,复制下来安装:sudo apt-get install libavcodec-dev。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/348363.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

xp系统上安装linux系统教程,XP系统如何安装fedora linux双系统?WinXP安装fedora linux双系统的方法...

有位朋友因为想在linux中熟悉下hadoop的配置开发环境,所以就开始于WinXP系统中安装fedora linux双系统,可是操作了很久都没成功。这该如何怎么办呢?接下来,小编就给大家介绍WinXP安装fedora linux双系统的具体方法。1.下载Fedora-…

solr 的maven_使用Maven运行Solr

solr 的maven使用Maven运行Solr Solr是一个开源搜索服务器,它是使用Lucene Core的索引和搜索功能构建的,它可以用于使用几乎任何编程语言来实现可扩展的搜索引擎。 尽管Solr具有许多优点,但建立一个开发环境并不是其中之一。 这篇博客文章描…

linux指定内核位置,ARM linux内核启动时几个关键地址

1. 内核启动地址ZTEXTADDR解压代码运行的开始地址。没有物理地址和虚拟地址之分,因为此时MMU处于关闭状态。这个地址不一定时RAM的地址,可以是支持读写寻址的flash等存储中介。Start address of decompressor. heres no point in talking about vi…

pae扩展内存 linux,Linux内核-内存管理-PAE(物理地址扩展)

Intel 通过在处理器上把管脚数从 32 增加到 36,以提高处理器的寻址能力,使其达到 2^3664GB,然而线性地址的位数仍然是 32 位,为此,需引入一种新的分页机制。从pentium pro 处理器开始,intel引入一种叫做 PA…

java嵌入式db_Java DB嵌入式模式

java嵌入式dbJava DB是基于Java编程语言和SQL的关系数据库管理系统。 这是Apache软件基金会的开源Derby项目的Oracle版本。 Java SE 7 SDK中包含Java DB。 Java DB有两个部署选项: Embedded和Network Server 。 这篇文章是关于嵌入式部署或模式的。 1.嵌入式 在嵌…

内存属于linux文件吗,linux下的/dev/shm是什么? 内存 文件系统

linux下的/dev/shm是什么?/dev/shm/是linux下一个目录,/dev/shm目录不在磁盘上,而是在内存里,因此使用linux /dev/shm/的效率非常高,直接写进内存。我们可以通过以下两个脚本来验证linux /dev/shm的性能:[r…

群晖备份linux分区,数据丢失的后悔药,群晖NAS备份方案详解

“秒速开机”——据说90%的人都是因为这句话而知道的SSD固态硬盘。相比于机械硬盘,SSD固态硬盘开机快、关机快、打开软件快、载入数据快、拷贝快、删除也快——既快乐、又爽快,更是大块人心!然而,SSD固态硬盘已经可以完全取代机械硬盘了吗&am…

php cdi_异步CDI事件

php cdi几天前,在我们的常规代码审查中,我的一位同事提出了一个问题,即如果可能,一次同时调用CDI观察者(这样的方法带有参数Observes )将发生多次?用于不同的事件实例。 换句话说,在…

tg3269c网卡驱动linux,TP-Link3269C网卡驱动官方版

TG-3269C驱动是一款能够安装于由普联发布的无线网卡驱动,通过此安装驱动我们手机和其他无线设备才能连接上无线网卡并进行上网,同时如果你的网卡经常出现断开和重连、网络不稳定等情况可以通过重新安装驱动,查看是否是硬件的问题,…

使用Spring Security,Thymeleaf和Okta保护Java应用程序的安全

永不再构建身份验证 –喜欢构建用户管理? 使用Okta,您可以在几分钟内为您的应用程序添加社交登录,多因素身份验证和OpenID Connect支持。 立即创建一个免费的开发者帐户。 在构建Java应用程序时,用户管理是至关重要的考虑因素。 …

红旗linux添加usb无线网卡,在Ubuntu 8.10中安装无线网卡RTL8187SE驱动

本人的笔记本是微星的Wind U90,自带的无线网卡是RTL8187SE。这款无线网卡在一般的Linux下是没有驱动的,微星的官方也仅仅提供在OpenSUSE下的驱动。为了在我的Ubuntu下使用这个网卡,只能自己动手了。还好,有了互联网上各位大侠和微…

java linq_LINQ和Java

java linqLINQ已经非常成功,但在.NET生态系统中也引起了争议。 许多人正在Java世界中寻找可比的解决方案。 为了更好地理解什么是可比的解决方案,让我们看一下LINQ解决的主要问题: 查询语言通常是具有许多关键字的声明性编程语言。 它们提供…

嵌入式 linux restful,嵌入式 RESTful 框架 express.java

软件介绍express.java 是一个微型的 RESTful Web 框架。可用于嵌入应用内部,替代 JMX 用于跨语言通讯。示例代码:WebServer.jettyServer().get("/", new AjaxController() {Overridepublic Object ajax(ParamMap params) {return ResultMap.cr…

将Google reCaptcha与Spring Boot应用程序结合使用

介绍 Google的reCaptcha是一个用于防止漫游器向您的公共表单提交数据或访问您的公共数据的库。 在本文中,我们将研究如何将reCaptcha与基于Spring Boot的Web应用程序集成 设置验证码 您应该从管理面板创建API密钥。 您必须创建一个示例应用程序,如下所…

探索 HTTP 请求的世界:get 和 post 的奥秘(上)

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

linux 书签管理工具,在书签管理工具中使用Ubuntu字体

通过便捷书签管理程序(Bookmarklet,一种在浏览器中存放书签URL地址的应用程序)来在大多数的网站上推广使用Ubuntu系统的默认字体。——读者米格尔费尔南迪斯米格尔在他的想法产生之前告诉我们说:“我发现Ubuntu系统的字体在提高可读性上超过了绝大多数的…

linux18.2安装界面,Ubuntu 18.10下安装Grub Customizer 5.1.0配置grub2图形化界面

配置Grub2/burg引导装载程序Grub Customizer 5.1.0新增加对Ubuntu 18.10的支持,我们可以用PPA源来安装,同时还支持Ubuntu 18.04、16.04、14.04。Grub Customizer简介Grub Customizer是用来配置Grub/burg引导装载程序的图形工具,此次发布的5.1…

使用Eclipse和Open Liberty的Java EE 8上的Java 9

几周前,我写了一篇文章,标题为哪个IDE和服务器支持Java EE 8和Java9 ,着眼于Java 9和Java EE 8之间的当前运行状态。您可以期待事情发展很快,我们现在有了一些alpha和支持Java 9和Java EE 8的开发版本。这些是– Payara 5 –适用…

深入浅出linux工具与编程 下载,8208.深入浅出Linux工具与编程.pdf

<>猛点这里下载全部内容目录&#xff1a;第1篇Linux命令及其工具第1章Linux系统与命令1.1Linux操作系统1.1.1Linux重要概念1.1.2Linux组成1.1.3Linux目录结构1.1.4Linux操作系统的组成1.1.5Linux用户管理1.1.6Linux文件管理1.2Linux命令1.2.1Linux命令帮助1.2.2Linux命令…

linux删除含有特殊字符的行,Linux 删除带有特殊字符的文件

禁止页面后退JS(兼容各浏览器)XML中&lt&semi;beans&gt&semi;中属性概述