The following always happens when you search for a man page that doesn't exist: $ man foo man: No such file or directory Failed to open the message catalog man on the path NLSPATH=<none> No manual entry for foo Obviously, not a grave problem :)
root@rux0r root # man foo No manual entry for foo what version of man are you using ? im assuming you have NLS in your USE flag (i dont) so that may be the prob ...
$ man -version man: No such file or directory Failed to open the message catalog man on the path NLSPATH=<none> man, version 1.5k And no, nls isn't a use flag...
Check your /etc/man.conf. What version groff ?
mellofone$ cat /etc/make.conf | grep USE= USE="-gnome" mellofone$ groff -v GNU groff version 1.17.2 Copyright (C) 1989-2001 Free Software Foundation, Inc. GNU groff comes with ABSOLUTELY NO WARRANTY. You may redistribute copies of groff and its subprograms under the terms of the GNU General Public License. For more information about these matters, see the file named COPYING. called subprograms: GNU grops (groff) version 1.17.2 GNU troff (groff) version 1.17.2
And, just incase you need it: mellofone$ qpkg -v -I groff sys-apps/groff-1.17.2-r2 *
Question still stands ... /etc/man.conf ok ? Attatch your version, thanks.
Created attachment 3051 [details] make.conf Here you go :)
NOOOOOO!!!! :P /etc/man.conf, the config file for the 'man' command ;)
Created attachment 3052 [details] man.conf Heheheheheh wow. Amazing how my brain kept seeing that as make.conf. Heh. Sorry about that :)
Try: # USE=-nls emerge man and then again the: # man foo ? Also, is $LANG, etc set ?
Updated make.conf, re-emerged, same results. Sorry to be a dork, but how do I display $LANG :)
Maybe just do: # set >foo and attatch foo.
Created attachment 3055 [details] set > foo results Your wish is my command :)
azarah@nosferatu azarah $ LC=C LC_ALL=C man foo man: No such file or directory Failed to open the message catalog man on the path NLSPATH=<none> No manual entry for foo azarah@nosferatu azarah $ man foo No manual entry for foo azarah@nosferatu azarah $ Hmm, I am thinking that man do not work too well with $LC and $LC_ALL set if nls is not enabled .... actually, not even with "nls" in USE. Mind submitting a bugreport to the man maintainer with this bugreport's URL as reference ?
Again, please excuse my ignorance... How do I find out who the "man maintainer" is?
check out the Changlog ... /usr/share/doc/<man-version>/ChangeLog.gz is pretty common or check out the changelog in portage: /usr/portage/sys-apps/man/ChangeLog
Sent. I will post any/all responses here...
Upstream response: "Well, you have asked to get messages in some language, but the message file could not be found, so you get two errors: (i) the original one, (ii) the report that no message file could be found for your language. Maybe you want to contribute files for that language? Or maybe they exist already but were not installed correctly?" As far as I know I am not using any special language...
Well, if you ask me, then its rather a cosmetic error. Fix: if you do not use a specific locale setting, do not export LC and LC_ALL.
Same problem here, cannot find any man pages, even if they are all installed. The thing is that I have no LC, LC_ALL, NLS, LANG environment variables defined. man, version 1.5k GNU groff version 1.17.2 GNU grops (groff) version 1.17.2 GNU troff (groff) version 1.17.2 less 376 # man -d Reading config file /etc/man.conf man: No such file or directory Looked whether there exists a message catalog man, but there is none (and for English messages none is needed) found man directory /usr/man found man directory /usr/share/man found man directory /usr/local/man found man directory /usr/X11R6/man found man directory /usr/lib/perl5/man found manpath map /bin --> /usr/share/man found manpath map /sbin --> /usr/share/man found manpath map /usr/bin --> /usr/share/man found manpath map /usr/sbin --> /usr/share/man found manpath map /usr/local/bin --> /usr/local/man found manpath map /usr/local/sbin --> /usr/local/man found manpath map /usr/X11R6/bin --> /usr/X11R6/man found manpath map /usr/bin/X11 --> /usr/X11R6/man found manpath map /usr/bin/mh --> /usr/share/man using /usr/bin/less -is as pager What manual page do you want?
Ahhhh, carp. I figured it out. Something in my .login sets a MANPATH in my environment. I unset it, and I can now view all my man pages. Please make sure that you do not have a MANPATH variable set in your environment: env | grep MANPATH if you do, do: unset MANPATH and try "man <something>" again. If that works, hunt around the main profile and your login scripts to find out what the heck is setting the MANPATH variable. Good luck.
Found it (again): /etc/profile.env and /etc/csh.env has a line: export MANPATH='/usr/X11R6/man' just remove it. Now, I cannot find which ebuild or which package put it there in the first place. Do I enter it as a new bug ?
azarah@nosferatu azarah $ MANPATH= man -d Reading config file /etc/man.conf man: No such file or directory Looked whether there exists a message catalog man, but there is none (and for English messages none is needed) found man directory /usr/man found man directory /usr/share/man found man directory /usr/local/man found man directory /usr/X11R6/man found manpath map /bin --> /usr/share/man found manpath map /sbin --> /usr/share/man found manpath map /usr/bin --> /usr/share/man found manpath map /usr/sbin --> /usr/share/man found manpath map /usr/local/bin --> /usr/local/man found manpath map /usr/local/sbin --> /usr/local/man found manpath map /usr/X11R6/bin --> /usr/X11R6/man found manpath map /usr/bin/X11 --> /usr/X11R6/man found manpath map /usr/bin/mh --> /usr/share/man using /usr/bin/less as pager What manual page do you want? azarah@nosferatu azarah $ azarah@nosferatu azarah $ echo $MANPATH /usr/share/man:/usr/local/share/man:/usr/X11R6/man azarah@nosferatu azarah $ unset MANPATH azarah@nosferatu azarah $ man -d Reading config file /etc/man.conf man: No such file or directory Looked whether there exists a message catalog man, but there is none (and for English messages none is needed) found man directory /usr/man found man directory /usr/share/man found man directory /usr/local/man found man directory /usr/X11R6/man found manpath map /bin --> /usr/share/man found manpath map /sbin --> /usr/share/man found manpath map /usr/bin --> /usr/share/man found manpath map /usr/sbin --> /usr/share/man found manpath map /usr/local/bin --> /usr/local/man found manpath map /usr/local/sbin --> /usr/local/man found manpath map /usr/X11R6/bin --> /usr/X11R6/man found manpath map /usr/bin/X11 --> /usr/X11R6/man found manpath map /usr/bin/mh --> /usr/share/man using /usr/bin/less as pager What manual page do you want? azarah@nosferatu azarah $ So that is not really the problem. Because he had LC=C and LC_ALL=C it gave him on any request not displaying a manpage (even help) the following error: ------------------------------------ man: No such file or directory Failed to open the message catalog man on the path NLSPATH=<none> ------------------------------------ where what you are talking about only happens if you call 'man -d', and is not really a error, but rather a once off warning if supplying '-d': ---------------------------------------------------- man: No such file or directory Looked whether there exists a message catalog man, but there is none (and for English messages none is needed) ---------------------------------------------------- Further, it tells you you do not need the catalog it could not open with 'man: No such file or directory', as for english it do not use catalogs. Rather a annoying cosmetic bug than anything else if you ask me. Most people (me included) wont even notice this. For him, sorda the same, as it do not know to use english manpages with LC=C. But this is a bit more of an issue, as you always get it if the actualy manpage is not displayed. So a bit more severe version of a cosmitic bug if you ask me.
watch this out gentoo root # man mount No manual entry for mount gentoo root # env | grep MANPATH MANPATH=/opt/intel/compiler60/man:/usr/X11R6/man:/opt/linux-ntfs/share/man gentoo root # unset MANPATH gentoo root # man -d Reading config file /etc/man.conf man: No such file or directory Looked whether there exists a message catalog man, but there is none (and for English messages none is needed) found man directory /usr/man found man directory /usr/share/man found man directory /usr/local/man found man directory /usr/X11R6/man found manpath map /bin --> /usr/share/man found manpath map /sbin --> /usr/share/man found manpath map /usr/bin --> /usr/share/man found manpath map /usr/sbin --> /usr/share/man found manpath map /usr/local/bin --> /usr/local/man found manpath map /usr/local/sbin --> /usr/local/man found manpath map /usr/X11R6/bin --> /usr/X11R6/man found manpath map /usr/bin/X11 --> /usr/X11R6/man found manpath map /usr/bin/mh --> /usr/share/man using /usr/bin/less -is as pager What manual page do you want? gentoo root # gentoo root # echo $MANPATH gentoo root # man mount and watch out, the man page is being displayed gentoo version 1.2 man-pages 1.52
Created attachment 6747 [details, diff] man-1.5k-locale-debug-info.patch 26 Dec 2002; Martin Schlemmer <azarah@gentoo.org> man-1.5k.ebuild, man-1.5k-r1.ebuild : Bugfixes: - Add man-1.5k-locale-debug-info.patch to make man not print the 'man: No such file or directory' error if 'man -d' was called and the NLS catalogue was not found, as it confuses people, and be more informative ... (bug #6360)
Now you should get: --------------- $ man -d Reading config file /etc/man.conf Looked whether there exists a message catalog "man", but there is none (and for English messages none is needed) found man directory /usr/share/man found man directory /usr/X11R6/man found man directory /usr/local/man found man directory /usr/man found manpath map /bin --> /usr/share/man found manpath map /sbin --> /usr/share/man found manpath map /usr/bin --> /usr/share/man found manpath map /usr/sbin --> /usr/share/man found manpath map /usr/local/bin --> /usr/local/man found manpath map /usr/local/sbin --> /usr/local/man found manpath map /usr/X11R6/bin --> /usr/X11R6/man found manpath map /usr/bin/X11 --> /usr/X11R6/man found manpath map /usr/bin/mh --> /usr/share/man using /usr/bin/less as pager What manual page do you want? $ LANG="foo" man -d Reading config file /etc/man.conf Failed to open the message catalog "man" for locale "foo" (NLSPATH="/usr/share/locale/%L/%N") found man directory /usr/share/man found man directory /usr/X11R6/man found man directory /usr/local/man found man directory /usr/man found manpath map /bin --> /usr/share/man found manpath map /sbin --> /usr/share/man found manpath map /usr/bin --> /usr/share/man found manpath map /usr/sbin --> /usr/share/man found manpath map /usr/local/bin --> /usr/local/man found manpath map /usr/local/sbin --> /usr/local/man found manpath map /usr/X11R6/bin --> /usr/X11R6/man found manpath map /usr/bin/X11 --> /usr/X11R6/man found manpath map /usr/bin/mh --> /usr/share/man using /usr/bin/less as pager What manual page do you want?
Anyhow, fixed.