Linux 安装 C++ man pages

本篇介绍在ubuntu上安装C++在线文档(man pages),下篇将介绍C++在线文档的使用。需要注意的一点是:在这里的方法有别于通常的 man func_name,因此需要单独说明,以免安装后也不知道怎么用。 另外,为了达到最好的使用效果,请首先把C的开发文档提前安装上吧,命令: sudo apt-get update sudo apt-get install manpages-dev glibc-doc 然后安装C++的开发文档,命令通常是 sudo apt-get install libstdc++6-4.4-doc 上面的4.4是gcc的版本,可以是4.2、4.3、4.4, 4.4是最新的。至于软件库中有无4.4,请参见下文的说明,使用命令查询: apt-cache search libstdc++|grep "doc" 以决定安装4.2、4.3或4.4 下面是英文原文: It’s so easy to search for any C related programming functions. All you need is to search the man pages. Take for example, if you want to know more about printf, simply type `$ man 2 printf` But that’s not the case with C++ functions. Every time, you have to go to the web for any doubts related to C++ functions. There are two ways by which you can search for documentation related to C++ functions. Man pages for C++ functions HTML documentation Both of the above are available from a single package. To install C++ documentation `$ sudo apt-get install libstdc++6-4.4-doc` This installs both the man pages and HTML documentation. The HTML documentation is found in the following path:file:///usr/share/doc/libstdc++6-4.4-doc/libstdc++/html/index.html If you are struggling to search C++ man pages, ReferHow to search C++ man pages Now there may be case that when you are referring this article the documentation 6.4.4 version is no longer available. In that case, follow the following steps `$ apt-cache search libstdc++|grep"doc"` libstdc++6-4.4-doc - The GNU Standard C++ Library v3 (documentation files)libstdc++6-4.1-doc - The GNU Standard C++ Library v3 (documentation files)libstdc++6-4.3-doc - The GNU Standard C++ Library v3 (documentation files) Search for the libstdc++ docs as shown above and install the version you want, preferably the latest ones (as shown above) `$ sudo apt-get install libstdc++6-4.4-doc`

2015年3月15日 · 2 分钟 · Jid

Shell编程:bash内部命令

bash命令解释套装程序包含了一些内部命令。内部命令在目录列表时是看不见的,它们由Shell本身提供。常用的内部命令有:echo, eval, exec, export, readonly, read, shift, wait和点(.)。下面简单介绍其命令格式和功能。 1.echo 命令格式:echo arg 功能:在屏幕上显示出由arg指定的字串。 2.eval 命令格式:eval args 功能:当Shell程序执行到eval语句时,Shell读入参数args,并将它们组合成一个新的命令,然后执行。 3.exec 命令格式:exec命令参数 功能:当Shell执行到exec语句时,不会去创建新的子进程,而是转去执行指定的命令,当指定的命令执行完时,该进程(也就是最初的Shell)就终止了,所以Shell程序中exec后面的语句将不再被执行。 4.export 命令格式:export变量名 或:export变量名=变量值 功能:Shell可以用export把它的变量向下带入子Shell,从而让子进程继承父进程中的环境变量。但子Shell不能用export把它的变量向上带入父Shell。 注意:不带任何变量名的export语句将显示出当前所有的export变量。 5.readonly 命令格式:readonly变量名 功能:将一个用户定义的Shell变量标识为不可变。不带任何参数的readonly命令将显示出所有只读的Shell变量。 6.read 命令格式:read变量名表 功能:从标准输入设备读入一行,分解成若干字,赋值给Shell程序内部定义的变量。 7.shift语句 功能:shift语句按如下方式重新命名所有的位置参数变量,即$2成为$1,$3成为$2…在程序中每使用一次shift语句,都使所有的位置参数依次向左移动一个位并使位置参数$#减1,直到减到0为止。 8.wait 功能:使Shell等待在后台启动的所有子进程结束。wait的返回值总是真。 9.exit 功能:退出Shell程序。在exit之后可有选择地指定一个数位作为返回状态。 10.“.”(点) 命令格式:. Shell程序文件名 功能:使Shell读入指定的Shell程序文件并依次执行文件中的所有语句。

2015年3月12日 · 1 分钟 · Jid

Linux Locale 详解:从原理到配置

Locale 是 Linux 国际化(i18n)的核心概念。理解它,是解决中文显示、输入问题的基础。 一、为什么需要设定 Locale 设定 Locale 与浏览中文网页无关。 即使 Locale 设为 en_US.ISO-8859-1,只要有合适的字体,浏览器照样能显示中文——浏览器自己会检测网页编码并选择对应的字体渲染。 但 Locale 与"写中文"直接相关。 如果你需要在终端输入中文、让程序识别中文作为有效字符、让系统消息显示为中文,就必须设定正确的 Locale。 简单说:看中文靠字体,写中文靠 Locale。 二、什么是 Locale Locale 是根据用户的语言、国家/地区和文化传统定义的软件运行时语言环境。它涵盖了日常使用的方方面面: 类别 变量 控制内容 字符分类 LC_CTYPE 哪些字符是合法的、大小写转换、标点分类 排序规则 LC_COLLATE 字符串比较和排序顺序 消息语言 LC_MESSAGES 提示信息、错误信息、菜单的语言 时间格式 LC_TIME 日期时间的显示格式 数字格式 LC_NUMERIC 小数点、千分位分隔符 货币格式 LC_MONETARY 货币符号和格式 姓名格式 LC_NAME 姓名书写方式 地址格式 LC_ADDRESS 地址书写方式 电话格式 LC_TELEPHONE 电话号码格式 度量衡 LC_MEASUREMENT 公制/英制 纸张大小 LC_PAPER A4 / Letter 等 概述 LC_IDENTIFICATION Locale 自身的元数据 Locale 定义文件存放在 /usr/share/i18n/locales/,如 zh_CN、en_US 等。 ...

2015年3月9日 · 2 分钟 · Jid

man 命令:在线手册页使用指南

基本用法 man [章节号] 命令名 章节说明 章节 内容 示例 1 用户命令 man 1 ls 2 系统调用 man 2 open 3 C 库函数 man 3 printf 4 设备和特殊文件 man 4 null 5 配置文件格式 man 5 passwd 7 杂项(协议、字符集等) man 7 ascii 8 系统管理命令 man 8 mount 不指定章节号时,man 会按顺序搜索,返回第一个匹配结果。 常见陷阱 man printf # 显示第 1 章:shell 命令 printf man 3 printf # 显示第 3 章:C 库函数 printf 两者完全不同。查 C 函数时务必指定章节号 3。 实用技巧 # 搜索手册页(不知道完整名称时) man -k "copy files" # 等同于 apropos # 在 man 页面内搜索 # 按 / 输入关键词,n 下一个,N 上一个 # 查看手册页存储路径 man --path # 以网页方式打开(部分系统支持) man -H firefox open

2015年3月6日 · 1 分钟 · Jid

touch 命令:创建空文件或更新时间戳

功能 touch 有两个用途: 创建空文件 — 如果文件不存在,创建一个大小为 0 的空文件 更新时间戳 — 如果文件已存在,更新其访问时间和修改时间为当前时间 常用示例 # 创建空文件 touch newfile.txt # 同时创建多个文件 touch file1.txt file2.txt file3.txt # 更新已有文件的时间戳 touch existing.txt # 只更新访问时间(不修改 mtime) touch -a file.txt # 只更新修改时间(不修改 atime) touch -m file.txt # 设置为指定时间(格式:YYYYMMDDhhmm) touch -t 202604011200 file.txt

2015年3月5日 · 1 分钟 · Jid

Linux/Unix 修改 PATH 环境变量

问题 安装软件后执行命令提示 command not found,但程序确实已经安装。原因是程序所在目录不在 PATH 搜索路径中。 查看当前 PATH echo $PATH 输出是以冒号分隔的目录列表,Shell 会依次在这些目录中查找可执行文件。 添加路径 Bash(大多数 Linux 默认) 编辑 ~/.bashrc 或 ~/.profile,添加: export PATH=$PATH:/新路径 例如: export PATH=$PATH:/usr/local/bin:$HOME/bin C Shell 编辑 ~/.cshrc,添加: set path=($path /usr/local/bin $home/bin) 使配置生效 source ~/.bashrc # Bash source ~/.cshrc # C Shell 或重新登录。 全局设置(所有用户) Bash:编辑 /etc/profile 或 /etc/profile.d/ 下创建脚本 所有 Shell:编辑 /etc/environment(格式为 PATH="/usr/local/sbin:/usr/local/bin:...")

2015年3月4日 · 1 分钟 · Jid

Cygwin 安装完整 man-pages

问题 Cygwin 自带的 man pages 不完整,比如 man listen、man socket 等系统调用没有文档。 解决方法 方法一:编译安装(推荐) # 1. 下载最新 man-pages # https://www.kernel.org/pub/linux/docs/man-pages/ # 2. 解压 tar zxvf man-pages-3.41.tar.gz cd man-pages-3.41 # 3. 安装 make gz make install 方法二:手动放置 下载并解压到 Cygwin 安装目录的 %cygwin%\usr\man 下 编辑 /etc/man.conf,添加: MANPATH /usr/man/man-pages-3.41 重启 Cygwin 终端 版本号根据实际下载的版本修改。 验证 man listen man socket 能正常显示说明安装成功。

2015年3月2日 · 1 分钟 · Jid

Ubuntu 安装 dos2unix 文件格式转换工具

问题 Windows 和 Linux 的文本文件换行符不同(Windows 用 \r\n,Linux 用 \n),在 Linux 下打开 Windows 编辑的脚本会报错。需要用 dos2unix 转换。 Ubuntu 默认没有 dos2unix,但有替代方案。 方案一:安装 tofrodos(推荐) sudo apt-get install tofrodos 安装后提供两个命令: 命令 作用 fromdos file Windows → Linux(相当于 dos2unix) todos file Linux → Windows(相当于 unix2dos) 习惯原命令名的话,创建符号链接: sudo ln -s /usr/bin/fromdos /usr/bin/dos2unix sudo ln -s /usr/bin/todos /usr/bin/unix2dos 或在 ~/.bashrc 中设置别名: alias dos2unix=fromdos alias unix2dos=todos 方案二:直接安装 dos2unix 较新版本的 Ubuntu 可以直接安装: sudo apt-get install dos2unix 使用 dos2unix script.sh # 转换为 Unix 格式 unix2dos file.txt # 转换为 Windows 格式

2015年2月10日 · 1 分钟 · Jid

关闭 Linux 命令行和 Vim 的报警声(Beep)

命令行 Beep 声 在终端中按 Tab 补全或遇到错误时发出"嘟"声,两种关闭方式: 方法一(推荐,仅影响当前用户): echo "set bell-style none" >> ~/.inputrc 重新登录后生效。 方法二(全局生效): 编辑 /etc/inputrc,去掉 set bell-style none 前面的 #。如果文件不存在则用方法一。 Vim Beep 声 echo "set vb t_vb=" >> ~/.vimrc 这会将 Vim 的蜂鸣替换为视觉闪烁(visual bell),并将闪烁设为空(即完全静默)。

2015年1月13日 · 1 分钟 · Jid

Linux 下编译安装 tar.bz2 软件包

标准流程 以源码包 foo-1.0.tar.bz2 为例: # 1. 解压 tar jxvf foo-1.0.tar.bz2 # 2. 进入源码目录 cd foo-1.0 # 3. 配置(指定安装路径,方便卸载) ./configure --prefix=/opt/foo # 4. 编译 make # 5. 安装(通常需要 root) sudo make install 各步骤说明 步骤 作用 说明 tar jxvf 解压 j 表示 bzip2,如果是 .tar.gz 则用 tar zxvf ./configure 检查环境、生成 Makefile --prefix 指定安装路径,不指定则默认装到 /usr/local make 编译源码 根据 Makefile 编译生成可执行文件 make install 安装到系统 将编译产物复制到 --prefix 指定的目录 卸载 # 如果源码目录还在 sudo make uninstall # 或者直接删除安装目录 sudo rm -rf /opt/foo 常见问题 configure 报错缺少依赖:根据错误提示安装对应的 -dev 或 -devel 包 make 报错:检查 GCC 是否安装(gcc --version) 权限不够:make install 需要 root 权限,使用 sudo

2015年1月12日 · 1 分钟 · Jid