为什么从源代码编译Wireshark会失败?

时间:2012-06-07 19:06:16

标签: build compiler-errors wireshark

我一直在关注此文档,以便从源代码编译Wireshark:

http://www.wireshark.org/docs/wsdg_html_chunked/ChSetupWin32.html

我正在运行这些命令,转到开始> '所有程序'> Visual Studio 2008> Visual Studio工具> Visual Studio 2008命令提示符

我也在调用“C:\ Program Files \ Microsoft Visual Studio 9.0 \ VC \ bin \ vcvars32.bat”,但我相信这可以通过VS2008命令提示符完成。

以下是我nmake -f Makefile.nmake verify_tools的输出:

Checking for required applications:
    cl: /cygdrive/c/Program Files/Microsoft Visual Studio 9.0/VC/BIN/cl 
    link: /cygdrive/c/Program Files/Microsoft Visual Studio 9.0/VC/BIN/link 
    nmake: /cygdrive/c/Program Files/Microsoft Visual Studio 9.0/VC/BIN/nmake 
    mt: /cygdrive/c/Program Files/Microsoft SDKs/Windows/v6.1/bin/mt 
    bash: /usr/bin/bash 
    bison: /usr/bin/bison 
    flex: /usr/bin/flex 
    env: /usr/bin/env 
    grep: /usr/bin/grep 
    /usr/bin/find: /usr/bin/find 
    peflags: /usr/bin/peflags 
    perl: /usr/bin/perl 
    C:\Python27\python.exe: /cygdrive/c/Python27/python.exe 
    sed: /usr/bin/sed 
    unzip: /usr/bin/unzip 
    wget: /usr/bin/wget

在此之后我继续运行命令:

nmake -f Makefile.nmake setup

nmake -f Makefile.nmake distclean

nmake -f Makefile.nmake all

调用最后一个命令('all')后,编译运行几分钟后转到tshark-tap-register.c

tshark-tap-register.c(6) : error C2182: 'File' : illegal use of type 'void'
tshark-tap-register.c(6) : error C2146: syntax error : missing ';'
before identifier 'STDIN'

它继续以这种方式,引用具有相同错误的增加的行号。最后,它停止,输出:

NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.EXE"' : return code '0x2'

NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe"' : return code '0x2'

如果有人对尝试的事情有任何建议,我将不胜感激!

1 个答案:

答案 0 :(得分:1)

由于您正在使用SVN构建开发快照,因此您可能只是提取了一个错误,该错误导致tshark-tap-register.c被错误地生成。 43154和43155都为我构建而没有问题。

除非您需要开发分支中的前沿功能,否则您应该在将来从Wireshark Downloads page获得最新的稳定源代码分发。