Problem building Crypto++ 5.6.2 on Windows with GCC 4.8.1

271 views
Skip to first unread message

Andrew Dolby

unread,
Dec 15, 2013, 11:05:55 PM12/15/13
to cryptop...@googlegroups.com
Hello,

I built Crypto++ 5.6.2 with GCC 4.8.1 (from MinGW-w64) on Windows.

I get this error as I try to build my application (also with GCC 4.8.1) using Crypto++:

In file included from ..\..\cryptopp/randpool.h:4:0,

from ..\..\cryptopp/osrng.h:10,

from ..\test\src\test.cpp:8:

..\..\cryptopp/cryptlib.h:402:15: warning: unused parameter 'iv' [-Wunused-parameter]

virtual void Resynchronize(const byte *iv, int ivLength=-1) {throw NotImplemented(GetAlgorithm().AlgorithmName() + ": this object doesn't support resynchronization");}


This is how mingw32-make was run:


C:/MinGW/mingw64/bin/mingw32-make -f Makefile.Release

mingw32-make[1]: Entering directory 'C:/test/bin'

g++ -c -march=nocona -mtune=core2 -pipe -fno-keep-inline-dllexport -O2 -frtti -Wall -Wextra -fexceptions -mthreads -DUNICODE -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_OPENGL_ES_2 -DQT_OPENGL_ES_2_ANGLE -DQT_NEEDS_QMAIN -I..\test -I"..\..\cryptopp" -I"..\..\Qt\Qt64-5.1.0\include" -I"..\..\Qt\Qt64-5.1.0\include\QtWidgets" -I"..\..\Qt\Qt64-5.1.0\include\QtGui" -I"..\..\Qt\Qt64-5.1.0\include\QtANGLE" -I"..\..\Qt\Qt64-5.1.0\include\QtCore" -I"release" -I"." -I"..\..\Qt\Qt64-5.1.0\mkspecs\win32-g++" -o release\test.o ..\test\src\test.cpp


When I compiled Crypto++ I got no errors, though I was originally getting Resynchronize errors when I tried to build it with a different compiler.

Thanks,

Andrew Dolby

Daniel Farcovich

unread,
Dec 8, 2014, 9:46:42 AM12/8/14
to cryptop...@googlegroups.com
CryptoPP supports GCC 3.3 - 4.7.
I'm using gcc4.8.2 and have some other errors.
Daniel

Mouse

unread,
Dec 8, 2014, 11:50:09 AM12/8/14
to Daniel Farcovich, Crypto++ Users
I successfully built CryptoPP-5.6.2 on Linux (Ubuntu 14.04 LTS) using GCC 4.8.2, and Mac OS X (multiple versions, up to Mavericks 10.9.5) using GCC 4.8.3 (installed via Macports) and Clang that comes with Xcode 6.1.

I did make a few patches. The most significant one dealt with the build options in the GNUmakefile, which I'm attaching for your convenience.

Note that this makefile includes FHMQV support (the actual code written by Jeffrey Walton, if I'm not mistaken). If you didn't download those sources in addition to cryptopp library, you may need to remove the related lines, or comment them out.

Since you did not list any specific errors, I can't be more specific in telling how to deal with them.

P.S. I hope that my changes for Mac OS X and for newer Intel CPU will get merged into the mainstream.


--
--
You received this message because you are subscribed to the "Crypto++ Users" Google Group.
To unsubscribe, send an email to cryptopp-user...@googlegroups.com.
More information about Crypto++ and this group is available at http://www.cryptopp.com.
---
You received this message because you are subscribed to the Google Groups "Crypto++ Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cryptopp-user...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Regards,
Mouse

GNUmakefile

Daniel Farcovich

unread,
Dec 9, 2014, 2:29:28 AM12/9/14
to cryptop...@googlegroups.com, far...@gmail.com, mous...@gmail.com
This is very helpful.
I had a problem in rijndael.cpp, apparently some kind of namespace issue.
The compiler didn't recognize Rijndael::Dec::AdvancedProcessBlocks
I changed it to Dec::AdvancedProcessBlocks and it seems to compile.

Thanks!
Daniel

Jeffrey Walton

unread,
Dec 13, 2014, 4:57:22 PM12/13/14
to cryptop...@googlegroups.com


On Sunday, December 15, 2013 11:05:55 PM UTC-5, Andrew Dolby wrote:
Hello,

I built Crypto++ 5.6.2 with GCC 4.8.1 (from MinGW-w64) on Windows.

I get this error as I try to build my application (also with GCC 4.8.1) using Crypto++:

In file included from ..\..\cryptopp/randpool.h:4:0,

from ..\..\cryptopp/osrng.h:10,

from ..\test\src\test.cpp:8:

..\..\cryptopp/cryptlib.h:402:15: warning: unused parameter 'iv' [-Wunused-parameter]

virtual void Resynchronize(const byte *iv, int ivLength=-1) {throw NotImplemented(GetAlgorithm().AlgorithmName() + ": this object doesn't support resynchronization");}


Its a warning, not an error. It can be safely ignored.

Crypto++ has a  lot of "unused parameter" warnings. Its par for the course with interface programming.

Jeff
Reply all
Reply to author
Forward
0 new messages