Ich habe das Problem, dass ich die Headerdateien/Bibliotheken nicht durchsuchen kann, um die Implementierung der C-Funktionen wie mssget, msgsnd, shmat usw. zu erhalten.
Wie soll ich diese Dateien öffnen?
Antwort1
Wenn Sie sich speziell auf die Header-Datei beziehen sys/msg.h
, sollte diese vom libc6-dev
Entwicklungspaket bereitgestellt werden
Stellen Sie zunächst sicher, dass das Paket installiert ist, entweder über die Anwendung „Software Center“ oder über ein Terminal mit
sudo apt-get install libc6-dev
Danach sollten Sie in der Lage sein, die Header-Datei unter
/usr/include/i386-linux-gnu/sys/msg.h
(für 32-Bit-Systeme) oder
/usr/include/x86_64-linux-gnu/sys/msg.h
(für 64-Bit-Systeme).
Um die tatsächliche Implementierung einer Bibliotheksfunktion zu sehen, müssen Sie das entsprechende Quellcodepaket herunterladen: Zuerst müssen Sie das entsprechende Quellcode-Repository aktivieren (sieheWie aktiviere ich die Quellcode-Repositories?wenn Sie nicht wissen, wie das geht) und dann beispielsweise in einem Verzeichnis Ihrer Wahl
apt-get source libc6-dev
lädt das Quell-Tarball herunter, entpackt es und patcht es in dieses Verzeichnis (in diesem Fall wird „eglibc“ als Quellpaket anstelle von „libc6-dev“ ausgewählt). Es msgget
scheint sich jedoch msgsnd
nur um Stub-Funktionen zu handeln – ich weiß nicht genug über Linux IPC, um Ihnen darüber hinaus Ratschläge zu geben.