cryptopp 5.5.2 i gcc 4.7

Jan Rękorajski baggins at pld-linux.org
Tue Sep 4 11:45:28 CEST 2012


On Tue, 04 Sep 2012, Łukasz Michalski wrote:

> Witam,
> 
> Budowa cryptopp 5.5.2 za pomocą gcc 4.7.1 kończy się tak:
> 
> /bin/sh ./libtool --tag=CXX   --mode=compile i686-pld-linux-g++
> -DHAVE_CONFIG_H -I.   -D_FORTIFY_SOURCE=2   -O2 -pipe
> -fno-strict-aliasing -fwrapv -march=i686 -mtune=pentium4 -gdwarf-4
> -fno-debug-types-section -g2  -DCRYPTOPP_DISABLE_X86ASM -MT algparam.lo
> -MD -MP -MF .deps/algparam.Tpo -c -o algparam.lo algparam.cpp
> libtool: compile:  i686-pld-linux-g++ -DHAVE_CONFIG_H -I.
> -D_FORTIFY_SOURCE=2 -O2 -pipe -fno-strict-aliasing -fwrapv -march=i686
> -mtune=pentium4 -gdwarf-4 -fno-debug-types-section -g2
> -DCRYPTOPP_DISABLE_X86ASM -MT algparam.lo -MD -MP -MF .deps/algparam.Tpo
> -c algparam.cpp  -fPIC -DPIC -o .libs/algparam.o
> In file included from algparam.h:6:0,
>                  from algparam.cpp:7:
> secblock.h: In instantiation of 'CryptoPP::AllocatorWithCleanup<T,
> T_Align16>::pointer CryptoPP::AllocatorWithCleanup<T,
> T_Align16>::allocate(CryptoPP::AllocatorWithCleanup<T,
> T_Align16>::size_type, const void*) [with T = unsigned char; bool
> T_Align16 = false; CryptoPP::AllocatorWithCleanup<T, T_Align16>::pointer
> = unsigned char*; CryptoPP::AllocatorWithCleanup<T,
> T_Align16>::size_type = unsigned int]':
> secblock.h:283:19:   required from 'CryptoPP::SecBlock<T,
> A>::SecBlock(CryptoPP::SecBlock<T, A>::size_type) [with T = unsigned
> char; A = CryptoPP::AllocatorWithCleanup<unsigned char>;
> CryptoPP::SecBlock<T, A>::size_type = unsigned int]'
> algparam.h:17:2:   required from here
> secblock.h:97:3: error: 'CheckSize' was not declared in this scope, and
> no declarations were found by argument-dependent lookup at the point of
> instantiation [-fpermissive]
> secblock.h:97:3: note: declarations in dependent base
> 'CryptoPP::AllocatorBase<unsigned char>' are not found by unqualified lookup
> secblock.h:97:3: note: use 'this->CheckSize' instead
> make[1]: *** [algparam.lo] Error 1
> 
> Próbowałem 5.6.1 - też się nie buduje, nawet z tym:
> http://sourceforge.net/apps/trac/cryptopp/attachment/ticket/14/gcc4.7.diff
> 
> Jak wersja z repo została zbudowana? Starszym kompilatorem? Czy są
> gdzieś jakieś patche o których nie wiem?

Patrząc po datach to było kompilowane bardzo starym gcc (Built: 2008/07/27 23:19).
Próbowałeś dodać -fpermissive do CXXFLAGS jak sugeruje komunikat błędu?

-- 
Jan Rękorajski                                 | PLD/Linux
SysAdm                                         | http://www.pld-linux.org/
baggins<at>mimuw.edu.pl
baggins<at>pld-linux.org


More information about the pld-devel-pl mailing list