Ich arbeite an Fedora 17 und möchte mit libpcap programmieren. Das Problem ist, dass mein Computer pcap.h nicht findet, was wirklich seltsam ist, da ich libpcap und libpcap-devel installiert habe. Wireshark und Schnauben funktionieren auch auf meiner Station, von der ich glaube, dass sie diese Bibliothek benutzt. Also, wenn ich meinen Code kompiliere mit ...
#include <pcap.h>
... Code
Und mit gcc my_file.c -lpcap erhalte ich Compilerfehler, die besagen, dass pcap.h nicht gefunden werden kann. Was seltsam ist, dass ich meine libpcap.so-Dateien im Verzeichnis/libraries/sehe. Ich habe getan ..
yum install libpcap und yum install libpcap-devel
Ich weiß nicht, warum Fedora mir das antut.
Danke für jede Hilfe!
Sie müssen den Ordner angeben, in dem die Header installiert sind, zum Beispiel:
gcc -I/usr/include/pcap my_file.c -lpcap
Versuchen Sie, mit locate pcap.h
das richtige Verzeichnis für den -I
-Schalter zu finden.
Ihre Bibliothek fehlt möglicherweise, installieren Sie sie und verknüpfen Sie sie
yum install libpcap-devel
Fügen Sie in Ihrem Makefile Folgendes hinzu:
-L/usr/lib -lpcap
Versuchen
~$ whereis pcap
Dann, wie Mata sagte
gcc -lpcap -I{path} file.c
wobei {path}
der Pfad ist, den whereis
Ihnen gegeben hat, wählen Sie den Pfad mit dem pcap.h-Teil am Ende (ohne den pcap.h-Teil).
So führen Sie das Programm in c ++ aus:
für C++ - Programm
g++ program_name.cpp -lpcap