Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PCAP on Python 2.7 #27

Open
GoogleCodeExporter opened this issue Jun 14, 2015 · 12 comments
Open

PCAP on Python 2.7 #27

GoogleCodeExporter opened this issue Jun 14, 2015 · 12 comments

Comments

@GoogleCodeExporter
Copy link

Has anyone got PCAP to run on Python 2.7

Original issue reported on code.google.com by ajcbl...@glam.ac.uk on 15 Sep 2010 at 10:07

@GoogleCodeExporter
Copy link
Author

Up

Original comment by tbjhdani...@gmail.com on 8 Oct 2010 at 11:05

@GoogleCodeExporter
Copy link
Author

Up

Original comment by tbjhdani...@gmail.com on 8 Oct 2010 at 11:07

@GoogleCodeExporter
Copy link
Author

Not up yet... I'm getting following error with latest download 

gcc -pthread -fno-strict-aliasing -g -O2 -g -O0 -Wall -Wstrict-prototypes -fPIC 
-I/usr/include/python2.7 -c pcap_ex.c -o 
build/temp.linux-i686-2.7-pydebug/pcap_ex.o
pcap_ex.c:22:20: error: config.h: No such file or directory
pcap_ex.c: In function ‘pcap_ex_fileno’:
pcap_ex.c:165: error: dereferencing pointer to incomplete type
pcap_ex.c: In function ‘pcap_ex_next’:
pcap_ex.c:253: error: dereferencing pointer to incomplete type
pcap_ex.c: In function ‘pcap_ex_compile_nopcap’:
pcap_ex.c:285: warning: implicit declaration of function ‘mktemp’
error: command 'gcc' failed with exit status 1

Original comment by sadashiv...@gmail.com on 27 Oct 2010 at 1:57

@GoogleCodeExporter
Copy link
Author

[deleted comment]

@GoogleCodeExporter
Copy link
Author

I get the exact same thing on Mac OS X 10.6.4 Snow Leopard ^

Original comment by crh0...@gmail.com on 28 Oct 2010 at 4:58

@GoogleCodeExporter
Copy link
Author

Ok, I think I found a solution.  Someone posted a patch here 
http://trac.umitproject.org/ticket/328 that seems to work!  Save the following 
text to "python27patch" or whatever you want, save it in the same directory as 
the source code, and type: patch > python27patch.  Then just do python setup.py 
build, pythonsetup.py install, worked for me.

Index: pcap_ex.c
===================================================================
--- pcap_ex.c   (revision 85)
+++ pcap_ex.c   (working copy)
@@ -12,7 +12,7 @@
 # include <signal.h>
 # include <unistd.h>
 #endif
-
+#define HAVE_PCAP_FILE
 #include <pcap.h>
 #ifdef HAVE_PCAP_INT_H
 # include <pcap-int.h>

Original comment by crh0...@gmail.com on 28 Oct 2010 at 5:08

@GoogleCodeExporter
Copy link
Author

Thanks for posting the info and patch in Comment 6. A tiny correction to the 
redirection- it should be

  patch < python27patch

Original comment by chris.mc...@uwa.edu.au on 15 Feb 2011 at 10:53

@GoogleCodeExporter
Copy link
Author

Hi,

I can confirm adding the line "#define HAVE_PCAP_FILE" to pcap_ex.c (from 
pypcap-1.1) solves the error message below. (FWIW: Ubuntu 11.04, python 2.7)



pcap.c:28:12: warning: ‘__Pyx_SetVtable’ declared ‘static’ but never 
defined
pcap.c:29:12: warning: ‘__Pyx_GetVtable’ declared ‘static’ but never 
defined
pcap.c:30:18: warning: ‘__Pyx_CreateClass’ declared ‘static’ but never 
defined
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall 
-Wstrict-prototypes -fPIC -I/usr/include -I/usr/include/python2.7 -c pcap_ex.c 
-o build/temp.linux-x86_64-2.7/pcap_ex.o
pcap_ex.c: In function ‘pcap_ex_fileno’:
pcap_ex.c:165:16: error: dereferencing pointer to incomplete type
pcap_ex.c: In function ‘pcap_ex_next’:
pcap_ex.c:253:12: error: dereferencing pointer to incomplete type
pcap_ex.c: In function ‘pcap_ex_compile_nopcap’:
pcap_ex.c:285:2: warning: implicit declaration of function ‘mktemp’
error: command 'gcc' failed with exit status 1
make: *** [all] Error 1




Original comment by sander.j...@gmail.com on 24 May 2011 at 10:57

@GoogleCodeExporter
Copy link
Author

I had to use this patch in addition to the one above, to work with Ubuntu 10.11 
(oneiric):

--- setup.py    2005-10-16 19:07:03.000000000 -0400
+++ setup.py    2012-01-03 12:22:04.761298898 -0500
@@ -46,7 +46,7 @@
                 incdirs = [ os.path.join(d, sd) ]
                 if os.path.exists(os.path.join(d, sd, 'pcap.h')):
                     cfg['include_dirs'] = [ os.path.join(d, sd) ]
-                    for sd in ('lib', ''):
+                    for sd in ('lib', 'lib/i386-linux-gnu'):
                         for lib in (('pcap', 'libpcap.a'),
                                     ('pcap', 'libpcap.dylib'),
                                     ('wpcap', 'wpcap.lib')):

Original comment by japr...@gmail.com on 3 Jan 2012 at 5:29

@GoogleCodeExporter
Copy link
Author

look at here:http://code.google.com/p/pypcap/issues/detail?id=36

Original comment by lifuling...@126.com on 29 Feb 2012 at 4:23

@GoogleCodeExporter
Copy link
Author

I got it working in Win7 x64. 

Download WinPcap 4.1.2 Developer's Pack and extract:
http://www.winpcap.org/devel.htm

Download Pyrex and install:
http://brl.thefreecat.org/python-pyrex/

Get trunk and change line 45 in setup.py 
from:
for sd in ('include/pcap', 'include', ''):
to:
for sd in ('include', 'include', ''):

Then run as admininstrator:

python setup.py config --with-pcap="C:\Downloads\WpdPack_4_1_2\WpdPack"
python "c:\Python27\Scripts\pyrexc.py" pcap.pyx
python setup.py build
python setup.py install

Original comment by markus.r...@gmail.com on 4 Jun 2012 at 4:56

@GoogleCodeExporter
Copy link
Author

http://code.google.com/p/pypcap/issues/detail?id=36
非常感谢
Tanks so much
Merci bcp

Original comment by 1989caoy...@gmail.com on 11 Oct 2013 at 3:02

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant