linux
文章平均质量分 66
Hardy-Lee
一名c++程序猿!主要做android ndk方向研发,专注于底层技术,对于新技术充满学习兴趣!!!
展开
-
ubuntu 16.04 An error occurred during the signature verification. The repository is not updated and
今天在使用:sudo apt-get update出现了下面的错误:W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used解决方法sudo apt-get clean cd /var/lib/apt sudo mv lists lists.old sudo mkdir -p转载 2022-01-14 22:36:45 · 2222 阅读 · 0 评论 -
Ubuntu16.04下安装gcc-7.5.0教程
目录一、安装包准备二、安装一、安装包准备本地gcc7.5.0版本所需安装包如下:gcc-7.5.0.tar.gzgmp-6.1.0.tar.bz2mpc-1.0.3.tar.gzmpfr-3.1.4.tar.bz2isl-0.16.1.tar.bz2这几个安装包在国外网站下载速度很慢,用中国科学技术大学镜像下载地址速度很快的:https://mirrors.ustc.edu.cn/gnu/用如下命令分别下载:wget https://mirrors.ustc.edu.cn/g转载 2022-01-14 19:03:55 · 3338 阅读 · 0 评论 -
gcc编译参数-fPIC的一些问题
-fPIC 作用于编译阶段,告诉编译器产生与位置无关代码(Position-Independent Code),则产生的代码中,没有绝对地址,全部使用相对地址,故而代码可以被加载器加载到内存的任意位置,都可以正确的执行。这正是共享库所要求的,共享库被加载时,在内存的位置不是固定的。gcc -shared -fPIC -o 1.so 1.c这里有一个-fPIC参数PIC就是position independent codePIC使.so文件的代码段变为真正意义上的共享如果不加-fPIC,则加载.转载 2021-11-20 17:45:09 · 1227 阅读 · 0 评论 -
undefined reference to symbol ‘dlclose@@GLIBC_2.2.5‘
编译可执行程序,链接glfw时报错信息undefined reference to symbol 'dlclose@@GLIBC_2.2.5',网上一番搜索,最终在stackoverflow上找到一条有用的解决办法点击跳转,截图如下提问:回复:原创 2021-10-19 10:42:03 · 3667 阅读 · 0 评论 -
在Linux中创建静态库.a和动态库.so
我们通常把一些公用函数制作成函数库,供其它程序使用。函数库分为静态库和动态库两种。1. 静态函数库 这类库的名字一般是libxxx.a;利用静态函数库编译成的文件比较大,因为整个 函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用的函数都已经被编译进去了。当然这也会成为他的缺点,因为如果静态函数库改变了,那么你的程序必须重新编译。2. 动态函数库 这类库的名字一般是libxxx.so;相...转载 2021-06-11 09:26:34 · 428 阅读 · 0 评论 -
ubuntu:beyond compare 4 This license key has been revoked 解决办法
错误如图所示:解决办法:(1)先用find命令找到bcompare所在位置:sudo find /home/ -name '*bcompare'(2)进入 /home/whf/.config,删除/bcomapre文件夹注意一般.config为隐藏文件,通过 ctrl+h 可以显示:(3)cd /usr/lib/beyondcompare/(4)sudo sed -i "s/keexjEP3t4Mue23hrnuPtY4TdcsqNiJL-5174TsUdL...转载 2020-10-17 11:02:03 · 3178 阅读 · 3 评论 -
linux 下tar.xz创建和解压
创建tar.xz文件:1. tar cvf xxx.tar xxx/ #创建xxx.tar文件2.xz -z xxx.tar #将 xxx.tar压缩成为 xxx.tar.xz解压tar.xz文件:1. xz -d xxx.tar.xz #将 xxx.tar.xz解压成 xxx.tar2. tar xvf xxx.tar #解压.tar原创 2020-06-17 12:50:51 · 612 阅读 · 0 评论 -
UDP打洞原理
本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.许多P2P软件比如SKYPE,QQ,电驴之类需要不同内网的两台机子进行通信,而路由器的NAT机制决定了内网访问外网容易,而外网访问内网困难,那如何才能做到这一点呢?有办法------打洞!具体实现方法需要一台服务器,现在假设两台内网PC,A和B想用端口40000通信,网关分转载 2016-09-08 23:01:10 · 1678 阅读 · 0 评论 -
malloc,free的简单实现
首先简单说一下标准库中malloc实现原理: 标准库内部通过一个双向链表,管理在堆中动态分配的内存。 malloc函数分配内存时会附加若干(通常是12个)字节,存放控制信息。 该信息一旦被意外损坏,可能在后续操作中引发异常。mmap/munmap 底层不维护任何东西,只是返回一个首地址,所分配内存位于堆中。brk/sbrk 底层维护一个原创 2014-10-12 12:33:15 · 1948 阅读 · 2 评论 -
用GDB调试程序
[GDB概述————GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但如果你是在UNIX平台下做软件,你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大的功能。所谓“寸有所长,尺有所短”就是这个道理。一般来说,GDB主要帮忙你完成下面四个方面的功能: 1、启动你转载 2014-08-31 18:15:45 · 561 阅读 · 0 评论 -
Linux core 文件介绍
【转自1. core文件的简单介绍在一个程序崩溃时,它一般会在指定目录下生成一个core文件。core文件仅仅是一个内存映象(同时加上调试信息),主要是用来调试的。2. 开启或关闭core文件的生成用以下命令来阻止系统生成core文件:ulimit -c 0下面的命令可以检查生成core文件的选项是否打开:ulimit -a该命令将显示所有的用户定制,其中选转载 2014-08-31 18:17:08 · 540 阅读 · 0 评论 -
CentOS 6.4 编译安装 gcc-4.8.0
1.首先下载源代码wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2 2.解压tar -jxvf gcc-4.8.0.tar.bz2 3.下载编译所需的依赖项转载 2014-08-06 14:50:29 · 1826 阅读 · 0 评论 -
vi 快捷键
Vi提供了三个关于光标在全屏幕上移动并且文件本身不发生滚动的命令。它们分别是H、M和L命令。 (1)H命令 该命令将光标移至屏幕首行的行首(即左上角),也就是当前屏幕的第一行,而不是整个文件的第一行。利用此命令可以快速将光标移至屏幕顶部。若在 H命令之前加上数字n,则将光标移至第n行的行首。值得一提的是,使用命令dH将会删除从光标当前所在行至所显示屏幕首行的全部内容。转载 2014-08-18 14:41:04 · 937 阅读 · 0 评论 -
ubuntu下root用户启用
一、其实我个人认为这没有多大必要,因为当你需要 root 的权限时,使用 sudo 便可以了。如果你实在需要在 Ubuntu 中启用 root 帐号的话,那么不妨执行下面的操作: 1.重新设置 root 的密码: $sudo passwd root #按照提示输入两次新的密码,并加以确认。 2.启用root用户登录: $sudo vi /etc/X11转载 2014-04-22 23:44:15 · 1005 阅读 · 0 评论 -
linux下提示:command not find解决方法
在linux下我们经常输入某些命令时经常出现提示说:command notfind。对此网上已经有很多人对此作了阐述,但是对于菜鸟来说可能仍然不理解,下面我我对这个做一下详细说明。首先 当出现 command notfind时肯定是环境变量的问题,所以得修改环境变量。下面我也引用一下其他牛人博文解释一下:提示:/bin:bin为binary的简写主要放置一些系统的必备执行档例转载 2014-04-22 23:41:18 · 35479 阅读 · 4 评论