编译fuse的命令 gcc myfuse.c -o myfuse `pkg-config fuse --cflags --libs`

中的 pkg-config fuse --cflags --libs 是什么东西呢?

原来是提供fuse库及图文件的路肩。

直接在命令行打 pkg-config fuse --cflags --libs 结果是:

-D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -pthread -lfuse

其中 -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse 是 --cflags的结果,,-I是头文件的搜索路径.  -pthread -lfuse是--libs的结果,-lfuse是使用fuse库。

对于每一个安装的包,都会生成一个.pc文件, pkg-config fuse --cflags --libs 就是读取 fuse.pc文件,那么这个文件在哪呢?

一般来说, pkg-config 默认会搜索一些路径下的.pc文件,也可以用 PKG_CONFIG_PATH 环境变量额外添加路径。

下面我们就来找fuse.pc


首先查找所有的pkgconfig目录,sudo find /usr  -name "*pkgconfig*" -type d -prune -print,结果是:

/usr/local/lib/pkgconfig
/usr/local/lib/x86_64-linux-gnu/pkgconfig
/usr/lib/pkgconfig
/usr/lib/x86_64-linux-gnu/pkgconfig
/usr/lib/openmpi/lib/pkgconfig
/usr/share/pkgconfig

我们一个个列出这些路径下的文件,最终在 /usr/lib/x86_64-linux-gnu/pkgconfig 下面找到了 fuse.pc

    后来又发现编译fuse-2.9.2后是在/usr/local/lib/pkgconfig下面。

一般来说,通过apt-get安装的软件包,可以通过dpkg -l列出来,使用grep列出特定包。但是通过编译源文件make install的包就不能通过此方法列出来,因为没有经过系统包管理软件的追踪。

但是,一般可以通过pkg-config --list-all 列出来。

比如使用上面方法安装fuse-2.9.2后,可以通过pkg-config --list-all 列出来,如果再make uninstall卸载掉后,pkg-config --list-all 就不再显示。

原理应该是安装操作安装了.pc文件。卸载操作将 .pc文件删除。

pkg-config相关的更多相关文章

  1. config相关操作(转)

    转自:http://www.cnblogs.com/kissdodog/archive/2013/04/16/3025315.html,这是一个专题,感觉比较好,有空可以看与一下 System.Con ...

  2. [转][C#]Web.config 相关配置

    设置默认首页 <?xml version="1.0" encoding="UTF-8"?> <configuration> <sy ...

  3. Storm-kafka源码分析之Config相关类

    要创建一个KafkaSpout对象,必须要传入一个SpoutConfig对象,KafkaSpout的构造函数定义如下: public KafkaSpout(SpoutConfig spoutConf) ...

  4. anaconda2下面安装opencv2.4.13.4完成----解决默认安装的问题----Thefunction is not implemented. Rebuild the library with Windows, GTK+ 2.x orCarbon support. If you are on Ubuntu or Debian, install libgtk2.0‑dev and pkg

    转载自:http://blog.csdn.net/qingyanyichen/article/details/73550924 本人下载编译安装了opencv2.4.9,oppencv2.4.10,o ...

  5. springcloud之config配置中心-Finchley.SR2版

    本篇和大家分享的是springcloud-config配置中心搭建,写到这里突然想起自己曾今开源过基于Redis发布订阅编写的一个配置中心,刚看了git星数有点少哈哈,这里顺势发个连接欢迎大侠们点赞: ...

  6. .NET Core微服务之基于Steeltoe使用Spring Cloud Config统一管理配置

    Tip: 此篇已加入.NET Core微服务基础系列文章索引 =>  Steeltoe目录快速导航: 1. 基于Steeltoe使用Spring Cloud Eureka 2. 基于Steelt ...

  7. spring cloud config配置记录

    1. spring cloud config配置记录 1.1. pom <!-- 分布式配置中心 --> <dependency> <groupId>org.spr ...

  8. npm config 删除变量

    问题 安装npm时,使用npm config set 命令重新设置了变量,但是设置变量时少了个空格,设置错了.使用npm config ls -l 查看环境变量 添加错的这一个,应该如何删除? 解决 ...

  9. spring boot 2.0.3+spring cloud (Finchley)6、配置中心Spring Cloud Config

    https://www.cnblogs.com/cralor/p/9239976.html Spring Cloud Config 是用来为分布式系统中的基础设施和微服务应用提供集中化的外部配置支持, ...

  10. spring cloud(三) config

    spring cloud 配置中心 config 搭建过程 1.搭建config-server 服务端 1.1. 新建boot工程 pom引入依赖 <!-- config配置中心 --> ...

随机推荐

  1. HDU 5001 Walk (暴力、概率dp)

    Walk Time Limit: 30000/15000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Sub ...

  2. luogu P1074 靶形数独

    题目描述 小城和小华都是热爱数学的好学生,最近,他们不约而同地迷上了数独游戏,好胜的他 们想用数独来一比高低.但普通的数独对他们来说都过于简单了,于是他们向 Z 博士请教, Z 博士拿出了他最近发明的 ...

  3. CPU 内存 硬盘的区别

    第一点:CPU 是处理器,内存和硬盘是存储器,受CPU 的控制.  第二点:由于内存的速度很快,在电脑运行的过程中,CPU通常只与内存交换数据,但内存断电数据就会全部丢失,因此电脑使用硬盘作为主要的存 ...

  4. SpringCloud-Eureka注册中心

    什么是微服务,分布式? 分布式:不同的模块部署在不同的服务器上,可以更好的解决网站高并发. 微服务:架构设计概念,各服务间隔离(分布式也是隔离),自治(分布式依赖整体组合)其它特性(单一职责,边界,异 ...

  5. spring security原理图及其解释

    用户发出订单修改页面的请求,Access Decision Manager进行拦截,然后对比用户的授权和次页面需要的授权是不是有重合的部分,如果有重合的部分,那面页面就授权成功,如果失败就通知用户. ...

  6. Vue.js 和 MVVM

    MVVM 是Model-View-ViewModel 的缩写,它是一种基于前端开发的架构模式,其核心是提供对View 和 ViewModel 的双向数据绑定,这使得ViewModel 的状态改变可以自 ...

  7. Go -- 一致性哈希算法

    一致性哈希算法在1997年由麻省理工学院的Karger等人在解决分布式Cache中提出的,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似.一致性哈希修正了CARP使用 ...

  8. BUPT复试专题—矩阵幂(2012)

    https://www.nowcoder.com/practice/31e539ab08f949a8bece2a7503e9319a?tpId=67&tqId=29638&rp=0&a ...

  9. [Cypress] install, configure, and script Cypress for JavaScript web applications -- part1

    Despite the fact that Cypress is an application that runs natively on your machine, you can install ...

  10. 生活娱乐 ATM机键盘余温泄露密码

    安全系统存漏洞 ATM机键盘余温或泄露密码 ATM机会泄露你的银行卡密码? 据美国<大众科学>网站8月30日报道,你的手指在ATM机上留下的余温能让尾随你而来的黑客准确获知你的密码. 加利 ...