zoukankan      html  css  js  c++  java
  • unbutu下wireshark编译安装(已更新)

    今天下午在ubuntu下进行编译安装wireshark,过程中出了很多错误,但最终安装成功了,这里写下自己的安装步骤和方法,有参考博文的安装编译方法,也有自己的总结和心得。

    1 安装编译工具

    $sudo apt-get install build-essential
    

    2 为了成功编译Wireshark,您需要安装GTK+的开发文件和GLib库(libraries)。

    $sudo apt-get install libgtk2.0-dev libglib2.0-dev
    

    3 安装Checkinstall以便管理您系统中直接由源代码编译安装的软件。

    $sudo apt-get install checkinstall
    

    4 wireshark源码下载地址 http://www.wireshark.org/download.html (页面中的 source code)

    下载后的文件名:wireshark-1.12.7.tar.bz2

    5 cd到文件目录解压:

    $tar -xvf wireshark-1.12.7.tar.bz2
    

    6 编译安装命令如下:

    hh@hh-virtual-machine:~/wireshark-1.12.7$
    $./configure
    $make
    $sudo make install
    

    其中make编译时间会比较长,这样下来就基本安装了。当然这是在比较理想的情况下!

    下面是这篇博文的关键,主要就是我在编译安装过程中出现的问题,并且都是在./configure中出现的问题:###

    问题1:

    解决办法:

    $sudo apt-get install flex bison 
    

    yacc(Yet Another Compiler Compiler),是Unix/Linux上一个用来生成编译器的编译器(编译器代码生成器)。
    yacc和lex在ubuntu使用flex和bison代替,此处安装bison就是安装yacc
    问题2:

    解决办法:

    $sudo apt-get install libqt4-dev
    

    问题3:configure: error: GTK 3 is not available

    解决办法:

    因为前面已经安装了GTK+和Glib库,所以是缺少GTK(一种图形用户界面工具包)环境,运行如下命令:

    $sudo apt-get install gnome-core-devel 
    

    问题4:

    问题原因是ubuntu下缺少pcap.h等文件。

    解决办法:

    编译安装libpcap.

    在www.tcpdump.org页面中可下载源码:libpcap-1.0.0.tar.gz

    cd到文件目录:

     $tar -xvf libpcap-1.0.0.tar.gz  
     $cd libpcap-1.0.0.tar.gz  
     $ls
     $cd libpcap-1.0.0
     $ls
     $./configure
     $make
     $sudo make install
    

    以上是过程中遇到的几个问题!

    采用上面的方法后再回到文章前面的步骤:

    $cd wireshark-1.12.7
    
    $./configure
    
    $make
    $sudo make install
    

    这样就安装好了。

    启动方法:进入wireshark-1.12.7,输入命令:

    $sudo ./wireshark

    这里如果不用sudo,则wireshark找不到网络设备接口,这主要与权限有关,启动时注意下就行。

    总结:

          1.安装编译工具 :$sudo apt-get install build-essential
    
          2.可能需要安装GTK+和Glib库 : $sudo apt-get install libgtk2.0-dev libglib2.0-dev
    
          3.安装flex和bison代替lex和yacc :  $sudo apt-get install flex bison
    
          4.注意对问题的处理!
    

    博客更新##

    在娄老师的指导下,对unbutu下wireshark的整个编译过程进行改进,将编译过程中涉及到的所有安装(apt-get)命令、下载源码、解压、配置、编译、安装(make install)等步骤编写到一个shell脚本中,因为之前没有深入接触过shell脚本的编写,所以首先简单了解了一下shell脚本的相关内容,并自己编写了一个hello world的shell脚本运行了一下,也算是有了一个感性的认识!下面就写一下自己在编写wireshark的shell运行脚本中的一点收获。

    1 开始创建一个脚本:

    (1) 使用vi等,依据个人习惯;在文件的第一行,以下面的内容开始:

    #! / bin/sh

    • 解释:#! ---->告诉系统后面的参数是用来执行该文件的程序,在这里我们使用/ bin / sh 来执行脚本(#! /bin/sh 是指此脚本使用,/bin/sh来解释执行,#!是特殊的表示符,其后面根的是此解释此脚本的shell的路径)

    (2) 编辑好脚本,要执行该脚本就必须使该脚本可执行,在文件的末尾加上下面的内容:

    chmod + x filename

    (3)在命令终端上可输入 ./filename来执行脚本

    补充:在查资料的过程中,发现脚本程序的第一行既可以写#!/bin/sh,又可以写#!/bin/bash,就顺便了解了一下二者的区别:

    	sh 一般设成 bash 的软链 (symlink);
    
    	在一般的 linux 系统当中(例外如 FreeBSD,OpenBSD 等),使用 sh 调用执行脚本相当于打开了bash 的 POSIX 标准模式,也就是说 /bin/sh 相当于 /bin/bash  --posix;
    
    	所以,sh跟bash的区别,实际上就是bash有没有开启posix模式的区别;
    
    	so,可以预想的是,如果第一行写成 #!/bin/bash --posix,那么脚本执行效果跟#!/bin/sh是一样的
    

    2 创建wireshark.shell脚本

        #!/bin/sh
        sudo apt-get install build-essential libgtk2.0-dev libglib2.0-dev checkinstall
        wget https://1.na.dl.wireshark.org/src/wireshark-1.12.7.tar.bz2 --no-check-certificate  
        tar -xvf wireshark-1.12.7.tar.bz2
        cd wireshark-1.12.7
        ./configure
        make
        sudo make install
        sudo ./wireshark	
    

    3 为wireshark.shell添加执行权限

      $chmod +x wireshark.shell
    

    4 运行wireshark.sh脚本

      ./wireshark.shell
    

    4 遇到的问题
    在脚本运行的过程中,我发现并没有进行安装包的下载过程

    根据错误最后一行的提示,在wget命令的最后加上--no-check-certificate,最后运行成功了

    5 一点收获
    首先对shell脚本的编写有了简单的入门,以前觉得关于shell脚本的东西都很难,通过这个实验,认识到只要下决心开始,就会有收获
    其次是对wget命令有了简单的了解

  • 相关阅读:
    List of the best open source software applications
    Owin对Asp.net Web的扩展
    NSwag给api加上说明
    'workspace' in VS Code
    unable to find valid certification path to requested target
    JMeter的下载以及安装使用
    exception disappear when forgot to await an async method
    Filter execute order in asp.net web api
    记录web api的request以及response(即写log)
    asp.net web api的源码
  • 原文地址:https://www.cnblogs.com/myidea/p/4859114.html
Copyright © 2011-2022 走看看