从零开始debian----软件安装与快速调用

这篇博客详细介绍了在debian系统中安装和调用软件的步骤,包括使用apt-get命令处理依赖问题,通过软链接和alias创建快捷方式,以及在不同环境中启动程序的方法。还提到了桌面快捷方式的创建和键盘快捷键的设置。此外,文章涵盖了makefile的使用,以及常见的文件解压操作。

软件安装比较简单。

Tips:

  • 尽量相信官网,对照官网的方法操作,而不是在baidu上胡乱搜索。
  • sources.list中不是别https开头的源,只能处理http开头的。
  • apt-get autoremove和autoclean不一样,后者是删除缓存中内容。
  • 安装产生依赖关系而无法完成时,apt-get -f install可以解决。

软件调用——即运行可执行文件,最直接的方法是cd到可执行文件所在目录,然后./excuteprogramname或者直接输入该文件的名字即可。
对于debian而言,提供了三种快速启动的方法。从Applications Menu启动(这里界面是xfce4,gnome和kde的类似);从terminal启动;快捷键启动。

将程序添加到Applications Menu 只需要向/usr/share/applications/中添加对应的name.desktop即可。比如添加一个iep的快捷方式到Applications Menu可以如下操作。
sudo mousepad /usr/share/applications/iep.desktop
然后往iep.desktop中添加如下内容

[Desktop Entry]
Name=iep
Comment=your comment about iep
Exec=iep_install_path/iep
Icon=iep_icon_path/iep.png
Terminal=false
Type=Application
Categories=Application;Development

其中,Terminal=false是说该程序不同时在terminal中启动;Type=Application是说该程序是可执行程序;Categories是将该程序分类到applications menu下面的Development组下面。

从Terminal启动 要实现这个目标,需要将该可执行文件和某个命令名字关联起来。对于单个命令文件目前有两种关联方法。
1. 软链接 ln -s path/excute_file command_name 这种方式实际上相当于给excute_file创建了一个快捷方式。
2. alias command_name=’path/excute_file’ 这种方式是将‘’中的内容当作一条命令,然后给这条命令一个别名,即command_name。一个可执行文件本身可以作为一条不带参数的命令;然而不仅如此,对于带参数的复杂命令,也可以用alias设定一个简单的别名。
3. (1)在Terminal中执行alias …,是一次性的,关闭该terminal,注销,关机,这种别名关系都将消失。(2)将alias…语句添加到~/.bashrc末尾,则该alias对当前用户永久有效。(3)默认.bashrc中还有一个定位alias到~/.bash_aliases文件的语句,因此,将所有alias…语句添加到~/.bash_aliases文件中更适合统一管理,每次更改~/.bash_aliases后要 source ~/.bashrc 来重新载入.bashrc一次,让该更改马上生效。

创建启动快捷键 xfce4中,ApplicationsMenu–>Settings–>Keyboard–>选择Applications ShortCuts,然后先选择该可执行文件,点击ok,再输入要对应绑定的快捷键即可。

注:上述大部分内容都涉及到查询/知道可执行文件所在位置。所以一般需要用到以下命令。
whereis name 查询name安装的位置,包含可执行文件,链接库,头文件等全部列出,如果是绿色版或者非安装存入系统的可执行文件,则该命令只能告知有否(显示 name:),不能定位到位置(不显示什么)。
which name 查询name这一可执行文件的执行文件位置。如果不是安装进入系统的文件,则该命令不显示任何东西,和没找到一般。这条命令的好处是只列出可执行文件所在路径,更直观,适合快速准确定位可执行文件。
find path -name “namesymbol” 找到路径下名称中带namesymbol字段的所有文件,并列出其路径位置,这条命令适合模糊查找。

其他linux命令
解压文件

.tar.gz—–> tar -zxvf name.tar.gz (gzip文件)
.tar.bz—–> tar -jxvf name.tar.bz (bzip2文件)
.tar.xz—–> xz -d name.tar.xz —-> tar xvf name.tar (xz文件)
.zip———> zip -d name.zip path/file(-d表示删除)删除name.zip中path路径下的file文件;
zip -r name.zip path/
(-r表示递归压缩)将path/以及path/下所有的路径和文件压缩到name.zip中,注意,在name.zip中所有路径都作为了一个文件参与文件计数。
unzip -l name.zip 列出name.zip中所有的文件,路径也作为一个文件参与计数。
zip name.zip -b pathinzip file 将file文件添加到name.zip中的pathzip目录下。

makefile小记 此部分为转载加简化,详见http://blog.youkuaiyun.com/zhangwenjianqin/article/details/4735376
格式如下。

main:main.o mytool1.o mytool2.o
gcc -o main main.o mytool1.o mytool2.o
main.o:main.c mytool1.h mytool2.h
gcc -c main.c
mytool1.o:mytool1.c mytool1.h
gcc -c mytool1.c
mytool2.o:mytool2.c mytool2.h
gcc -c mytool2.c

在Makefile中也#开始的行都是注释行.Makefile中最重要的是描述文件的依赖关系的说明。一般的格式是:
target:components
TAB rule
第一行表示的是依赖关系。第二行是规则。
比如说我们上面的那个Makefile文件的第二行。
main:main.o mytool1.o mytool2.o
表示我们的目标(target)main的依赖对象(components)是main.o mytool1.omytool2.o 当倚赖的对象在目标修改后修改的话,就要去执行规则一行所指定的命令。就象我们的上面那个Makefile第三行所说的一样要执行 gcc-o main main.o mytool1.o mytool2.o 注意规则一行中的TAB表示那里是一个TAB键
Makefile有三个非常有用的变量。分别是 @ ^, < @--目标文件, <–第一个依赖文件。
如果我们使用上面三个变量,那么我们可以简化我们的Makefile文件为:
第一次简化后的makefile
经过简化后,我们的Makefile是简单了一点,不过人们有时候还想简单一点。这里我们学习一个Makefile的缺省规则

.c.o:
gcc -c $<

这个规则表示所有的 .o文件都是依赖与相应的.c文件的。例如mytool.o依赖于mytool.c 于是再一次简化后如下

main:main.o mytool1.o mytool2.o
gcc -o @ ^
.c.o:
gcc -c $<

如果想知道更多的关于Makefile的规则,可以查看相应的文档。
另一种标准的makefile写法:
另一种makefile的标准写法
后记:

  • 关于.desktop文件的更多参数还需要进一步学习
  • 更多命令应该按照这种“完成一个功能目标的多种方式”或者“一个功能针对多种文件格式”等方法来学习。这样就将命令的学习聚焦到一个中心上,更便于分类与记忆
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值