linux的Ubuntu 中有些函数man不到,像什么pthreadcond_init,这种类型的,还有些别的也找不到帮助,是要弄个包升级还是要换系统啊,换红帽?
pthreadcond_init,这个是linux系统函数,可是我看老师的redhat都可以man到嘛。难道是他下了补丁包?
你发的连接不也是说是linux函数么?“Linux man page”??
pthread_cond_init(3) - Linux man page
Name
pthread_cond_destroy, pthread_cond_init - destroy and initialize condition variables
Synopsis
#include
int pthread_cond_destroy(pthread_cond_t *cond);
int pthread_cond_init(pthread_cond_t *restrict cond,
如果你执行命令 man man,来查看man命令的具体用法,
man is the system's manual pager. Each page argument given to man is normally the name of a program, utility or function.
一般是不能直接用man来查看一些库函数的帮助文件,你可以执行man printf,但是执行man fprintf就有问题,因为前者是系统能够直接调用的命令。所以,一般的linux书籍在介绍man命令时都提到“man命令一般是原来查看查看linux命令的详细用法”。
但是,确实有不少人习惯使用man命令来查看各种编程语言的的函数的详细用法,虽然可以在线浏览(man命令可以查看在线帮助文件,但是考虑到网速问题,效率很低),多数情况还是先下载MAN 格式的帮助文档,放在系统指定的位置,然后才能查看。一般初学者还用不到那么多。网上倒是介绍了很多方法。比如楼上说的“需要下载 pthread的帮助文件才能看 ”,但是,对初学者来说,不知如何操作。所以不如直接看编译器提供的帮助文档。
对于使用了较长时间的linux用户,可以这样做:
在http://gcc.gnu.org/mirrors.html 下载 GNU 提供了关于 的 C++ 标准库的MAN 格式文档(gcc的帮助文档)。具体的路径是:libstdc++/doxygen/libstdc++-man-xxxxxx.tar.bz2,找最新上传的文件下载。解压后将 man/man3 中的所有文件复制到系统的man/man3 目录即可。(对于Ubuntu系统,/man3 目录的路径为:/usr/share/man/man3 )
以上完成后,可先 执行man C++Intro 命令,查阅 Introduction to the GNU libstdc++-v3。
对于 C++的函数,如cout,需要知道它所在的类(比如cout是 std::ostream 类的一个对象),用 man std::ostream命令查看。
对于ubuntu用户,一个命令就可以方便地安装相应的帮助文件。在Shell中运行:
sudo apt-get install manpages-dev manpages-posix manpages-posix-dev libstdc++-doc glibc-doc
然后执行 man pthread_cond_init即可。