linux
QTVLC
这个作者很懒,什么都没留下…
展开
-
解决error while loading shared libraries: libXXX.so.X: cannot open shared object file: No such file
分析原因:ld提示找不到库文件,而库文件就在当前目录中。链接器ld默认的目录是/lib和/usr/lib,如果放在其他路径也可以,需要让ld知道库文件在哪里。方法1:编辑/etc/ld.so.conf文件,在新的一行中加入库文件所在目录;运行ldconfig,以更新/etc/ld.so.cache文件;方法2:在/etc/ld.so.conf.d/目录下新建任何以.conf为后缀的文件...转载 2020-04-23 14:08:08 · 1142 阅读 · 0 评论 -
boost::bind的理解与使用
最近在几经波折之后,终于对于boost::bind有点理解了。对于习惯了其他语言的人来说,boost::bind是个挺神奇的东西,它可以将你的方法适配成任何其他的方法。其实这得益于c++的模板以及操作符重载,去看boost::bind的实现就会发现它是一个有n多重载的函数,这些重...转载 2020-04-21 11:56:01 · 307 阅读 · 0 评论 -
QtCreator构建套件时出现黄色和红色叹号
在构建套件时手动指定了Kit的Qt版本与GCC版本,结果还是出现红色叹号:原以为是Qt版本与GCC不匹配造成的,后来测试发现两者都正常,按理说不应该是兼容问题,后来把鼠标放到叹号上才找到了...转载 2020-04-17 10:26:31 · 6698 阅读 · 0 评论 -
Ubuntu下ssh使用详细说明
Ubuntu下ssh使用2019年09月27日19:35:341 ssh连接配置LInux的ssh分为客户端openssh-cl...转载 2020-04-16 12:01:27 · 385 阅读 · 0 评论 -
Boost::thread库的使用
1. 概要通过实例介绍boost thread的使用方式,本文主要由线程启动、Interruption机制、线程同步、等待线程退出、Thread Group几个部份组成。2. 线程启动线程可以从以下四种方式启动:第一种用struct结构的operator成员函数启动:struct callable{ void operator()() { 这里略去若干行代码 }}...转载 2019-03-04 13:59:26 · 1279 阅读 · 0 评论 -
linux 内核中得到 当前进程 对应的可执行文件的 绝对路径
标题很拗口。这两天在折腾这个事,把折腾的结果记录一下。先说在应用层怎么搞这个事,很简单:#include <stdio.h> #include <unistd.h> int main() { char link[100], path[100]; sprintf(link, "/proc/%d/exe", getpid());转载 2019-03-06 18:36:47 · 584 阅读 · 0 评论 -
Linux下gcc编译生成动态链接库*.so文件并调用它
动态库*.so在linux下用c和c++编程时经常会碰到,最近在网站找了几篇文章介绍动态库的编译和链接,总算搞懂了这个之前一直不太了解得东东,这里做个笔记,也为其它正为动态库链接库而苦恼的兄弟们提供一点帮助。1、动态库的编译下面通过一个例子来介绍如何生成一个动态库。这里有一个头文件:so_test.h,三个.c文件:test_a.c、test_b.c、test_c.c,我们将这几个文件编译成一个动...转载 2018-10-10 09:19:55 · 285 阅读 · 0 评论 -
HelloWorld CMake CMake中构建静态库与动态库及其使用
继续完善Hello World,建立它的共享库, 包括静态库和动态库。 本节的任务:1,建立一个静态库和动态库,提供HelloFunc函数供其他程序编程使用,HelloFunc向终端输出Hello World字符串。2,安装头文件与共享库。 3, 编写一个程序使用创建的共享库(静态库和动态库)。 cd /home/ccj/CMakeDemomkdir t3&...转载 2018-10-11 20:30:56 · 903 阅读 · 0 评论 -
cache 和 buffer 的区别
Buffer常见的是这个:(来源:train stop buffer bumper)对,就是铁道端头那个巨大的弹簧一类的东西。作用是万一车没停住,撞弹簧上减速慢,危险小一些。叫缓冲。Cache常见的是这个:(来源:维基百科)没错,就是一种保管箱。看到右边那个被锈掉的Food Cache没?这是部署在森林里的存应急物资的保管箱。功能是把你需要用的东西放在更容易拿到的地方。虽...转载 2018-09-11 09:59:21 · 146 阅读 · 0 评论 -
linux SIGSEGV 信号捕捉,保证发生段错误后程序不崩溃
在linux中编程的时候 有时候 try catch 可能满足不了我们的需求。因为碰到类似数组越界 ,非法内存访问之类的 ,这样的错误无法捕获。下面我们介绍一种使用捕获信号实现的异常 用来保证诸如段错误之类的错误发生时程序不会崩溃,而是跳过代码继续执行。首先我们来看看发生段错误之后系统的处理。发生段错误后系统会抛出 SIGSEGV 信号 ,之后 调用默认的信号处理函数 ,产生core文件 ,然...转载 2018-09-05 14:24:48 · 1955 阅读 · 0 评论