On May 23, 2012, at 9:59 AM, NoRulez wrote:

> Hello,
> 
> on windows and on linux crypto++ compiles fine.
> But on mac os x lion i get compile errors.
> Did i need to define something special to get it to work?

I sent a patch to Wei fixing these problems a while back, but AFAIK there 
hasn't been a release since then.
If I recall correctly, you need to add "this->"  in front of the calls.

I'm building from svn TOT, and it works fine with clang.


> 
> Here are the errors:
> /.../source/misc.h:414:2: warning: comparison of unsigned expression < 0 is 
> always false [-Wtype-limits]
> /.../source/misc.h: In instantiation of 'std::string CryptoPP::IntToString(T, 
> unsigned int) [with T = unsigned int; std::string = std::basic_string<char>]':
> /.../source/simple.h:42:131:   required from here
> /.../source/misc.h:414:2: warning: comparison of unsigned expression < 0 is 
> always false [-Wtype-limits]
> In file included from /.../source/rijndael.h:8:0,
>                  from /.../source/aes.h:4,
>                  from /.../source/dll.h:11,
>                  from /.../source/dll.cpp:6:
> /.../source/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 = long unsigned int]':
> /.../source/secblock.h:129:29:   required from here
>  /.../source/secblock.h:91:3: error: 'CheckSize' was not declared in this 
> scope, and no declarations were found by argument-dependent lookup at the 
> point of instantiation [-fpermissive]

this->CheckSize

>  /.../source/secblock.h:91:3: note: declarations in dependent base 
> 'CryptoPP::AllocatorBase<unsigned char>' are not found by unqualified lookup
> /.../source/secblock.h:91:3: note: use 'this->CheckSize' instead
> /.../source/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 = short unsigned int; bool T_Align16 = false; 
> CryptoPP::AllocatorWithCleanup<T, T_Align16>::pointer = short unsigned int*; 
> CryptoPP::AllocatorWithCleanup<T, T_Align16>::size_type = long unsigned int]':
> /.../source/secblock.h:130:29:   required from here
> 
> /.../source/algebra.h:51:16: warning: unused parameter 'source' 
> [-Wunused-parameter]
> In file included from /.../source/algebra.h:282:0,
>                  from /.../source/modarith.h:9,
>                  from /.../source/pubkey.h:35,
>                  from /.../source/gfpcrypt.h:8,
>                  from /.../source/dh.h:7,
>                  from /.../source/dll.h:17,
>                  from /.../source/dll.cpp:6:
> /.../source/algebra.cpp: In instantiation of 'const T& 
> CryptoPP::AbstractEuclideanDomain<T>::Gcd(const Element&, const Element&) 
> const [with T = CryptoPP::Integer; 
> CryptoPP::AbstractEuclideanDomain<T>::Element = CryptoPP::Integer]':
> /.../source/modarith.h:15:29:   required from here
>  /.../source/algebra.cpp:61:2: error: 'Equal' was not declared in this scope, 
> and no declarations were found by argument-dependent lookup at the point of 
> instantiation [-fpermissive]
this->Equal
>  /.../source/algebra.cpp:61:2: note: declarations in dependent base 
> 'CryptoPP::AbstractGroup<CryptoPP::Integer>' are not found by unqualified 
> lookup
> /.../source/algebra.cpp:61:2: note: use 'this->Equal' instead
> In file included from /.../source/pubkey.h:36:0,
>                  from /.../source/gfpcrypt.h:8,
>                  from /.../source/dh.h:7,
>                  from /.../source/dll.h:17,
>                  from /.../source/dll.cpp:6:
> /.../source/filters.h: In instantiation of 'size_t 
> CryptoPP::StringSinkTemplate<T>::Put2(const byte*, size_t, int, bool) [with T 
> = std::basic_string<char>; size_t = long unsigned int; byte = unsigned char]':
> /.../source/filters.h:614:29:   required from here
> /.../source/filters.h:597:9: warning: unused parameter 'messageEnd' 
> [-Wunused-parameter]
> 
> /.../source/algebra.h:210:7: warning: unused parameter 'rhs' 
> [-Wunused-parameter]
> In file included from /.../source/dll.h:20:0,
>                  from /.../source/dll.cpp:6:
> /.../source/eccrypto.h: In instantiation of 'void 
> CryptoPP::DL_GroupParameters_EC<EC>::Initialize(const EllipticCurve&, const 
> Point&, const CryptoPP::Integer&, const CryptoPP::Integer&) [with EC = 
> CryptoPP::ECP; CryptoPP::DL_GroupParameters_EC<EC>::EllipticCurve = 
> CryptoPP::ECP; CryptoPP::DL_GroupParameters_EC<EC>::Point = 
> CryptoPP::ECPPoint]':
> /.../source/eccrypto.h:263:29:   required from here
>             
> /.../source/eccrypto.h:46:3: error: 'SetSubgroupGenerator' was not declared 
> in this scope, and no declarations were found by argument-dependent lookup at 
> the point of instantiation [-fpermissive]

this->SetSubgroupGenerator

> 
>           
>           /.../source/eccrypto.h:46:3: note: declarations in dependent base 
> 'CryptoPP::DL_GroupParameters<CryptoPP::ECPPoint>' are not found by 
> unqualified lookup
> /.../source/eccrypto.h:46:3: note: use 'this->SetSubgroupGenerator' instead
> In file included from /.../source/eccrypto.h:258:0,
>                  from /.../source/dll.h:20,
>                  from /.../source/dll.cpp:6:
> /.../source/eccrypto.cpp: In instantiation of 'void 
> CryptoPP::DL_GroupParameters_EC<EC>::Initialize(const CryptoPP::OID&) [with 
> EC = CryptoPP::ECP]':
> /.../source/eccrypto.h:263:29:   required from here
> 
>             
> /.../source/eccrypto.cpp:594:101: error: 'ExponentiateElement' was not 
> declared in this scope, and no declarations were found by argument-dependent 
> lookup at the point of instantiation [-fpermissive]

this->ExponentiateElement
> 
>           
>           /.../source/eccrypto.cpp:594:101: note: declarations in dependent 
> base 'CryptoPP::DL_GroupParameters<CryptoPP::ECPPoint>' are not found by 
> unqualified lookup
> /.../source/eccrypto.cpp:594:101: note: use 'this->ExponentiateElement' 
> instead
> In file included from /.../source/dll.h:20:0,
>                  from /.../source/dll.cpp:6:
> /.../source/eccrypto.h: In instantiation of 'void 
> CryptoPP::DL_GroupParameters_EC<EC>::Initialize(const EllipticCurve&, const 
> Point&, const CryptoPP::Integer&, const CryptoPP::Integer&) [with EC = 
> CryptoPP::EC2N; CryptoPP::DL_GroupParameters_EC<EC>::EllipticCurve = 
> CryptoPP::EC2N; CryptoPP::DL_GroupParameters_EC<EC>::Point = 
> CryptoPP::EC2NPoint]':
> /.../source/eccrypto.h:264:29:   required from here
>             
> /.../source/eccrypto.h:148:44: error: 'SetPublicElement' was not declared in 
> this scope, and no declarations were found by argument-dependent lookup at 
> the point of instantiation [-fpermissive]

this->SetPublicElement

>           
>           /.../source/eccrypto.h:148:44: note: declarations in dependent base 
> 'CryptoPP::DL_PublicKey<CryptoPP::ECPPoint>' are not found by unqualified 
> lookup
> /.../source/eccrypto.h:148:44: note: use 'this->SetPublicElement' instead
> /.../source/eccrypto.h: In instantiation of 'void 
> CryptoPP::DL_PublicKey_EC<EC>::Initialize(const EC&, const Element&, const 
> CryptoPP::Integer&, const Element&) [with EC = CryptoPP::ECP; 
> CryptoPP::DL_PublicKey_EC<EC>::Element = CryptoPP::ECPPoint]':
> /.../source/eccrypto.h:267:29:   required from here
>             
> /.../source/eccrypto.h:169:4: error: 'GenerateRandom' was not declared in 
> this scope, and no declarations were found by argument-dependent lookup at 
> the point of instantiation [-fpermissive]
> 
this->GenerateRandom

>           
>           /.../source/eccrypto.h:169:4: note: declarations in dependent base 
> 'CryptoPP::DL_PrivateKeyImpl<CryptoPP::DL_GroupParameters_EC<CryptoPP::ECP> 
> >' are not found by unqualified lookup
> /.../source/eccrypto.h:169:4: note: use 'this->GenerateRandom' instead
> /.../source/eccrypto.h: In instantiation of 'void 
> CryptoPP::DL_PrivateKey_EC<EC>::Initialize(CryptoPP::RandomNumberGenerator&, 
> const EC&, const Element&, const CryptoPP::Integer&) [with EC = 
> CryptoPP::ECP; CryptoPP::DL_PrivateKey_EC<EC>::Element = CryptoPP::ECPPoint]':
> /.../source/eccrypto.h:271:29:   required from here



-- Marshall

Marshall Clow     Idio Software   <mailto:[email protected]>

A.D. 1517: Martin Luther nails his 95 Theses to the church door and is promptly 
moderated down to (-1, Flamebait).
        -- Yu Suzuki

-- 
You received this message because you are subscribed to the "Crypto++ Users" 
Google Group.
To unsubscribe, send an email to [email protected].
More information about Crypto++ and this group is available at 
http://www.cryptopp.com.

Reply via email to