工作随机整理--01

Makefile

目标文件:生成目标文件所需的文件执行体

符号含义
:=向前取变量的变量
#表示变量定义的终止
?=表示定义过则赋值,否则不操作
$(var:a=b)将var中以a结尾的换成b
substr替换函数
$(<function><arguments>)函数调用
$(substr<from>,<to><text>)替换
patsubst将某种模式的值替换掉
strip去空格【开头和结尾】
findstring查找并返回字符串,否则返回空字符串
$(filter <pattern>,<text>)查找符合模式pattern的字符串
filter-out返回不符合模式pattern的字符串
sort排序
word返回第n个单词,否则返回空
dir取/前的目录
nodir取/后的目录
basename取前缀

make的退出码 0为成功执行,1为出现错误
2/-q 退出且不需要更新

GNU make 是在目录下依次找 GNUmakefile/makefile/Makefile
指定 可使用 makefile -f **.mk
make的环境变量是MAKECMDGOALS
隐含规则 CFLAGS控制编译时的编译参数
-r可取消所有预设置中的隐藏规则
隐含规则的命令 $(CC) -C $(CFLAGS) $(CPPFLAGS)

日常工作用到的一些缩写

  • CCD 电荷耦合器件(CCD)
    电荷表示信号大小,用耦合方式传输信号的探测原件
  • OCR optic character recognize
    光学字符识别技术,图像转文本
  • SANE scanner access now easy
    光栅图像扫描硬件标准化的访问
  • CIS contact Image Sensor
  • DPI Dots Per Inch
  • PID/VID Packet Identifier/Vendor ID
  • ADF Automatic Document Fender
  • DADF Double Automatic Document Fender

关于RPM和DPKG

rpm -qa|grep packagename 筛选安装过的包
rpm -ivh packagename 安装程序/应用
rpm -e packagename 卸载安装软件
rpm -qpR packagename 查看rpm包的依赖关系,若已安装可使用rpm -qR查询

使用nodeps可使其安装时不检查依赖关系(dpkg or rpm?)
Tab键可直接输出软件包的全称
上下键可复制粘贴出对应的输入命令
ctrl+c 终端停止命令

rpm添加库文件报错cpio:Digest mismatch 可以使用prelink -u操作库文件后再打包即可
关于打包提示invalid rpath报错,可以使用

QA_RPATHS=0x0002 rpmbuild -ba ***.spec
#0x0001 standard rpath
#0x0004 insecure rpath

rpm打包提示空%file文件 debugsourcefiles.list:在rpmbuild加上–nodebuginfo

vim 查找关键字
shift+: 进入命令行模式
/+关键字 回车后查找 n:查找下一个 N:查找上一个

dpkg -l \| grep packagename  #筛选安装过的包 
dpkg -i packagename #安装应用 
dpkg -r packagename #卸载应用   使用-P或者--purge 可完全卸载安装过的包
dpkg --ignore-depends=libc6 -i packagename #去掉依赖项

#dpkg列表中存在rc状态的软件包,可以使用如下命令清理
dpkg -l|grep ^rc|awk '{print $2}'|sudo xargs dpkg -P

#软件包post-removal脚本子进程返回错误状态1
vim /var/lib/dpkg/status #找到对应的包名,删除包名对应的一整段

常用到的shell命令

命令含义
rm -i filename删除文件夹
sed -i直接对文本文件进行操作
grep -r ‘**’查找当前问之下所有文件中包含**的位置显示
gunzip ***.gzgz文件解压
tar -xftar文件解压
tar -xjvf.tar.bz2 文件解压
tar -cjf.tar.bz2 文件压缩
tar -zxvf.tar.gz 文件解压
tar -xcvf.tar.gz 文件压缩
find / -name filename查找文件

解决一些小问题:
make[1]: 警告 文件的修改时间在将来的……
使用: find ./* -exec touch {} +;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值