当前位置: 首页 > news >正文

毕业设计(1)-AFLGO的安装

AFLGO是一个模糊测试工具,在CSDN上的安装教程不多,自己在安装过程中也出现了很多教程之外的错误,最后反复安装了2天终于安装成功这里记录一下安装工程中的错误
使用的平台:Ubuntu18.04

配置:

内存:6G(偏低,最好10G,但我的电脑只有8G,内存过低会安装失败)
存储:100G(偏高了,实际用不到这么多大概60G也够用)
对于一个新的Ubuntu系统

首先安装git

sudo apt install git

下载AFLGO项目

git clone https://github.com/aflgo/aflgo

在git是使用中如果出现拒绝连接的情况先Ping github.com如果ping不通说明git的相关设置有问题使用

git config --global -l

查看代理如果你没有任何与https代理相关的内容,例如https_proxy = …问题不在这里。
如果您有与https代理相关的内容,请将其从〜/ .gitconfig文件中删除,然后重试。
下载好后进入aflgo/scripts/build目录下的
aflgo-build.sh文件就是AFLGo的自动安装脚本
可以尝试直接运行(运行前请注意先保存虚拟机快照)

sudo ./aflgo-build.sh

如果运行没有出错结果应为如下:
在这里插入图片描述
运行开始时我的虚拟机在使用wget下载文件的时候总是失败,在网上找了很多方法也不行
这里我先运行一次,这里脚本可以看到会建立build文件夹,在llvm_tools文件夹下下载文件,直接wget失败,可以把链接复制然后在类似于https://ghproxy.com/这类github代理网站上下载压缩包,然后将压缩包复制到
build/llvm_tools文件夹下(build通常和aflgo文件在同一目录下,如果进入了root模式就在user/root文件夹下)最后把建立文件夹和下载的指令注释掉就可以继续下一步了(最好使用命令行指令进行复制,否则可能出现权限不够导致无法复制的情况)
在这里插入图片描述
为了后续安装顺利,如果给虚拟机分配的内存小于10G,可能在运行中报错:C++: fatal error: Killed signal terminated program cc1plus
可以增加SWAP交换空间解决

su
dd if=/dev/zero of=/swapfile bs=1G count=10
#count的大小就是增加的swap空间的大小,1G是块大小为1G,所以空间大小是bs*count=10G
mkswap /swapfile
#把刚才空间格式化成swap格式
chmod 0600 /swapfile  
swapon /swapfile
#使用刚才创建的swap空间

然后避免后续因为网络问题导致安装失败,先进行环境的安装
高版本cmake需要高版本的g++才能编译,这里选择用g++10:
安装g++10前,先进行apt的换源

sudo gedit /etc/apt/sources.list

打开后将下面的代码对原来的进行替换(替换前记得把原来的备份)

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

然后更新源

sudo apt-get update

然后安装

#安装g++-10
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt install g++-10
#将gcc-10, g++-10设为高优先级
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 1
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 2
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 1
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 2

安装cmake同样wget失败就手动下载压缩包

sudo apt purge cmake
wget https://github.com/Kitware/CMake/releases/download/v3.13.4/cmake-3.13.4.tar.gz
tar zxvf cmake-3.13.4.tar.gz
cd cmake-3.13.4
sudo ./bootstrap
sudo make
sudo make install
cmake  --version 

然后继续安装环境

export LC_ALL=C
sudo apt install -y python-dev python3 python3-dev python3-pip autoconf automake libtool-bin python-bs4 libboost-all-dev
sudo pip3 install --upgrade pip
sudo pip3 install networkx
sudo pip3 install pydot
sudo pip3 install pydotplu

然后注释掉aflgo-build.sh文件中的指令
在这里插入图片描述
然后就可以进入到aflgo/scripts/build目录下的,再次运行aflgo-build.sh
安装时间大概需要1~2个小时,安装完成后可以进行测试
测试过程可以参考这位大佬的博客
http://t.csdn.cn/sl5Wk

http://www.lryc.cn/news/17085.html

相关文章:

  • 基于Opencv的缺陷检测任务
  • Android Gradle脚本打包
  • 平滑KDJ指标公式,减少无效金叉死叉
  • 大势前瞻!文旅还是短视频,你弯道超车风口在这了
  • JAVA基础常见面试题
  • 通过一张照片来定位拍摄地点和网站的域名 LA CTF 2023
  • SpringBoot(powernode)(内含教学视频+源代码)
  • TEMU联盟计划用意何在?做推广达人真的能收入满满吗?
  • 【概念辨析】二维数组传参的集中可能性
  • Photon Vectorized Engine 学习记录
  • webRTC学习-基础知识
  • MySQL数据库——JDBC编程
  • 【面向小白】你见过这样讲解队列的吗?(阅此文可学会用纯C手撕一个队列)
  • [element plus] 对话框组件再封装使用 - vue
  • Markdown基本语法简介
  • 分布式服务的接口幂等性如何设计
  • 视频流截取保存到本地路径(打包jar包CMD运行)
  • mysql索引失效的几种情况
  • Windows下载安装Redis的详细步骤
  • 【蓝桥杯每日一题】差分算法
  • MyBatis Plus 数据库字段加密处理
  • openpose在win下环境配置
  • 【剑指offer-C++】JZ16:数值的整数次方
  • 了解Axios及其运用方式
  • 【LeetCode】剑指 Offer(7)
  • Python:try except 异常处理整理
  • Redis Lua脚本的详细介绍以及使用入门
  • synchronized和ReentrantLock有什么区别呢?
  • SVHN数据集下载及使用方法
  • 产业安全公开课:2023年DDoS攻击趋势研判与企业防护新思路