京东-优惠雷达
新人页面
精选商品
首月0月租体验,领12个月京东PLUS
自营热卖

使用MinGW进行TestU01测试

指間的星光 1年前   阅读数 386 0
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014593570/article/details/83688458

MinGW

下载MinGW
进入MinGW官网,在右上方点击下载
在这里插入图片描述
再点击,进行下载
在这里插入图片描述
下载完成之后,是这样一个EXE文件,双击它之后,开始进行安装
在这里插入图片描述

安装MinGW
执行mingw-get-setup.exe文件,根据提示进行安装
在这里插入图片描述

在这里插入图片描述

安装完成之后,会有这样一个文件,双击执行它。
在这里插入图片描述

因为要安装GCC环境,所以尽量把和GCC相关的都装了。
在Basic Setup里面,右边的需要全部安装。点击选择框, 选择“Mark for Installation”
在这里插入图片描述
切换到All Packages里面,在MinGW目录下,把有GCC前缀的能装的都装了
在这里插入图片描述
然后点击左上角"Installation",选择"Apply Changes".然后等待下载完成。接下来进行环境变量配置

配置环境变量
在系统环境变量里面,Path下,新增E:\MinGW\bin;(就是你安装目录下的bin文件)
在这里插入图片描述
在这里插入图片描述

到这里MinGW的安装和配置就完成了。可以打开E:\MinGW\msys\1.0目录下的msys.bat,进入终端,输入gcc -v指令。如果能够看到下图所示的信息,就说明MinGW安装配置成功。
在这里插入图片描述
在这里插入图片描述

TestU01

下载testu01
打开官网,点击"Binaries for MinGW under MS Windows"进行下载。
在这里插入图片描述
下载完成之后,会得到这样一个文件
在这里插入图片描述
将它放到E:\MinGW目录下
在这里插入图片描述
然后打开终端(E:\MinGW\msys\1.0\msys.bat)
依次输入如下三个命令,为后续解压缩操作做准备
1:mingw-get install msys-wget
2:mingw-get install msys-unzip
3:mingw-get install msys-patch

安装好上述三个包之后,要开始进行解压操作了
进入到MinGW目录下,输入unzip e:/MinGW/bin-mingw.zip
在这里插入图片描述
顺利解压之后,在E:/MinGW会生成usr文件夹。
在这里插入图片描述
然后进行环境变量的配置

配置环境变量
在系统变量里面,新建LD_LIBRARY_PATH,并填入E:\MinGW\usr\lib
在这里插入图片描述
在这里插入图片描述
在系统变量里面,新建LIBRARY_PATH,并填入E:\MinGW\usr\lib
在这里插入图片描述
在这里插入图片描述
在系统变量里面,新建C_INCLUDE_PATH,并填入E:\MinGW\usr\include
在这里插入图片描述

然后打开终端,依次执行下面三条命令
1: export LD_LIBRARY_PATH=E:/MinGW/usr/lib
2: export LIBRARY_PATH=E:/MinGW/usr/lib
3: export C_INCLUDE_PATH=E:/MinGW/usr/include

g)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
OK 到这里TestU01的安装配置就完成了

使用Testu01进行测试

1、testu01的测试比较复杂,我在这里不进行详细说明。在后面我会附上两个参考文献,分别是官方的Guide和Paper.里面是我在学习的时候做的一些标记(可以算是重点吧),大家可以参考下
2、在官网上,有简要的说明,这里也附上
这里贴一个迭代一次生成32bit的PRNG,然后进行Testu01进行测试的源码

#include "unif01.h"
#include "bbattery.h"
#include<stdio.h>
#include<math.h>

static unsigned int y = 2463534242U;

unsigned int mygenerator (void)
{
   y ^= (y << 13);
   y ^= (y >> 17);
   return y ^= (y << 5);
}


int main(void)
{

	unif01_Gen *gen;
	gen = unif01_CreateExternGenBits("mygenerator", mygenerator);
	bbattery_SmallCrush(gen);
	unif01_DeleteExternGenBits(gen);
	return 0;
}

将这个源文件放到E:\MinGW\usr下
在这里插入图片描述
然后,打开终端,进入到E:\MinGW\usr,执行以下命令
gcc my.c -o my.exe -ltestu01 -lprobdist -lmylib -lwsock32
然后执行./my.exe命令
在这里插入图片描述

测试就开始执行了
在这里插入图片描述

OK,最后能跑出来一个结果
在这里插入图片描述

参考文献:
1.官方Guide
链接:https://pan.baidu.com/s/1hJHX7JM4yzSdR_7LirVobA
提取码:irlw
2.官方Paper
链接:https://pan.baidu.com/s/1C_WbVR9h0stGAasxYzOc0g
提取码:sfxl

阅读更多
(function(){ function setArticleH(btnReadmore,posi){ var winH = $(window).height(); var articleBox = $("div.article_content"); var artH = articleBox.height(); if(artH > winH*posi){ articleBox.css({ 'height':winH*posi+'px', 'overflow':'hidden' }) btnReadmore.click(function(){ if(typeof window.localStorage === "object" && typeof window.csdn.anonymousUserLimit === "object"){ if(!window.csdn.anonymousUserLimit.judgment()){ window.csdn.anonymousUserLimit.Jumplogin(); return false; }else if(!currentUserName){ window.csdn.anonymousUserLimit.updata(); } } articleBox.removeAttr("style"); $(this).parent().remove(); }) }else{ btnReadmore.parent().remove(); } } var btnReadmore = $("#btn-readmore"); if(btnReadmore.length>0){ if(currentUserName){ setArticleH(btnReadmore,3); }else{ setArticleH(btnReadmore,1.2); } } })()
注意:本文归作者所有,未经作者允许,不得转载

全部评论: 0

    我有话说: