sinox下面kdevelop for C++快速入门
上次我写了vc不适合开发软件这篇文章,并提到kdevelop这个开发工具.那么这个开发工 具是否比vc先进呢?下面你将找到答案.你将发现在sinox下面开发软件是那么简单方便! 即使你不开发c++程序,你也要用kdevelop!kdevelop是sinox下面标准可视化开发工具!
这是本站为sinox用户设计的kdevelop学习教程,旨在帮助sinox用户迅速掌握kdevelop 开发工具,这是国内最完整的kdevelop中文入门教程.
kdevelop for C++是一个可视化开发工具,跟C++Builder,Delphi类似.
运行kdevelop的IDE for c/c++.kdevelop版本是3.2.2(使用kde3.4.2)
1.建立工程 选择工程菜单的新建工程 选择c++/Kde/Appliation Framework,输入应用程序名称和所在路径.然后next直到完成 ,选项自己根据需要设置.
2.编译执行 现在可以执行编译菜单的执行程序,他会用automake配置程序,然后编译执行. 这是时会出现如下错误! UNAME_VERSION = Sinox 1.2-RELEASE #0: Mon Jan 9 01:22:17 UTC 2006 root@sinox.shouji88.com:/usr/obj/usr/src/sys/GENERIC configure: error: cannot guess build type; you must specify one无法猜测编译 操作系统类型,请指定一个! ** 退出状态:1 ** 这是因为这个kdevelop是在freebsd下编译开发的,automake针对freebsd设置编译选项. 而sinox还没有自己的编译选项!所以必须加入! 我用替换方法把configure和admin/config.guess两个文件freebsd区分大小写替换 ,configure用freebsd,config.guess用FreeBSD替换. 这两个文件是通用的,下次复制到新的项目即可!你要在sinox编译其他开源软件也可能 要这样做. 我运行了模板simple KDE Application和simple Designed Based KDE Application获 得通过.Appliation Framework没通过. 源代码在src,翻译在po.通过工程菜单运行添加翻译,在po目录下生成一个 zh_CN.GB2312.po,双击用Kbabel打开.关于翻译以后再补充.翻译函数用i18N. 源代码中main.cpp为主程序,有main函数.
3.添加界面 我从simple Designed Based KDE Application建立一个项目.从文件菜单新建建立一个 文件,可以是ui(user interface用户界面),cpp,h. 我选择Dialog wid buttons(Bottom)ui,输入form1,在src生成一个form1.ui文件,双击 打开,这是一个表单界面. 修改表单标题,并加入一个pushButton,并双击建立clicked事件. 现在要给这个表单界面创建一个类.从而实现编成. 选中form1.ui,右键菜单执行create or select implementation,出现建立新类.我创建 新类 form1,然后生成form1.h和form1.cpp两个文件. signal和slot, signal是发出事件,slot是接收处理事件. connect是把事件发往槽,让 slot处理.界面中connects是连接事件, slots是事件函数的状态. Widget是窗口基类. ui的界面控件不少,可以帮助迅速开发界面程序.ui生成一个xml文件文件. 数据库开发请参考文档Creating Dadabase Application,具有数据感知控件,编程也非 常简单. ui编辑可以创建数据库连接,工程->database connections.这样会创建数据库连接,程 序中直接用.测试你能否连接数据库. 我没有看到可用的驱动程序,可能需要安装.因此设置连接出现driver is not loaded错 误.mysql用QMYSQL3驱动程序,默认端口3306
4.事件编程 现在加入按钮pushButton.选中加入的按钮,选择属性框的 signal handler事件,双击 clicked出现一个pushButton2_clicked事件!双击clicked事件或者它左边的工具图标 (有时侯无法创建代码,只能双击clicked),进入代码编程.它在.h,.cpp自动加入事件代 码!这个很类似delphi吧. 编译运行,按钮怎么没有出现?选中form1.ui,右键菜单执行create or select implementation,选择使用已有的类型,确定.界面的更新需要重新更新到代码!代码更新 不需要这样做.清理工程,重新编译运行. 所以最好先把界面设计好,再写程序.
5.使用控件变量 UI中控件都有一个名字,比如textLabel2,我们可以在事件中直接给它赋值 textLabel2->setText( “pushbutton2” ); 可是我们在.h,.cpp文件中没有看到它的定义,怎么回事呢?在编译生成的.moc文件中我 看到事件的定义和处理,但是还是没有看到控件变量定义. 我终于在构造函数看到了. button = new QPushButton( this, “button” ); button->setGeometry( QRect( 11, 124, 198, 27 ) );
6.断点调试 断点设置后就可以调试执行,单步执行,用gdb调试,可以反汇编,堆栈框架,跟其他C++开 发工具类似.
7.控件类和非可视化类 这些类使用方法需要参考资料学习,kdevelop可不是智能感知的,不能提示各种方法和类 ,所以还需要下点工夫熟悉qt类. 如果是非可视化开发,请遵照c++开发方法,使用 C++类库,没有任何特殊性.qt的类前面 有个Q字母.
8.文档帮助 右边分页文档可以查看各种语言帮助,不过是英文的.阅读里面的例子代码.你会更快的 进步.
9.总结 kedevelop for C++更象一个c++builder的可视化开发工具,比vc高级( VC用ID标记控件 ,非常混乱),界面开发更容易.他用gcc编译. 当然kedevelop不仅仅能够作为C++开发工具,而是各种计算机语言的开发工具 ,php,java,perl等等. 有了这个工具,在 sinox下面开发软件不再困难!可以跟windows媲美! 本站写的第一篇入门教程,只是抛砖引玉,希望大家以后写出更好的教程文章. 当然更希望作家能编写和出版有关kdevelop书籍,那将帮助sinox下软件开发迅速发展.
下面是研究笔记. 由于很多开源软件都可以在不同的unix/linux上编译,它针对不同操作系统的配置文件 如果没有sinox设置就会无法编译.这这时候我们怎么做呢?有两种方法,一种是增加 sinox操作系统的编译选项,另一种的修改freebsd的编译选项为sinox. 具体修改的文件是configure和admin/config.guess这两个文件!在这两个文件中把如下 内容改为sinox! 它是这些 :FreeBSD::|:GNU/FreeBSD::) 改为 :Sinox::|:GNU/FreeBSD::)
以及 freebsd) 改为 sinox)
记住只是一行前面)前面的freebsd改动,里面的不要改动(你试试,看看会这么样?比如 freebsd-elf)) 我想配置通过就算成功了!
./configure checking build system type… admin/config.guess: unable to guess system type
This script, last modified 2003-07-02, has failed to recognize the operating system you are using. It is advised that you download the most up to date version of the config scripts from
ftp://ftp.gnu.org/pub/gnu/config/
If the version you run (admin/config.guess) is already up to date, please send the following data and any information you think might be pertinent to in order to provide the needed information to handle your system.
config.guess timestamp = 2003-07-02
uname -m = i386 uname -r = 1.2-RELEASE uname -s = Sinox uname -v = Sinox 1.2-RELEASE #0: Mon Jan 9 01:22:17 UTC 2006 root@sinox.shouji88.com:/usr/obj/usr/src/sys/GENERIC
/usr/bin/uname -p = i386 /bin/uname -X =
hostinfo = /bin/universe = /usr/bin/arch -k = /bin/arch = /usr/bin/oslevel = /usr/convex/getsysinfo =
UNAME_MACHINE = i386 UNAME_RELEASE = 1.2-RELEASE UNAME_SYSTEM = Sinox UNAME_VERSION = Sinox 1.2-RELEASE #0: Mon Jan 9 01:22:17 UTC 2006 root@sinox.shouji88.com:/usr/obj/usr/src/sys/GENERIC configure: error: cannot guess build type; you must specify one sinox# ./configure checking build system type… admin/config.guess: unable to guess system type
This script, last modified 2003-07-02, has failed to recognize the operating system you are using. It is advised that you download the most up to date version of the config scripts from
ftp://ftp.gnu.org/pub/gnu/config/
If the version you run (admin/config.guess) is already up to date, please send the following data and any information you think might be pertinent to in order to provide the needed information to handle your system.
config.guess timestamp = 2003-07-02
uname -m = i386 uname -r = 1.2-RELEASE uname -s = Sinox uname -v = Sinox 1.2-RELEASE #0: Mon Jan 9 01:22:17 UTC 2006 root@sinox.shouji88.com:/usr/obj/usr/src/sys/GENERIC
/usr/bin/uname -p = i386 /bin/uname -X =
hostinfo = /bin/universe = /usr/bin/arch -k = /bin/arch = /usr/bin/oslevel = /usr/convex/getsysinfo =
UNAME_MACHINE = i386 UNAME_RELEASE = 1.2-RELEASE UNAME_SYSTEM = Sinox UNAME_VERSION = Sinox 1.2-RELEASE #0: Mon Jan 9 01:22:17 UTC 2006 root@sinox.shouji88.com:/usr/obj/usr/src/sys/GENERIC configure: error: cannot guess build type; you must specify one sinox# ./configure 修改以后 checking build system type… i386-unknown-freebsd1.2 checking host system type… i386-unknown-freebsd1.2 checking target system type… i386-unknown-freebsd1.2 checking for a BSD-compatible install… /usr/bin/install -c checking for -p flag to install… yes
1、安装wine sudo apt-get install wine2、建立wine file 文件目录结构 sudo wine 3、复制windows的整个adobe目录到ubuntu的以下目录 /home/YOURNAME/.wine/drive_c/Program Files/ (红色部分为你的用户名,.wine目录是隐藏的,在nautilus中选“查看-显示隐藏文件”就可以显示了) 4、在windows中导出注册表键值 在windows中的“运行”输入 regedit 找到 HKEY_LOCAL_MACHINE/Software/Adobe键值,按右键导出,命名为adobe.reg然后用记事本打开,再另存为ascii编码格式的adodb.reg(这点很重要,否则在ubuntu下用wine导入不成功,运行photoshop会显示注册表信息出错) 5、在ubuntu中导入注册表键值 sudo wine regedit adobe.reg 6、建立运行快捷方式!用”菜单管理器”增加运行快捷方式!运行命令如下:env WINEPREFIX=”/home/YourName/.wine” wine “C:\Program Files\Adobe\Photoshop 7.0\Photoshop.exe” 7、运行测试photoshop原文链接:http://blog.publicidadpixelada.com/how-to-adobe-photoshop-cs2-on-ubuntu-10-steps注意:recode 是用来转换编码的一个小程序。如果你在window中用记事本把.reg另存为ascii编码的文件就可以不用这个程序!
Ubuntu一些很必要的命令 安装 查看软件xxx安装内容 dpkg -L xxx 查找软件 apt-cache search 正则表达式 查找文件属于哪个包 dpkg -S filename apt-file search filename 查询软件xxx依赖哪些包 apt-cache depends xxx 查询软件xxx被哪些包依赖 apt-cache rdepends xxx 增加一个光盘源 sudo apt-cdrom add 系统升级 sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade 清除所以删除包的残余配置文件 dpkg -l |grep ^rc|awk ‘{print $2}’ |tr [“/n”] [” “]|sudo xargs dpkg -P - 编译时缺少h文件的自动处理 sudo auto-apt run ./configure 查看安装软件时下载包的临时存放目录 ls /var/cache/apt/archives 备份当前系统安装的所有包的列表 dpkg –get-selections | grep -v deinstall > ~/somefile 从上面备份的安装包的列表文件恢复所有包 dpkg –set-selections < ~/somefile sudo dselect 清理旧版本的软件缓存 sudo apt-get autoclean 清理所有软件缓存 sudo apt-get clean 删除系统不再使用的孤立软件 sudo apt-get autoremove 系统 查看内核 uname -a 查看Ubuntu版本 cat /etc/issue 查看内核加载的模块 lsmod 查看PCI设备 lspci 查看USB设备 lsusb 查看网卡状态 sudo ethtool eth0 查看CPU信息 cat /proc/cpuinfo 显示当前硬件信息 lshw 硬盘 查看硬盘的分区 sudo fdisk -l 查看IDE硬盘信息 sudo hdparm -i /dev/hda 查看STAT硬盘信息 sudo hdparm -I /dev/sda 或 sudo apt-get install blktool sudo blktool /dev/sda id 查看硬盘剩余空间 df -h df -H 查看目录占用空间 du -hs 目录名 优盘没法卸载 sync fuser -km /media/usbdisk 内存 查看当前的内存使用情况 free -m 进程 查看当前有哪些进程 ps -A 中止一个进程 kill 进程号(就是ps -A中的第一列的数字) 或者 killall 进程名 强制中止一个进程(在上面进程中止不成功的时候使用) kill -9 进程号 或者 killall -9 进程名 图形方式中止一个程序 xkill 出现骷髅标志的鼠标,点击需要中止的程序即可 查看当前进程的实时状况 top 查看进程打开的文件 lsof -p ADSL 配置 ADSL sudo pppoeconf ADSL手工拨号 sudo pon dsl-provider 激活 ADSL sudo /etc/ppp/pppoe_on_boot 断开 ADSL sudo poff 查看拨号日志 sudo plog 网络 根据IP查网卡地址 arping IP地址 查看当前IP地址 ifconfig eth0 |awk ‘/inet addr/ {split($2,x,”:”);print x[2]}’ 查看当前外网的IP地址 w3m -no-cookie -dump www.ip138.com|grep -o ‘[0-9]/{1,3/}/.[0-9]/{1,3/}/.[0-9]/{1,3/}/.[0-9]/{1,3/}’ w3m -no-cookie -dump ip.loveroot.com|grep -o ‘[0-9]/{1,3/}/.[0-9]/{1,3/}/.[0-9]/{1,3/}/.[0-9]/{1,3/}’ 查看当前监听80端口的程序 lsof -i :80 查看当前网卡的物理地址 arp -a | awk ‘{print $4}’ ifconfig eth0 | head -1 | awk ‘{print $5}’ 立即让网络支持nat sudo echo 1 > /proc/sys/net/ipv4/ip_forward sudo iptables -t nat -I POSTROUTING -j MASQUERADE 查看路由信息 netstat -rn sudo route -n 手工增加删除一条路由 sudo route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1 sudo route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1 修改网卡MAC地址的方法 sudo ifconfig eth0 down #关闭网卡 sudo ifconfig eth0 hw ether 00:AA:BB:CCD:EE #然后改地址 sudo ifconfig eth0 up #然后启动网卡 统计当前IP连接的个数 netstat -na|grep ESTABLISHED|awk ‘{print $5}’|awk -F: ‘{print $1}’|sort|uniq -c|sort -r -n netstat -na|grep SYN|awk ‘{print $5}’|awk -F: ‘{print $1}’|sort|uniq -c|sort -r -n 统计当前20000个IP包中大于100个IP包的IP地址 tcpdump -tnn -c 20000 -i eth0 | awk -F “.” ‘{print $1”.”$2”.”$3”.”$4}’ | sort | uniq -c | sort -nr | awk ‘ $1 > 100 ‘ 屏蔽IPV6 echo “blacklist ipv6” | sudo tee /etc/modprobe.d/blacklist-ipv6 服务 添加一个服务 sudo update-rc.d 服务名 defaults 99 删除一个服务 sudo update-rc.d 服务名 remove 临时重启一个服务 /etc/init.d/服务名 restart 临时关闭一个服务 /etc/init.d/服务名 stop 临时启动一个服务 /etc/init.d/服务名 start 设置 配置默认Java使用哪个 sudo update-alternatives –config java 修改用户资料 sudo chfn userid 给apt设置代理 export http_proxy=http://xx.xx.xx.xx:xxx 修改系统登录信息 sudo vim /etc/motd 中文 转换文件名由GBK为UTF8 sudo apt-get install convmv convmv -r -f cp936 -t utf8 –notest –nosmart * 转换文件内容由GBK为UTF8 iconv -f gbk -t utf8 $i > newfile 转换 mp3 标签编码 sudo apt-get install python-mutagen find . -iname “.mp3” -execdir mid3iconv -e GBK {} /; 控制台下显示中文 sudo apt-get install zhcon 使用时,输入zhcon即可 文件 快速查找某个文件 whereis filenamefind 目录 -name 文件名 查看文件类型 file filename 显示xxx文件倒数6行的内容 tail -n 6 xxx 让tail不停地读地最新的内容 tail -n 10 -f /var/log/apache2/access.log 查看文件中间的第五行(含)到第10行(含)的内容 sed -n ‘5,10p’ /var/log/apache2/access.log 查找包含xxx字符串的文件 grep -l -r xxx . 查找关于xxx的命令 apropos xxx man -k xxx 通过ssh传输文件 scp -rp /path/filename username@remoteIP:/path #将本地文件拷贝到服务器上 scp -rp username@remoteIP:/path/filename /path #将远程文件从服务器下载到本地 查看某个文件被哪些应用程序读写 lsof 文件名 把所有文件的后辍由rm改为rmvb rename ‘s/.rm$/.rmvb/’ * 把所有文件名中的大写改为小写 rename ‘tr/A-Z/a-z/’ * 删除特殊文件名的文件,如文件名:–help.txt rm – –help.txt 或者 rm ./–help.txt 查看当前目录的子目录 ls -d */. 或 echo */. 将当前目录下最近30天访问过的文件移动到上级back目录 find . -type f -atime -30 -exec mv {} ../back /; 将当前目录下最近2小时到8小时之内的文件显示出来 find . -mmin +120 -mmin -480 -exec more {} /; 删除修改时间在30天之前的所有文件 find . -type f -mtime +30 -mtime -3600 -exec rm {} /; 查找guest用户的以avi或者rm结尾的文件并删除掉 find . -name ‘.avi’ -o -name ‘.rm’ -user ‘guest’ -exec rm {} /; 查找的不以java和xml结尾,并7天没有使用的文件删除掉 find . ! -name *.java ! -name ‘.xml’ -atime +7 -exec rm {} /; 统计当前文件个数 ls /usr/bin|wc -w 显示当前目录下2006-01-01的文件名 ls -l |grep 2006-01-01 |awk ‘{print $8}’ 压缩 解压缩 xxx.tar.gz tar -zxvf xxx.tar.gz 解压缩 xxx.tar.bz2 tar -jxvf xxx.tar.bz2 压缩aaa bbb目录为xxx.tar.gz tar -zcvf xxx.tar.gz aaa bbb 压缩aaa bbb目录为xxx.tar.bz2 tar -jcvf xxx.tar.bz2 aaa bbb Nautilus 显示隐藏文件 Ctrl+h 显示地址栏 Ctrl+l 特殊 URI 地址
1 文件管理 # ls ls -a 列出当前目录下的所有文件,包括以.头的隐含文件 文件管理 # ls ls -l或ll 列出当前目录下文件的详细信息 文件管理 # pwd pwd 查看当前所在目录的绝对路经 文件管理 # cd cd .. 回当前目录的上一级目录 文件管理 # cd cd - 回上一次所在的目录 文件管理 # cd cd ~ 或 cd 回当前用户的宿主目录 文件管理 # cd cd ~用户名 回指定用户的宿主目录 2 文件管理 # mkdir mkdir 目录名 创建一个目录 文件管理 # mkdir mkdir –p 递归式去创建一些嵌套目录 文件管理 # rmdir Rmdir 空目录名 删除一个空目录 3 文件管理 # rm rm 文件名 文件名 删除一个文件或多个文件 文件管理 # rm rm -rf 非空目录名 递归删除一个非空目录下的一切,不让提式-f 4 文件管理 # cat cat文件名 一屏查看文件内容 5 文件管理 # more more文件名 分页查看文件内容 6 文件管理 # less less 文件名 可控分页查看文件内容 7 文件管理 # grep grep字符 文件名 根据字符匹配来查看文件部分内容 8 文件管理 # mv mv 路经/文件 /经/文件 移动相对路经下的文件到绝对路经下 文件管理 # mv mv 文件名 新名称 在当前目录下改名 9 文件管理 # cp cp /路经/文件 ./ 移动绝对路经下的文件到当前目录下 10 文件管理 # find find 路经 -name “字符串” 查找路经所在范围内满足字符串匹配的文件和目录 11 文件管理 # ln ln 源文件 链接名 创建当前目录源文件的硬链接 ln /home/test /usr/test1 在/usr下建立/home/test的硬链接 12 文件管理 # ln Ln -s a b 创建当前目录下a的符号链接b 13 文件管理 # touch touch file1 file2 创建两个空文件 14 磁盘管理 # df df 用于报告文件系统的总容量,使用量,剩余容量。 15 磁盘管理 # du du -b /home 查看目前/HOME目录的容量(k)及子目录的容量(k)。 16 磁盘管理 # fdisk fdisk -l 查看系统分区信息 17 磁盘管理 # fdisk fdisk /dev/sdb 为一块新的SCSI硬盘进行分区 18 磁盘管理 # mkfs.ext3 Mkfs.ext3 /dev/sdb1 为第一块SCSI硬盘的第一主分区格式化成 ext3的文件系统 mkfs.ext2 Mkfs.ext2/dev/sdb2 格式化成ext2文件系统 19 磁盘管理 # mount mount -t 文件系统类型 设备路经 访问路经 磁盘管理 # 文件系统类型 ISO9660 光驱文件系统 vfat Fat文件系统(windows) 挂载光驱 # mount –t iso9660 /dev/cdrom /mnt/cdrom 挂载FAT # mount –t vfat /dev/hda5 /mnt/cdrom 挂第一个ide的第五个逻辑分区 17 磁盘管理 # Umount /mnt/cdrom 卸载/mnt/cdrom为空 18 文件权限 # chmod chmod u+s file 为file的属主加上特殊权限 chmod g+r file 为file的属组加上读权限 chmod o+w file 为file的其它用户加上写权限 chmod a-x file 为file的所有用户减去执行权限 chmod 765 file 为file的属主设为完全权限,属组设成读写权,其它用户具有读和执心权限 19 文件权限 # chown chown root /home 把/home的属主改成root用户 20 文件权限 # chgrp chgrp root /home 把/home的属组改成root组 21 打印管理 # redhat-config-printer-tui 进入安装打印机界面 22 打印管理 # lp lp –d hptr file 打印file到hptr的打印机上 23 打印管理 # lpq Lpq –P 打印机名 查看打印机的状态 24 打印管理 # lprm Lprm –P 打印机名 a 删除打印机内的打印作业 25 打印管理 # disable Disable –r “changing paper” HPtr 禁用打印机并提示原因 26 打印管理 # enable Enable HPtr 重新启用被禁用的 27 用户管理 # useradd Useradd 创建一个新的用户 28 用户管理 # groupadd Groupadd 组名 创建一个新的组 29 用户管理 # passwd Passwd 用户名 为用户创建密码 30 用户管理 # Passwd -d Passwd -d用户名 删除用户密码也能登陆 31 用户管理 # Passwd -l Passwd -l用户名 锁定账号密码 32 用户管理 # Passwd -u Passwd -u用户名 解锁账号密码 33 用户管理 # Passwd -S Passwd -S用户名 查询账号密码 34 用户管理 # Usermod -l Usermod -l 新用户名 老用户名 为用户改名 35 用户管理 # Usermod -L Usermod -L 要锁定用户名 锁定用户登陆 36 用户管理 # Usermod -U Usermod –U解锁用户名 解锁用户登陆 37 用户管理 # Usermod -u Usermod –u 501用户名 改变用户UID 38 用户管理 # Userdel Userdel–r 用户名 删除用户一切 39 用户管理 # Groupmod -n Groupmod –n新用户名 老用户名 为组改名 40 用户管理 # Groupmod -g Groupmod –g 501 组名 改变组GID 41 用户管理 # groupdel Groupdel组名 先应删它的用户 删除组 42 用户管理 # gpasswd -a gpasswd -a 用户名 组名 增加用户到组 43 用户管理 # Id id 用户名 查用户信息 44 软件管理 # rpm -qa rpm –qa | less 查询已安装RPM 45 软件管理 # rpm –qa | grep ftp 查询指定RPM 46 软件管理 # rpm -q rpm -q 已安装的RPM包 查是否安装 47 软件管理 # rpm -q telnet-server 查看telnet服务器包 48 软件管理 # rpm -qi rpm –qi 软件包名称 查看软件的描述信息 49 软件管理 # rpm -ql rpm –ql软件包名称 查询软件包的文件列表 50 软件管理 # rpm -qf rpm –qf软件包名称 查询某个文件所属的软件包 51 软件管理 # rpm -qp rpm –qp软件包全名 查询未安装的软件包信息 52 软件管理 # rpm -e rpm –e 软件包名称 删除具体的软件包 53 软件管理 # rpm -U rpm –Uvh软件包全名 升级软件包并显示过程 54 软件管理 # rpm -ivh rpm –ivh 软件包全名 安装软件包并显示过程 55 软件管理 # rpm -V rpm –V软件包名称 验证软件包的大小,类型等 56 软件管理 # tar -c 创建包 –x 释放包 -v 显示命令过程 –z 代表压缩包 57 软件管理 # tar -cf tar –cvf benet.tar /home/benet 把/home/benet目录打包 58 软件管理 # tar -czf tar –zcvf benet.tar.gz /mnt 把目录打包并压缩 59 软件管理 # tar –tf tar –tf benet.tar 看非压缩包的文件列表 60 软件管理 # tar –tzf tar –tf benet.tar.gz 看压缩包的文件列表 61 软件管理 # tar –xf tar –xf benet.tar 非压缩包的文件恢复 62 软件管理 # tar –zxvf tar –zxvf benet.tar.gz 压缩包的文件解压恢复 63 软件管理 # tar -jxvf tar –jxvf benet.tar.bz2 64 软件管理 # diff diff file1 file2 > 补丁名.patch 为新旧文件生成补丁文件 65 软件管理 # diff diff file1 file2 比较两个文件的区别 66 软件管理 # Patch Patch file补丁名.patch 打补丁 67 软件管理 # ./configure –prefix=/usr/local/ 编译前配置 68 软件管理 # make 编译 69 软件管理 # make install 安装编译好的源码包 70 启动管理 # reboot Init 6 重启LINUX系统 71 启动管理 # Halt Init 0 Shutdown –h now 关闭LINUX系统 72 启动管理 # runlevel 显示系统运行级 73 启动管理 # Init [0123456] 改变系统运行级,7种 74 启动管理 # Chkconfig –-list [服务名称] 查看服务的状态 75 启动管理 # Chkconfig –-level <运行级> <服务名> on|off|set 设置服务的启动状态 76 启动管理 # Chkconfig <服务名> on|off|set 设置非独立服务启状态 77 进程管理 # Top动态 Ps-aux静态 进程树pstree 查看系统进程 78 进程管理 # 程序名 & 后台运行程序 79 进程管理 # fg 把后台运行的进程调回前台 80 进程管理 # bg 把前台运行进程调到后台 81 进程管理 # renice Renice +1 180 把180号进程的优先级加1 82 进程管理 # kill Kill PID 终止某个PID进程 83 进程管理 # at at 5pm + 3 days /bin/ls 指定三天后下午5:00执行/bin/ls 84 进程管理 # crontab Crontab -e 用VI的形式来编辑自动周期性任务 85 进程管理 # crontab Crontab -l 查看自动周期性任务 86 进程管理 # crontab Crontab -r 删除自动周期性任务 87 进程管理 # crond Service crond 马上启动自动周期性服务 Service crond <启动|停止|重启|状态> 实现磁盘配额 (注安装LINUX时建立/home分区) 目标:对用户zhao在/home目录上实现soft limit为5k,hard limit 为10k的磁盘配额 实现步骤:服务名>服务名>运行级>
Ubuntu 7.04自带的电影播放器totem是无法播放rmvb文件的,不幸的是,rmvb文件是网络上下载电影的主流格式。 如果第一次用自带的totem打开rmvb文件,在无法打开文件的同时会提示寻找插件,但安装后,totem是只有声音没有图像。 使用linux的一个好处就是,google的使用率明显增加了,经过搜索ubuntu中文论坛并总结,解决如下: 1、在新立得软件管理中搜索totem,卸载系统自带的totem播放器。 2、安装gstreamer的解码器。 sudo apt-get install gstreamer0.10-pitfdll gstreamer0.10-ffmpeg gstreamer0.10-plugins-bad gstreamer0.10-plugins-bad-multiverse gstreamer0.10-plugins-ugly gstreamer0.10-plugins-ugly-multiverse 3、安装xine及解码器。 sudo apt-get install libxine-extracodecs totem-xine ffmpeg lame faad sox mjpegtools libxine-main1 4、安装w32codecs。 sudo apt-get install w32codecs 如果显示找不到,说明7.04的源里面还没有,到下面的地址下载安装: http://www.debian-multimedia.org/pool/main/w/w32codecs/ 选择w32codecs_20061022-0.0_i386.deb 就可以自动安装了。 5、至此,totem可以播放rmvb了。但不幸的是,有了图像,没有了声音。 6、再次google,解决办法如下: 编辑 ~/.xine/catalog.cache文件: sudo gedit ~/.xine/catalog.cache 找到: [/usr/lib/xine/plugins/1.1.4/xineplug_decode_real_audio.so] 把 decoder_priority 后面的数字修改为 10 保存退出。 (责任编辑:凌云通)
现在终于知道了,原来Ubuntu如果识别出了USB手柄,会在/dev/input/目录下生成一个js?的文件,比如我的手柄被识别为了/dev/input/js0。 man了一下xmame,要支持手柄,要在命令的最后加上-jt 1 -jdev /dev/input/js0,还不行可以再加个-usbpspad,比如下面这样: 代码: xmame kof98 -jt 1 -jdev /dev/input/js0 或 xmame kof98 -jt 1 -jdev /dev/input/js0 -usbpspad 这些参数的意义写man手册。 多个手柄的话就要多写几个,比如两个手柄就要再加个”-jdev /dev/input/js1” 也可以把这些参数写到/etc/xmame/xmamerc中,即在这个文件的最后加上: 1 jdev /dev/input/js0 usbpspad 1 这样设置后,就只需要输入命令xmame kof98。 kliz 写道: cat /dev/input/js0 cat /dev/js0 如果安装了kcontrol 可以更方便的查看 最后在xmame-x11 后面加上参数 -jdev /dev/input/js0 或者其他
首先感谢sunqaoyong和FFFrog朋友。呵呵 原帖引用 但是我用这两个办法都不好使。 呵呵经过测试,还是解决了。 步骤如下: 到http://l10n.kde.org/stats/gui/stable/zh_CN/kdevelop/index.php下载了kdevelop.po文件 $ msgfmt kdevelop.po -o kdevelop.mo $ cp kdevelop.mo /usr/share/locale/zh_CN/LC_MESSAGES/kdevelop.mo 我发现kdevelop.mo放在 /usr/share/locale/zh_CN/LC_MESSAGES/ /usr/share/locale-langpack/zh_CN/LC_MESSAGES/ 都是可以的,呵呵。但是改名为kdevelop3.mo就不正常了 大家自己尝试一下吧。 同样,eva等软件的中文化也可能同样的方式处理。 拿eva0.41举例如下: 去SourceForge.net下载eva0.41的源代码。 解包后可以找到./eva/po/zh_CN/eva.po $ cd eva/po/zh_CN/ $ msgfmt eva.po -o eva.mo $ sudo cp eva.mo /usr/share/locale/zh_CN/LC_MESSAGES/ $ sudo chown root:root /usr/share/locale/zh_CN/LC_MESSAGES/eva.mo 然后重启eva就可以了。 很爽吧。
Nvu (读作 N view) 是由Mozilla中的网页编辑器Composer 发展起来的网页编辑工具,就像Frontpage, Dreamweaver一样,支持“所见即所得”的编辑方式。 它的安装文件只有6M多,具备了常用的功能。 和Mozilla系列的软件一样,它也可以Linux,Mac系统上运行。 Nvu_1.0chs.jpg ( 54.83KB ) 下载次数: 123 它的内核和 Firefox 1.0 相同,一直没有中文简体版,我用英文版和繁体都很不爽,就忍不住做了个简体界面。 Windows系统上 英文版下载地址(华军) http://www.onlinedown.net/soft/44184.htm Nvu的主页 http://www.nvu.com 中文语言包主页 http://nvuchs.mozdev.org -------------------------------------- 翻译时参照Dreamweaver ,Frontpage, Word , Firefox进行了校正。 0.2版语言包 修正两个重大翻译错误: 1 插入--表格--精确 中 ”高度“应改为“边框” 2 表格属性 的 ”单元格“选项卡中, 底下的文字中”所有单元格“应为”所选单元格“ 其它还有一些小的修正,主要是容易引起歧义的用词。 汉化包安装方法: 先下载Nvu_zh-CN_0.2.xpi 再 启动nvu, 点Tools ------ Extensions , 再点 Install 按钮, 选择这个xpi文件。 稍候,点“install now”, 然后重启Nvu即可。 Nvu使用小技巧: 1 由于是汉化版,默认的字符编码仍然是ISO-8859-1, 要修改可到 主菜单“工具” --选项---新页面----国际化 中修改为GB18030或GB2312 2 主工具栏图标下文字太小的解决方法:
右键点击 主工具栏, 选 自定义工具栏
先选定 “使用小图标”,一定不要按“确定”,再取消“使用小图标”,再按“确定”。 主工具栏图标下文字居然变大了.
奇怪的是这样设置只能保证3次有效[当前这次,和关闭Nvu后再次,再再次启动时],第4次启动Nvu时又变小了。
Tuesday, April 17, 2007, 06:50 PM 错误: C compiler cannot create executables 原因: 解决:sudo apt-get gcc libc6-dev 错误:checking for C compiler default output… configure: error: C compiler cannot create executables 原因: 解决:sudo apt-get install libc6-dev 错误:configure: error: C++ preprocessor “/lib/cpp” fails sanity check 原因:gcc的组件没装全 解决:apt-get install build-essential 错误: Can’t find X includes. Please check your installation and add the correct paths! 原因:没有X的包含文件 解决:安装xlibs-dev即可 错误: Qt (>= Qt 3.0) (headers and libraries) not found. Please check your installation! 原因:查找提供qt的lib&&headers的软件包,并安装之 解决:apt-get install libqt3-headers libqt3-mt-dev 错误:in the prefix, you’ve chosen, are no KDE headers installed. This will fail. So, check this please and use another prefix! 原因:install a KDE application in a Gnome environment。 解决:which basically means its going to want to install a lot of KDE specific packages to work. This ‘configure:error’ is due to it expecting you to be running KDE and again refers to some ‘headers’. sudo apt-get update sudo apt-get install kdelibs4-dev kdelibs4c2a 错误:./admin/cvs.sh: 585: autoconf: not found 原因: 解决:apt-get install autoconf 错误: ** GTK >= 2.4.0 not installed! ** 原因:没装GTK 解决:apt-get build-dep gedit 错误:heching for gtk-config… no checking for GTK - version = 1.2.0… no ** The gtk-config script installed by GTK could not be found ** If GTK was installed in PREFIX, make sure PREFIX/bin is in ** your path, or set the GTK_CONFIG enviroment variable to the ** full path to gtk-config. configure: error: Cannot find GTK: Is gtk-config in path? 原因: 解决:sudo apt-get install libgtk1.2-dev 问题:eclipse中encoding不支持中文 解决:编辑/var/lib/locales/supported.d/local,加一行zh_CN.GBK GBK,执行sudo locale-gen 错误:gnome.h: No such file or directory 错误: No package ‘libpanelapplet-2.0’ found 原因: 解决:sudo apt-get install gnome-panel 问题:eva不弹出输入法 解决:sudo apt-get install scim-qtimm 问题:No package ‘gtk+-2.0’ found No package ‘gtksourceview-1.0’ found No package ‘libgnomeui-2.0’ found No package ‘libglade-2.0’ found No package ‘libgnomeprintui-2.2’ found 解决:sudo apt-get install libgtk2.0-dev libgtksourceview-dev libgnomeui-dev libglade2-dev libgnomeprint2.2-dev 问题:No package ‘libpanelapplet-2.0’ found 解决:sudo apt-get install libpanelappletmm-2.6-dev
我是小菜鸟,希望为刚用ubuntu的新人装饰自己的桌面省去点麻烦,就把自己装kiba-dock的过程总结了一下,请高手不要笑话我。
东拼西凑的,改了一些东西。
一: 确定基本依赖关系
Dependencies
* Cairo 1.2.0 (Optional: SVG support = --enable-svg and Glitz support = --enable-glitz)
* Optional: A recent librsvg (> 2.14.4)
* Optional: glitz >= 0.5.3
* Xorg with Composite Extension enabled
* Composite Manager (xcompmgr, kcompmgr, beryl, compiz).
* The memory plugin requires libgtop
* The trash plugin requires libgnomevfs
下面的代码我根据自己的总结了一下,发现真的好多人跟我的问题类似,把要下载的包给全,省得走弯路。
在终端中分别执行如下代码:
代码: $ sudo aptitude install fakeroot automake1.9 build-essential libpango1.0-dev libgtk2.0-dev libgconf2-dev libglitz-glx-dev librsvg2-dev libglade2-dev libxcomposite-dev subversion libtool libgtop2-dev libdbus-glib-1-dev gaim-dev python-gtk2-dev $ sudo aptitude install automake1.4 $ sudo aptitude install libgnome-desktop-dev #(这条很重要,我就是卡在这里体验百思不得其解的痛苦)
二 准备工作结束后,分别执行下列下载安装代码:
代码: $ mkdir kiba-dock $ cd kiba-dock $ svn co http://svn.kiba-dock.org/akamaru/ akamaru $ svn co http://svn.kiba-dock.org/kibadock/trunk kibadock $ svn co http://svn.kiba-dock.org/kibaplugins/trunk kibaplugins $ svn co http://svn.kiba-dock.org/kibadbusplugins kibadbusplugins $ svn co http://svn.kiba-dock.org/gaimplugin/trunk gaimplugin
#如果用checkinstall的话,记得标记一下所生包的版本号。如果觉得麻烦直接sudo make install。我本人还是建议将下面的的sudo checkinstall换成sudo make install,当然对checkinstall熟悉的人另当别论,我在用checkinstall是总是多少会有一点小意外。
代码: $ cd akamaru/ $./autogen.sh $make $sudo checkinstall
$cd ../kibadock/
$./autogen.sh
$make
$sudo checkinstall
$cd ../kibaplugins/
$./autogen.sh
$make
$sudo checkinstall
$cd ../kibadbusplugins/
$./autogen.sh
$make
$sudo checkinstall
$cd ../gaimplugin/
$./autogen.sh
$make
$sudo checkinstall #(注意新版本gaim可能换了名字,具体去看kiba官方的论坛)
上面在进入每个路径去执行装的时候,可以不用$ sudo checkinstall来生成软件包,可以用$ sudo make install来安装,我觉的这样更妥当,呵呵,还简单.
如果嫌麻烦,下面的附件中的easyKiba是一个安装升级的脚本,在确定其他依赖包安装齐全的情况下,可是用easyKiba来安装,升级,卸载kiba-dock,方法是在当前用户路径下建立一个文件夹,将easyKiba拷贝到该文件夹,然后在终端中执行 代码: $ ./easyKiba ,会有相应的提示,很方便的,记住安装完成后不要删除该文件夹,以后要升级的时候进入文件夹内执行 代码: $ ./easyKiba -u 来升级。
三: 安装结束后记得创建四个链接。
代码:
$ sudo ln -s /usr/local/bin/kiba-dock /usr/bin/kiba-dock
$ sudo ln -s /usr/local/bin/gset-kiba /usr/bin/gset-kiba
$ sudo ln -s /usr/local/lib/libakamaru.so.0 /usr/lib/libakamaru.so.0
$ sudo ln -s /usr/local/lib/kiba-dock/liblauncher.so /usr/lib/kiba-dock/liblauncher.so
这时可以在终端输入:
代码: $ kiba-dock
查看一下kiba-dock,怎么样?跟原来的不太一样吧,多了许多插件。当然,你可以点击: 应用程序->附件->Kiba-dock 来打开kiba-dock。
###########################################################################
顺便附上kiba-dock官方wiki中的安装方法,虽然我的没成功,但并不代表别人不能用这个方法成功安装kiba。下面是
32位系统的安装方法,当然上面的方法也适用,我感觉上面的更保险一点。
Quote:
Ubuntu
Trevi?o manages a repo with kiba-dock, These can be accessed by adding the following to your sources.list file: Note: Currently, there are only 32 bit (x86) deb packages available, 64 bit users can use SVN.
1. Open a Terminal Window.
2. Type the following:
代码: # sudo gedit /etc/apt/sources.list
1. Add the following lines to the end of the file:
deb http://download.tuxfamily.org/3v1deb feisty eyecandy
deb-src http://download.tuxfamily.org/3v1deb feisty eyecandy
1. Save and Exit Gedit.
2. Run from the terminal window:
代码: # wget http://download.tuxfamily.org/3v1deb/DD800CD9.gpg -O- | sudo apt-key add - # sudo apt-get update # sudo apt-get install kiba-dock # sudo apt-get install kiba-dock-dev # sudo apt-get install kiba-plugins
PLEASE NOTE: this is a daily svn repo, which means you’re dealing with snapshots of the latest and greatest, but not always the most stable!
说明:在kiba中右键单击图标打开物理特效的时候,实际上kiba会在屏幕上进行加层,这时你如果想用beryl中用按住鼠标中键来翻转屏幕是做不到的。当然加快捷件的翻转桌面除外,那个还是好用的。
在最后我祝大家玩的开心,呵呵。