linux
文章平均质量分 52
l
L888666Q
这个作者很懒,什么都没留下…
展开
-
创建makefile链接源文件和库生成可执行文件
这个错误信息是在链接阶段发生的,意味着链接器(ld)在尝试链接你的程序时遇到了问题。这表示链接器找到了名为 libNetworkRuntime900_CM7_GCC.a 的静态库文件,但是因为它与当前的目标系统不兼容(可能是架构不匹配,比如库是为32位系统编译的,而你的系统是64位的,或者库是为不同的处理器架构编译的),所以链接器决定跳过这个库。原创 2024-04-19 13:42:38 · 379 阅读 · 0 评论 -
shell脚本命令筛选特定字符
提取路径中最后一个斜杠(/)后面的字符串提取路径中最后一个斜杠(/)之前的字符串原创 2023-07-14 14:14:19 · 1332 阅读 · 0 评论 -
关于静态库和动态库的操作
objdump -x命令会列出二进制文件的各种头部信息,包括文件类型、系统架构、入口地址、段表、符号表、动态符号表、重定位表等等。这样就可以将新的.o文件添加到原来的.so库文件中。需要注意的是,objdump -x命令只显示二进制文件的头部信息,如果需要查看更详细的反汇编信息,可以使用其他objdump命令,比如objdump -d命令。原创 2023-06-02 16:37:54 · 1733 阅读 · 0 评论 -
CMAKE介绍和使用(Windows平台)
CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。原创 2023-05-15 16:12:53 · 6249 阅读 · 1 评论 -
CMAKE介绍和使用(Linux平台)
CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。假设工程代码是如下形式:CMakeLists.txt 可以写成如下的形式:CMakeLists.txt 的语法比较简单,由命令、注释和空格组成,其中命令是不区分大小写的。符号 后面的内容被认为是注释。命令由命令名称、小括号和参数组成,参数之间使用空格进行间隔。对于上面的 CMakeLists.txt 文件,依次出现了几个原创 2023-05-10 17:49:41 · 4826 阅读 · 0 评论 -
valgrind内存检测结果详解
转载记录。转载 2022-09-08 10:23:14 · 492 阅读 · 0 评论 -
makefile之链接lib或so文件生成android环境可执行程序
fPIC与-fpic都是在编译时加入的选项,用于生成位置无关的代码。-fPIC和-fpic最大的区别在于是否对GOT的大小有限制。-fPIC对GOT表大小无限制,所以如果在不确定的情况下,使用-fPIC是更好的选择。-fPIE与-fpie是等价的。这个选项与-fPIC/-fpic大致相同,不同点在于:-fPIC用于生成动态库,-fPIE用与生成可执行文件。但要生成PIE程序,必须两者配合使用,即使用-fpie -pie或-fPIE -pie。有 -fpie, -fPIE, -pie三个参数。原创 2022-09-07 15:56:54 · 1886 阅读 · 2 评论 -
valgrind内存调试工具
首先代码中使用的是系统的malloc和freememcheck工具检测代码中内存泄露和越界问题:valgrind --tool=memcheck --leak-check=full -v ./test-v 更详细的信息, 增加错误数统计massif工具统计代码中内存占用:valgrind --tool=massif ./test会生成一个 massif.out.进程ID 文件可视化内存占用信息:ms_print massif.out.进程IDtotal是内存峰值,下面原创 2022-03-03 17:37:09 · 244 阅读 · 0 评论 -
解决ssh服务器报错:agent refused operation
在服务器添加完公钥之后,ssh服务器然后报错sign_and_send_pubkey: signing failed: agent refused operation执行以下命令即可eval "$(ssh-agent -s)"ssh-add原创 2021-06-11 10:54:53 · 593 阅读 · 1 评论 -
编译器优化
-O0 -O1 -O2 -O3 -Os -Ofast -Og 编译选项优化差异:https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options局部禁用优化: 函数禁用优化为函数设置__attribute__((optimize(“O0”)))属性#include <stdio.h>void __attribute__((optimize("O0"))) blabla(void) {}原创 2021-03-17 16:30:20 · 2186 阅读 · 0 评论 -
ubuntu执行编译命令提示"No such file or directory"
uname -a 查看系统是32位或64位若是64位可能没有安装32位库安装32位lib库:sudo apt-get install nautilus-open-terminal bison zlib1g-dev doxygen libxext-dev libpulse-dev libasound2-dev libesd0-dev git-core gnupg flex bison g原创 2018-03-05 17:01:19 · 11194 阅读 · 1 评论