错误:'srandom'未在此范围内声明

时间:2012-11-01 09:56:29

标签: c++ compiler-errors mingw zxing

我正在使用MinGW构建zxing,但它因这些错误而失败:

build\core\tests\src\common\BitArrayTest.cpp: In static member function 'static void zxing::BitArrayTest::fillRandom(zxing::BitArray&, zxing::BitArray&)':
build\core\tests\src\common\BitArrayTest.cpp:99:39: error: 'srandom' was not declared in this scope
build\core\tests\src\common\BitArrayTest.cpp:101:15: error: 'random' was not declared in this scope
scons: *** [build\core\tests\src\common\BitArrayTest.o] Error 1

我尝试将-DANN_NO_RANDOM添加到编译器标志中,但它没有帮助。

2 个答案:

答案 0 :(得分:6)

srandomlinux函数,而是使用srand,如果您不想更改外部库中的代码,只需将-Dsrandom=srand -Drandom=rand添加到编译器标志。

答案 1 :(得分:0)

您需要包含<stdlib.h>标头文件。