More info... I found the first error, "invalid token in expression", has to do with incorrect EOL format (DOS instead of UNIX). There is a line extending \ and it doesn't work with a DOS EOL following it. Converted all files to UNIX format.
The first error in secblock.h has to do with preprocessing. Here are the details: What's happening in the actual build... typedef SecBlock<byte, AllocatorWithCleanup<byte, CRYPTOPP_BOOL_X86 | CRYPTOPP_BOOL_X64> > AlignedSecByteBlock; is expanding to... typedef SecBlock<byte, AllocatorWithCleanup<byte, 1 | 0 > > AlignedSecByteBlock; The 2nd template parameter to AllocatorWithCleanup should be a BOOL specifying whether to align16. If the preprocessor had reduced "1 | 0" to "1" to generate the following... typedef SecBlock<byte, AllocatorWithCleanup<byte, 1> > AlignedSecByteBlock; it would have compiled. Or perhaps the compiler was supposed to compile it correctly anyway. Is this a gcc version issue? Are there settings or command line directives that will help? Thanks, -Aaron On Jun 19, 11:01 am, aaronf <[EMAIL PROTECTED]> wrote: > I was wondering if others have had success building cryptopp5.5.2 on > QNX. I am running QNX Neutrino RTOS 6.3.0 which has an installed > version of gcc of 2.95.3. > > I am getting build errors out of misc.h and secblock.h. I have tried > earlier versions of cryptopp. I have also tried replacing secblock.h > with a newer version I found by Googling "QNX cryptopp". > > My build output (with updated secblock.h) is as follows: > > g++ -DNDEBUG -g -O2 -pipe -c 3way.cpp > In file included from seckey.h:9, > from 3way.h:7, > from 3way.cpp:5: > misc.h:23: Invalid token in expression > In file included from seckey.h:9, > from 3way.h:7, > from 3way.cpp:5: > misc.h:111: warning: `noinline' attribute directive ignored > In file included from 3way.h:8, > from 3way.cpp:5: > secblock.h:450: parse error before `>' > secblock.h:462: `T_Align16' was not declared in this scope > secblock.h:462: template argument 4 is invalid > secblock.h:462: ANSI C++ forbids declaration `' with no type > secblock.h:464: parse error before `;' > secblock.h:471: default argument for template parameter in function > template `CryptoPP::SecBlockWithHint::SecBlockWithHint(unsigned int)' > secblock.h: In method > `CryptoPP::SecBlockWithHint::SecBlockWithHint(unsigned int)': > secblock.h:471: expected 2 levels of template parms for > `CryptoPP::SecBlockWithHint::SecBlockWithHint(unsigned int)', got 1 > In file included from 3way.cpp:5: > 3way.h: At top level: > 3way.h:10: confused by earlier errors, bailing out > make: *** [3way.o] Error 1 > > Has anybody else been successful in porting to QNX and know what build > options need to be provided to get cryptopp to build? > > Thanks, > -Aaron --~--~---------~--~----~------------~-------~--~----~ 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. -~----------~----~----~----~------~----~------~--~---
