2

After installing the gcc-arm-none-eabi package on Ubuntu, I can't find the tools or the manpage even though it appears the documentation is available:

$ find /usr/ -iname gcc*
/usr/bin/gcc
...
/usr/share/doc/gcc-arm-none-eabi
/usr/share/doc/gcc-arm-none-eabi/info/gcc.info.gz
/usr/share/doc/gcc-arm-none-eabi/info/gccinstall.info.gz
/usr/share/doc/gcc-arm-none-eabi/info/gccint.info.gz
/usr/share/doc/gcc-4.8
/usr/share/doc/gcc-4.8-base
/usr/share/doc/gcc-4.8-base/gcc
...

From above, I know there is documentation available for gcc-arm-none-eabi. Next:

$ info gcc-arm-none-eabi
No menu item `gcc-arm-none-eabi' in node `(dir)Top'.

And:

$ man gcc-arm-none-eabi
No manual entry for gcc-arm-none-eabi

Where do I find the documentation for the package I just installed? Or more to the point, how do I access it?

3 Answers 3

2

gcc-arm-none-eabi is a doc file. It's probably not going to have a man page. However, the gcc command has a man page. The other files are documentation for the user or developer. Man files are normally in directories like man/man1 or man/man2.

You will also have categories of man pages:

   1   Executable programs or shell commands
   2   System calls (functions provided by the kernel)
   3   Library calls (functions within program libraries)
   4   Special files (usually found in /dev)
   5   File formats and conventions eg /etc/passwd
   6   Games
   7   Miscellaneous  (including  macro  packages  and  conventions), e.g.
       man(7), groff(7)
   8   System administration commands (usually only for root)
   9   Kernel routines [Non standard]

If a man page is in multiple categories, you can view it like man 1 gcc man 7 groff

1
  • Thanks David. I'm OK with standard gcc. I'm having trouble with gcc-arm-none-eabi.
    – jww
    Sep 15, 2014 at 0:04
2

dpkg --listfiles gcc-arm-none-eabi

You can find the file list here also. You can find that on your own by going to packages.ubuntu.com and doing a search on the package name, then click on the list of files for the distro version you have installed.

Cross-compiler builds of gcc start with the architecture name as the filename; they do not start with gcc.

BTW, your find /usr/ -iname gcc\* won't find any file names that start with something other than gcc, such as /usr/bin/arm-none-eabi-gcc, which is the actual compiler frontend command you need to invoke.

As far as docs: the command line options are nearly identical to the native (presumably x86(_64)) compiler, but you can view the documentation for gcc online and see if there are any special options for ARM.

2

If there are man pages in the package, set the environment var MANPATH to the root (i.e. the directory that holds man1/).

Or you can do what man does, groff -man gcc.1 | less. groff has flags where you can change the output type, namely ascii (like normal man) postscript, html, etc.

True FSF packages tend to have minimal man pages, and tend to use info. I personally dislike info, and find the format harder to read or grep than man - to each their own. Maybe using an alternate reader, like pinfo would be helpful as well.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .