1

I am having a problem that I cannot browse the header files /libraries to get the implementation of the C functions like mssget, msgsnd, shmat etc.

How should I open these files?

  • 1
    If these are binary files, you can't open them. Header files can be opened using gedit – Anwar Dec 9 '14 at 13:48
2

If you are referring to the sys/msg.h header file specifically, then it should be provided by the libc6-dev development package

First make sure that the package is installed, either via the Software Center application or from a terminal using

sudo apt-get install libc6-dev

after which you should be able to browse the header file at

/usr/include/i386-linux-gnu/sys/msg.h

(for 32-bit systems) or

/usr/include/x86_64-linux-gnu/sys/msg.h

(for 64-bit systems).


To see the actual implementation of a library function, you will need to download the corresponding source code package: first, you will need to enable the relevant source repository (see How do I enable the source code repositories? if you don't know how to do that) and then, for example, in a directory of your choice

apt-get source libc6-dev

will download, unpack, and patch the source tarball into that directory (in this case, it will pick 'eglibc' as source package instead of 'libc6-dev'). However msgget and msgsnd appear to be only stub functions - I don't know enough about Linux IPC to advise you beyond that.

  • i saw these header files i thought id see implementation of the C functions like mssget, msgsnd, shmat is it possible?? – Nour Malkawi Dec 6 '14 at 7:41
  • @NourMalkawi I have added information about obtaining the source code implementation – steeldriver Dec 6 '14 at 13:32

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.