dang, I should have seen that - a latter reference has the ::Weak:: added
to it for the hash line.
Sadly, this seems to make g++ throw out a whole HECK of a lot of errors
which I have not seen before, I don't know if this is due to something
funky with my install of libcrypto++ or something more sinister.
Thanks again and sorry for taking so much of your time for something that
i'm guessing should be trivial.
~Leigh
$ g++ -std=c++11 -I/usr/local/include -lcrypto++ cpp-md5sum.cpp -o
cpp-md5sum
/tmp/cceD1hXk.o: In function `main':
cpp-md5sum.cpp:(.text+0x332): undefined reference to
`CryptoPP::StringSinkTemplate<std::string>::StringSinkTemplate(std::string&)'
cpp-md5sum.cpp:(.text+0x344): undefined reference to
`CryptoPP::BufferedTransformation::Attach(CryptoPP::BufferedTransformation*)'
/tmp/cceD1hXk.o: In function
`CryptoPP::BufferedTransformation::~BufferedTransformation()':
cpp-md5sum.cpp:(.text._ZN8CryptoPP22BufferedTransformationD2Ev[_ZN8CryptoPP22BufferedTransformationD5Ev]+0x13):
undefined reference to `vtable for CryptoPP::BufferedTransformation'
cpp-md5sum.cpp:(.text._ZN8CryptoPP22BufferedTransformationD2Ev[_ZN8CryptoPP22BufferedTransformationD5Ev]+0x1f):
undefined reference to `vtable for CryptoPP::BufferedTransformation'
/tmp/cceD1hXk.o: In function `CryptoPP::Filter::~Filter()':
cpp-md5sum.cpp:(.text._ZN8CryptoPP6FilterD2Ev[_ZN8CryptoPP6FilterD5Ev]+0x13):
undefined reference to `vtable for CryptoPP::Filter'
cpp-md5sum.cpp:(.text._ZN8CryptoPP6FilterD2Ev[_ZN8CryptoPP6FilterD5Ev]+0x1f):
undefined reference to `vtable for CryptoPP::Filter'
/tmp/cceD1hXk.o: In function
`CryptoPP::Bufferless<CryptoPP::Filter>::Bufferless()':
cpp-md5sum.cpp:(.text._ZN8CryptoPP10BufferlessINS_6FilterEEC2Ev[_ZN8CryptoPP10BufferlessINS_6FilterEEC5Ev]+0x19):
undefined reference to
`CryptoPP::Filter::Filter(CryptoPP::BufferedTransformation*)'
/tmp/cceD1hXk.o: In function
`CryptoPP::FilterWithBufferedInput::Put2(unsigned char const*, unsigned
long, int, bool)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP23FilterWithBufferedInput4Put2EPKhmib[_ZN8CryptoPP23FilterWithBufferedInput4Put2EPKhmib]+0x3d):
undefined reference to
`CryptoPP::FilterWithBufferedInput::PutMaybeModifiable(unsigned char*,
unsigned long, int, bool, bool)'
/tmp/cceD1hXk.o: In function
`CryptoPP::FilterWithBufferedInput::PutModifiable2(unsigned char*, unsigned
long, int, bool)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP23FilterWithBufferedInput14PutModifiable2EPhmib[_ZN8CryptoPP23FilterWithBufferedInput14PutModifiable2EPhmib]+0x3d):
undefined reference to
`CryptoPP::FilterWithBufferedInput::PutMaybeModifiable(unsigned char*,
unsigned long, int, bool, bool)'
/tmp/cceD1hXk.o: In function
`CryptoPP::Unflushable<CryptoPP::Filter>::Unflushable()':
cpp-md5sum.cpp:(.text._ZN8CryptoPP11UnflushableINS_6FilterEEC2Ev[_ZN8CryptoPP11UnflushableINS_6FilterEEC5Ev]+0x19):
undefined reference to
`CryptoPP::Filter::Filter(CryptoPP::BufferedTransformation*)'
/tmp/cceD1hXk.o: In function
`CryptoPP::FilterWithBufferedInput::~FilterWithBufferedInput()':
cpp-md5sum.cpp:(.text._ZN8CryptoPP23FilterWithBufferedInputD2Ev[_ZN8CryptoPP23FilterWithBufferedInputD5Ev]+0x13):
undefined reference to `vtable for CryptoPP::FilterWithBufferedInput'
cpp-md5sum.cpp:(.text._ZN8CryptoPP23FilterWithBufferedInputD2Ev[_ZN8CryptoPP23FilterWithBufferedInputD5Ev]+0x1f):
undefined reference to `vtable for CryptoPP::FilterWithBufferedInput'
/tmp/cceD1hXk.o: In function `CryptoPP::ProxyFilter::~ProxyFilter()':
cpp-md5sum.cpp:(.text._ZN8CryptoPP11ProxyFilterD2Ev[_ZN8CryptoPP11ProxyFilterD5Ev]+0x13):
undefined reference to `vtable for CryptoPP::ProxyFilter'
cpp-md5sum.cpp:(.text._ZN8CryptoPP11ProxyFilterD2Ev[_ZN8CryptoPP11ProxyFilterD5Ev]+0x1f):
undefined reference to `vtable for CryptoPP::ProxyFilter'
/tmp/cceD1hXk.o: In function
`CryptoPP::SimpleProxyFilter::SimpleProxyFilter(CryptoPP::BufferedTransformation*,
CryptoPP::BufferedTransformation*)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP17SimpleProxyFilterC2EPNS_22BufferedTransformationES2_[_ZN8CryptoPP17SimpleProxyFilterC5EPNS_22BufferedTransformationES2_]+0x31):
undefined reference to
`CryptoPP::ProxyFilter::ProxyFilter(CryptoPP::BufferedTransformation*,
unsigned long, unsigned long, CryptoPP::BufferedTransformation*)'
/tmp/cceD1hXk.o: In function
`CryptoPP::BaseN_Encoder::BaseN_Encoder(CryptoPP::BufferedTransformation*)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP13BaseN_EncoderC2EPNS_22BufferedTransformationE[_ZN8CryptoPP13BaseN_EncoderC5EPNS_22BufferedTransformationE]+0x24):
undefined reference to `vtable for CryptoPP::BaseN_Encoder'
cpp-md5sum.cpp:(.text._ZN8CryptoPP13BaseN_EncoderC2EPNS_22BufferedTransformationE[_ZN8CryptoPP13BaseN_EncoderC5EPNS_22BufferedTransformationE]+0x30):
undefined reference to `vtable for CryptoPP::BaseN_Encoder'
cpp-md5sum.cpp:(.text._ZN8CryptoPP13BaseN_EncoderC2EPNS_22BufferedTransformationE[_ZN8CryptoPP13BaseN_EncoderC5EPNS_22BufferedTransformationE]+0x58):
undefined reference to
`CryptoPP::Filter::Detach(CryptoPP::BufferedTransformation*)'
/tmp/cceD1hXk.o: In function
`CryptoPP::Grouper::Grouper(CryptoPP::BufferedTransformation*)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP7GrouperC2EPNS_22BufferedTransformationE[_ZN8CryptoPP7GrouperC5EPNS_22BufferedTransformationE]+0x24):
undefined reference to `vtable for CryptoPP::Grouper'
cpp-md5sum.cpp:(.text._ZN8CryptoPP7GrouperC2EPNS_22BufferedTransformationE[_ZN8CryptoPP7GrouperC5EPNS_22BufferedTransformationE]+0x30):
undefined reference to `vtable for CryptoPP::Grouper'
cpp-md5sum.cpp:(.text._ZN8CryptoPP7GrouperC2EPNS_22BufferedTransformationE[_ZN8CryptoPP7GrouperC5EPNS_22BufferedTransformationE]+0x6d):
undefined reference to
`CryptoPP::Filter::Detach(CryptoPP::BufferedTransformation*)'
/tmp/cceD1hXk.o: In function
`CryptoPP::HexEncoder::HexEncoder(CryptoPP::BufferedTransformation*, bool,
int, std::string const&, std::string const&)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP10HexEncoderC2EPNS_22BufferedTransformationEbiRKSsS4_[_ZN8CryptoPP10HexEncoderC5EPNS_22BufferedTransformationEbiRKSsS4_]+0x92):
undefined reference to `vtable for CryptoPP::HexEncoder'
cpp-md5sum.cpp:(.text._ZN8CryptoPP10HexEncoderC2EPNS_22BufferedTransformationEbiRKSsS4_[_ZN8CryptoPP10HexEncoderC5EPNS_22BufferedTransformationEbiRKSsS4_]+0xa1):
undefined reference to `vtable for CryptoPP::HexEncoder'
cpp-md5sum.cpp:(.text._ZN8CryptoPP10HexEncoderC2EPNS_22BufferedTransformationEbiRKSsS4_[_ZN8CryptoPP10HexEncoderC5EPNS_22BufferedTransformationEbiRKSsS4_]+0x15e):
undefined reference to
`CryptoPP::HexEncoder::IsolatedInitialize(CryptoPP::NameValuePairs const&)'
/tmp/cceD1hXk.o: In function
`CryptoPP::HashTransformation::~HashTransformation()':
cpp-md5sum.cpp:(.text._ZN8CryptoPP18HashTransformationD2Ev[_ZN8CryptoPP18HashTransformationD5Ev]+0x13):
undefined reference to `vtable for CryptoPP::HashTransformation'
/tmp/cceD1hXk.o: In function `CryptoPP::SecBlock<unsigned char,
CryptoPP::AllocatorWithCleanup<unsigned char, false> >::SecBlock(unsigned
long)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP8SecBlockIhNS_20AllocatorWithCleanupIhLb0EEEEC2Em[_ZN8CryptoPP8SecBlockIhNS_20AllocatorWithCleanupIhLb0EEEEC5Em]+0x30):
undefined reference to `CryptoPP::AllocatorWithCleanup<unsigned char,
false>::allocate(unsigned long, void const*)'
/tmp/cceD1hXk.o: In function `CryptoPP::SecBlock<unsigned char,
CryptoPP::AllocatorWithCleanup<unsigned char, false> >::~SecBlock()':
cpp-md5sum.cpp:(.text._ZN8CryptoPP8SecBlockIhNS_20AllocatorWithCleanupIhLb0EEEED2Ev[_ZN8CryptoPP8SecBlockIhNS_20AllocatorWithCleanupIhLb0EEEED5Ev]+0x27):
undefined reference to `CryptoPP::AllocatorWithCleanup<unsigned char,
false>::deallocate(void*, unsigned long)'
/tmp/cceD1hXk.o: In function `CryptoPP::SecBlock<unsigned char,
CryptoPP::AllocatorWithCleanup<unsigned char, false> >::New(unsigned long)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP8SecBlockIhNS_20AllocatorWithCleanupIhLb0EEEE3NewEm[_ZN8CryptoPP8SecBlockIhNS_20AllocatorWithCleanupIhLb0EEEE3NewEm]+0x32):
undefined reference to `CryptoPP::AllocatorWithCleanup<unsigned char,
false>::reallocate(unsigned char*, unsigned long, unsigned long, bool)'
/tmp/cceD1hXk.o: In function `CryptoPP::AlgorithmParameters
CryptoPP::MakeParameters<bool>(char const*, bool const&, bool)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP14MakeParametersIbEENS_19AlgorithmParametersEPKcRKT_b[_ZN8CryptoPP14MakeParametersIbEENS_19AlgorithmParametersEPKcRKT_b]+0x26):
undefined reference to
`CryptoPP::AlgorithmParameters::AlgorithmParameters()'
cpp-md5sum.cpp:(.text._ZN8CryptoPP14MakeParametersIbEENS_19AlgorithmParametersEPKcRKT_b[_ZN8CryptoPP14MakeParametersIbEENS_19AlgorithmParametersEPKcRKT_b]+0x4e):
undefined reference to
`CryptoPP::AlgorithmParameters::AlgorithmParameters(CryptoPP::AlgorithmParameters
const&)'
/tmp/cceD1hXk.o: In function `CryptoPP::AlgorithmParameters&
CryptoPP::AlgorithmParameters::operator()<CryptoPP::ConstByteArrayParameter>(char
const*, CryptoPP::ConstByteArrayParameter const&, bool)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP19AlgorithmParametersclINS_23ConstByteArrayParameterEEERS0_PKcRKT_b[_ZN8CryptoPP19AlgorithmParametersclINS_23ConstByteArrayParameterEEERS0_PKcRKT_b]+0x3c):
undefined reference to
`CryptoPP::AlgorithmParametersTemplate<CryptoPP::ConstByteArrayParameter>::AlgorithmParametersTemplate(char
const*, CryptoPP::ConstByteArrayParameter const&, bool)'
/tmp/cceD1hXk.o: In function `CryptoPP::AlgorithmParameters&
CryptoPP::AlgorithmParameters::operator()<int>(char const*, int const&,
bool)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP19AlgorithmParametersclIiEERS0_PKcRKT_b[_ZN8CryptoPP19AlgorithmParametersclIiEERS0_PKcRKT_b]+0x3c):
undefined reference to
`CryptoPP::AlgorithmParametersTemplate<int>::AlgorithmParametersTemplate(char
const*, int const&, bool)'
/tmp/cceD1hXk.o: In function `CryptoPP::AlgorithmParameters&
CryptoPP::AlgorithmParameters::operator()<bool>(char const*, bool const&,
bool)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP19AlgorithmParametersclIbEERS0_PKcRKT_b[_ZN8CryptoPP19AlgorithmParametersclIbEERS0_PKcRKT_b]+0x3c):
undefined reference to
`CryptoPP::AlgorithmParametersTemplate<bool>::AlgorithmParametersTemplate(char
const*, bool const&, bool)'
/tmp/cceD1hXk.o: In function
`CryptoPP::HashTransformation::HashTransformation()':
cpp-md5sum.cpp:(.text._ZN8CryptoPP18HashTransformationC2Ev[_ZN8CryptoPP18HashTransformationC5Ev]+0x19):
undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
cpp-md5sum.cpp:(.text._ZN8CryptoPP18HashTransformationC2Ev[_ZN8CryptoPP18HashTransformationC5Ev]+0x24):
undefined reference to `vtable for CryptoPP::HashTransformation'
/tmp/cceD1hXk.o: In function
`CryptoPP::IteratedHashWithStaticTransform<unsigned int,
CryptoPP::EnumToType<CryptoPP::ByteOrder, 0>, 64u, 16u,
CryptoPP::Weak1::MD5, 0u, false>::Init()':
cpp-md5sum.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EE4InitEv[_ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EE4InitEv]+0x20):
undefined reference to `CryptoPP::Weak1::MD5::InitState(unsigned int*)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x50):
undefined reference to
`CryptoPP::BufferedTransformation::GetMaxWaitObjectCount() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x58):
undefined reference to
`CryptoPP::BufferedTransformation::GetWaitObjects(CryptoPP::WaitObjectContainer&,
CryptoPP::CallStack const&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x60):
undefined reference to
`CryptoPP::FilterWithBufferedInput::IsolatedInitialize(CryptoPP::NameValuePairs
const&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x68):
undefined reference to `CryptoPP::ProxyFilter::IsolatedFlush(bool, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x78):
undefined reference to
`CryptoPP::Filter::Initialize(CryptoPP::NameValuePairs const&, int)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x80):
undefined reference to `CryptoPP::Filter::Flush(bool, int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x88):
undefined reference to `CryptoPP::Filter::MessageSeriesEnd(int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0xa0):
undefined reference to `CryptoPP::BufferedTransformation::MaxRetrievable()
const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0xa8):
undefined reference to `CryptoPP::BufferedTransformation::AnyRetrievable()
const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0xb0):
undefined reference to `CryptoPP::BufferedTransformation::Get(unsigned
char&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0xb8):
undefined reference to `CryptoPP::BufferedTransformation::Get(unsigned
char*, unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0xc0):
undefined reference to `CryptoPP::BufferedTransformation::Peek(unsigned
char&) const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0xc8):
undefined reference to `CryptoPP::BufferedTransformation::Peek(unsigned
char*, unsigned long) const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0xd0):
undefined reference to `CryptoPP::BufferedTransformation::Skip(unsigned
long long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0xd8):
undefined reference to
`CryptoPP::BufferedTransformation::TotalBytesRetrievable() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0xe0):
undefined reference to
`CryptoPP::BufferedTransformation::NumberOfMessages() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0xe8):
undefined reference to `CryptoPP::BufferedTransformation::AnyMessages()
const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0xf0):
undefined reference to `CryptoPP::BufferedTransformation::GetNextMessage()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0xf8):
undefined reference to
`CryptoPP::BufferedTransformation::SkipMessages(unsigned int)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x100):
undefined reference to `CryptoPP::BufferedTransformation::SkipAll()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x120):
undefined reference to
`CryptoPP::Filter::TransferTo2(CryptoPP::BufferedTransformation&, unsigned
long long&, std::string const&, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x128):
undefined reference to
`CryptoPP::Filter::CopyRangeTo2(CryptoPP::BufferedTransformation&, unsigned
long long&, unsigned long long, std::string const&, bool) const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x130):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelCreatePutSpace(std::string
const&, unsigned long&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x138):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelPut2(std::string const&, unsigned
char const*, unsigned long, int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x140):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelPutModifiable2(std::string
const&, unsigned char*, unsigned long, int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x148):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelFlush(std::string const&, bool,
int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x150):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelMessageSeriesEnd(std::string
const&, int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x158):
undefined reference to
`CryptoPP::BufferedTransformation::SetRetrievalChannel(std::string const&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x168):
undefined reference to `CryptoPP::Filter::AttachedTransformation()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x170):
undefined reference to `CryptoPP::Filter::AttachedTransformation() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x178):
undefined reference to
`CryptoPP::Filter::Detach(CryptoPP::BufferedTransformation*)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x180):
undefined reference to
`CryptoPP::BufferedTransformation::Attach(CryptoPP::BufferedTransformation*)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x188):
undefined reference to `CryptoPP::Filter::NewDefaultAttachment() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x1c0):
undefined reference to `CryptoPP::ProxyFilter::NextPutMultiple(unsigned
char const*, unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x1c8):
undefined reference to `CryptoPP::ProxyFilter::NextPutModifiable(unsigned
char*, unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x208):
undefined reference to `non-virtual thunk to
CryptoPP::BufferedTransformation::GetMaxWaitObjectCount() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP17SimpleProxyFilterE[_ZTVN8CryptoPP17SimpleProxyFilterE]+0x210):
undefined reference to `non-virtual thunk to
CryptoPP::BufferedTransformation::GetWaitObjects(CryptoPP::WaitObjectContainer&,
CryptoPP::CallStack const&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x50):
undefined reference to
`CryptoPP::BufferedTransformation::GetMaxWaitObjectCount() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x58):
undefined reference to
`CryptoPP::BufferedTransformation::GetWaitObjects(CryptoPP::WaitObjectContainer&,
CryptoPP::CallStack const&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x78):
undefined reference to
`CryptoPP::Filter::Initialize(CryptoPP::NameValuePairs const&, int)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x88):
undefined reference to `CryptoPP::Filter::MessageSeriesEnd(int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0xa0):
undefined reference to `CryptoPP::BufferedTransformation::MaxRetrievable()
const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0xa8):
undefined reference to `CryptoPP::BufferedTransformation::AnyRetrievable()
const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0xb0):
undefined reference to `CryptoPP::BufferedTransformation::Get(unsigned
char&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0xb8):
undefined reference to `CryptoPP::BufferedTransformation::Get(unsigned
char*, unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0xc0):
undefined reference to `CryptoPP::BufferedTransformation::Peek(unsigned
char&) const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0xc8):
undefined reference to `CryptoPP::BufferedTransformation::Peek(unsigned
char*, unsigned long) const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0xd0):
undefined reference to `CryptoPP::BufferedTransformation::Skip(unsigned
long long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0xd8):
undefined reference to
`CryptoPP::BufferedTransformation::TotalBytesRetrievable() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0xe0):
undefined reference to
`CryptoPP::BufferedTransformation::NumberOfMessages() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0xe8):
undefined reference to `CryptoPP::BufferedTransformation::AnyMessages()
const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0xf0):
undefined reference to `CryptoPP::BufferedTransformation::GetNextMessage()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0xf8):
undefined reference to
`CryptoPP::BufferedTransformation::SkipMessages(unsigned int)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x100):
undefined reference to `CryptoPP::BufferedTransformation::SkipAll()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x120):
undefined reference to
`CryptoPP::Filter::TransferTo2(CryptoPP::BufferedTransformation&, unsigned
long long&, std::string const&, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x128):
undefined reference to
`CryptoPP::Filter::CopyRangeTo2(CryptoPP::BufferedTransformation&, unsigned
long long&, unsigned long long, std::string const&, bool) const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x130):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelCreatePutSpace(std::string
const&, unsigned long&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x138):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelPut2(std::string const&, unsigned
char const*, unsigned long, int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x140):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelPutModifiable2(std::string
const&, unsigned char*, unsigned long, int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x150):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelMessageSeriesEnd(std::string
const&, int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x158):
undefined reference to
`CryptoPP::BufferedTransformation::SetRetrievalChannel(std::string const&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x168):
undefined reference to `CryptoPP::Filter::AttachedTransformation()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x170):
undefined reference to `CryptoPP::Filter::AttachedTransformation() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x178):
undefined reference to
`CryptoPP::Filter::Detach(CryptoPP::BufferedTransformation*)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x180):
undefined reference to
`CryptoPP::BufferedTransformation::Attach(CryptoPP::BufferedTransformation*)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x188):
undefined reference to `CryptoPP::Filter::NewDefaultAttachment() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x1c8):
undefined reference to `non-virtual thunk to
CryptoPP::BufferedTransformation::GetMaxWaitObjectCount() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP11UnflushableINS_6FilterEEE[_ZTVN8CryptoPP11UnflushableINS_6FilterEEE]+0x1d0):
undefined reference to `non-virtual thunk to
CryptoPP::BufferedTransformation::GetWaitObjects(CryptoPP::WaitObjectContainer&,
CryptoPP::CallStack const&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x50):
undefined reference to
`CryptoPP::BufferedTransformation::GetMaxWaitObjectCount() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x58):
undefined reference to
`CryptoPP::BufferedTransformation::GetWaitObjects(CryptoPP::WaitObjectContainer&,
CryptoPP::CallStack const&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x78):
undefined reference to
`CryptoPP::Filter::Initialize(CryptoPP::NameValuePairs const&, int)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x80):
undefined reference to `CryptoPP::Filter::Flush(bool, int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x88):
undefined reference to `CryptoPP::Filter::MessageSeriesEnd(int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0xa0):
undefined reference to `CryptoPP::BufferedTransformation::MaxRetrievable()
const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0xa8):
undefined reference to `CryptoPP::BufferedTransformation::AnyRetrievable()
const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0xb0):
undefined reference to `CryptoPP::BufferedTransformation::Get(unsigned
char&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0xb8):
undefined reference to `CryptoPP::BufferedTransformation::Get(unsigned
char*, unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0xc0):
undefined reference to `CryptoPP::BufferedTransformation::Peek(unsigned
char&) const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0xc8):
undefined reference to `CryptoPP::BufferedTransformation::Peek(unsigned
char*, unsigned long) const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0xd0):
undefined reference to `CryptoPP::BufferedTransformation::Skip(unsigned
long long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0xd8):
undefined reference to
`CryptoPP::BufferedTransformation::TotalBytesRetrievable() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0xe0):
undefined reference to
`CryptoPP::BufferedTransformation::NumberOfMessages() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0xe8):
undefined reference to `CryptoPP::BufferedTransformation::AnyMessages()
const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0xf0):
undefined reference to `CryptoPP::BufferedTransformation::GetNextMessage()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0xf8):
undefined reference to
`CryptoPP::BufferedTransformation::SkipMessages(unsigned int)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x100):
undefined reference to `CryptoPP::BufferedTransformation::SkipAll()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x120):
undefined reference to
`CryptoPP::Filter::TransferTo2(CryptoPP::BufferedTransformation&, unsigned
long long&, std::string const&, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x128):
undefined reference to
`CryptoPP::Filter::CopyRangeTo2(CryptoPP::BufferedTransformation&, unsigned
long long&, unsigned long long, std::string const&, bool) const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x130):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelCreatePutSpace(std::string
const&, unsigned long&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x138):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelPut2(std::string const&, unsigned
char const*, unsigned long, int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x140):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelPutModifiable2(std::string
const&, unsigned char*, unsigned long, int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x148):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelFlush(std::string const&, bool,
int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x150):
undefined reference to
`CryptoPP::BufferedTransformation::ChannelMessageSeriesEnd(std::string
const&, int, bool)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x158):
undefined reference to
`CryptoPP::BufferedTransformation::SetRetrievalChannel(std::string const&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x168):
undefined reference to `CryptoPP::Filter::AttachedTransformation()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x170):
undefined reference to `CryptoPP::Filter::AttachedTransformation() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x178):
undefined reference to
`CryptoPP::Filter::Detach(CryptoPP::BufferedTransformation*)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x180):
undefined reference to
`CryptoPP::BufferedTransformation::Attach(CryptoPP::BufferedTransformation*)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x188):
undefined reference to `CryptoPP::Filter::NewDefaultAttachment() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x1c0):
undefined reference to `non-virtual thunk to
CryptoPP::BufferedTransformation::GetMaxWaitObjectCount() const'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP10BufferlessINS_6FilterEEE[_ZTVN8CryptoPP10BufferlessINS_6FilterEEE]+0x1c8):
undefined reference to `non-virtual thunk to
CryptoPP::BufferedTransformation::GetWaitObjects(CryptoPP::WaitObjectContainer&,
CryptoPP::CallStack const&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP5Weak13MD5E[_ZTVN8CryptoPP5Weak13MD5E]+0x30):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::Update(unsigned char const*, unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP5Weak13MD5E[_ZTVN8CryptoPP5Weak13MD5E]+0x38):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::CreateUpdateSpace(unsigned long&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP5Weak13MD5E[_ZTVN8CryptoPP5Weak13MD5E]+0x48):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::Restart()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP5Weak13MD5E[_ZTVN8CryptoPP5Weak13MD5E]+0x88):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::TruncatedFinal(unsigned char*, unsigned
long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP5Weak13MD5E[_ZTVN8CryptoPP5Weak13MD5E]+0x98):
undefined reference to
`CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*,
unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP5Weak13MD5E[_ZTVN8CryptoPP5Weak13MD5E]+0xc0):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::HashMultipleBlocks(unsigned int const*,
unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EEE]+0x30):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::Update(unsigned char const*, unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EEE]+0x38):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::CreateUpdateSpace(unsigned long&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EEE]+0x48):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::Restart()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EEE]+0x88):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::TruncatedFinal(unsigned char*, unsigned
long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EEE]+0x98):
undefined reference to
`CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*,
unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EEE]+0xc0):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::HashMultipleBlocks(unsigned int const*,
unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP12ClonableImplINS_5Weak13MD5ENS_13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEES2_EEEE[_ZTVN8CryptoPP12ClonableImplINS_5Weak13MD5ENS_13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEES2_EEEE]+0x30):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::Update(unsigned char const*, unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP12ClonableImplINS_5Weak13MD5ENS_13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEES2_EEEE[_ZTVN8CryptoPP12ClonableImplINS_5Weak13MD5ENS_13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEES2_EEEE]+0x38):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::CreateUpdateSpace(unsigned long&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP12ClonableImplINS_5Weak13MD5ENS_13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEES2_EEEE[_ZTVN8CryptoPP12ClonableImplINS_5Weak13MD5ENS_13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEES2_EEEE]+0x48):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::Restart()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP12ClonableImplINS_5Weak13MD5ENS_13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEES2_EEEE[_ZTVN8CryptoPP12ClonableImplINS_5Weak13MD5ENS_13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEES2_EEEE]+0x88):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::TruncatedFinal(unsigned char*, unsigned
long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP12ClonableImplINS_5Weak13MD5ENS_13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEES2_EEEE[_ZTVN8CryptoPP12ClonableImplINS_5Weak13MD5ENS_13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEES2_EEEE]+0x98):
undefined reference to
`CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*,
unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP12ClonableImplINS_5Weak13MD5ENS_13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEES2_EEEE[_ZTVN8CryptoPP12ClonableImplINS_5Weak13MD5ENS_13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEES2_EEEE]+0xc0):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::HashMultipleBlocks(unsigned int const*,
unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEENS_5Weak13MD5EEE[_ZTVN8CryptoPP13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEENS_5Weak13MD5EEE]+0x30):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::Update(unsigned char const*, unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEENS_5Weak13MD5EEE[_ZTVN8CryptoPP13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEENS_5Weak13MD5EEE]+0x38):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::CreateUpdateSpace(unsigned long&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEENS_5Weak13MD5EEE[_ZTVN8CryptoPP13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEENS_5Weak13MD5EEE]+0x48):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::Restart()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEENS_5Weak13MD5EEE[_ZTVN8CryptoPP13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEENS_5Weak13MD5EEE]+0x88):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::TruncatedFinal(unsigned char*, unsigned
long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEENS_5Weak13MD5EEE[_ZTVN8CryptoPP13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEENS_5Weak13MD5EEE]+0x98):
undefined reference to
`CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*,
unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEENS_5Weak13MD5EEE[_ZTVN8CryptoPP13AlgorithmImplINS_12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEENS_5Weak13MD5EEE]+0xc0):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::HashMultipleBlocks(unsigned int const*,
unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEE]+0x30):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::Update(unsigned char const*, unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEE]+0x38):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::CreateUpdateSpace(unsigned long&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEE]+0x48):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::Restart()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEE]+0x88):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::TruncatedFinal(unsigned char*, unsigned
long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEE]+0x98):
undefined reference to
`CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*,
unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ENS_18HashTransformationEEE]+0xc0):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::HashMultipleBlocks(unsigned int const*,
unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE[_ZTVN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE]+0x30):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::Update(unsigned char const*, unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE[_ZTVN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE]+0x38):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::CreateUpdateSpace(unsigned long&)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE[_ZTVN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE]+0x48):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::Restart()'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE[_ZTVN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE]+0x88):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::TruncatedFinal(unsigned char*, unsigned
long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE[_ZTVN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE]+0x98):
undefined reference to
`CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*,
unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTVN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE[_ZTVN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE]+0xc0):
undefined reference to `CryptoPP::IteratedHashBase<unsigned int,
CryptoPP::HashTransformation>::HashMultipleBlocks(unsigned int const*,
unsigned long)'
/tmp/cceD1hXk.o:(.rodata._ZTIN8CryptoPP17SimpleProxyFilterE[_ZTIN8CryptoPP17SimpleProxyFilterE]+0x10):
undefined reference to `typeinfo for CryptoPP::ProxyFilter'
/tmp/cceD1hXk.o:(.rodata._ZTIN8CryptoPP11UnflushableINS_6FilterEEE[_ZTIN8CryptoPP11UnflushableINS_6FilterEEE]+0x10):
undefined reference to `typeinfo for CryptoPP::Filter'
/tmp/cceD1hXk.o:(.rodata._ZTIN8CryptoPP10BufferlessINS_6FilterEEE[_ZTIN8CryptoPP10BufferlessINS_6FilterEEE]+0x10):
undefined reference to `typeinfo for CryptoPP::Filter'
/tmp/cceD1hXk.o:(.rodata._ZTIN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE[_ZTIN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE]+0x10):
undefined reference to `typeinfo for CryptoPP::HashTransformation'
/tmp/cceD1hXk.o: In function
`CryptoPP::AlgorithmParameters::~AlgorithmParameters()':
cpp-md5sum.cpp:(.text._ZN8CryptoPP19AlgorithmParametersD2Ev[_ZN8CryptoPP19AlgorithmParametersD5Ev]+0x13):
undefined reference to `vtable for CryptoPP::AlgorithmParameters'
/tmp/cceD1hXk.o: In function `CryptoPP::HexEncoder::~HexEncoder()':
cpp-md5sum.cpp:(.text._ZN8CryptoPP10HexEncoderD2Ev[_ZN8CryptoPP10HexEncoderD5Ev]+0x13):
undefined reference to `vtable for CryptoPP::HexEncoder'
cpp-md5sum.cpp:(.text._ZN8CryptoPP10HexEncoderD2Ev[_ZN8CryptoPP10HexEncoderD5Ev]+0x1f):
undefined reference to `vtable for CryptoPP::HexEncoder'
/tmp/cceD1hXk.o: In function
`CryptoPP::Unflushable<CryptoPP::Filter>::Flush(bool, int, bool)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP11UnflushableINS_6FilterEE5FlushEbib[_ZN8CryptoPP11UnflushableINS_6FilterEE5FlushEbib]+0x3b):
undefined reference to `CryptoPP::DEFAULT_CHANNEL'
/tmp/cceD1hXk.o: In function
`CryptoPP::HashTransformation::HashTransformation(CryptoPP::HashTransformation
const&)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP18HashTransformationC2ERKS0_[_ZN8CryptoPP18HashTransformationC5ERKS0_]+0x2a):
undefined reference to `vtable for CryptoPP::HashTransformation'
/tmp/cceD1hXk.o: In function
`CryptoPP::IteratedHashWithStaticTransform<unsigned int,
CryptoPP::EnumToType<CryptoPP::ByteOrder, 0>, 64u, 16u,
CryptoPP::Weak1::MD5, 0u, false>::HashEndianCorrectedBlock(unsigned int
const*)':
cpp-md5sum.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EE24HashEndianCorrectedBlockEPKj[_ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi0EEELj64ELj16ENS_5Weak13MD5ELj0ELb0EE24HashEndianCorrectedBlockEPKj]+0x2b):
undefined reference to `CryptoPP::Weak1::MD5::Transform(unsigned int*,
unsigned int const*)'
collect2: error: ld returned 1 exit status
On Tuesday, April 5, 2016 at 9:58:14 PM UTC-7, Jeffrey Walton wrote:
>
>
>
> On Wednesday, April 6, 2016 at 12:55:17 AM UTC-4, Leighb2282 wrote:
>>
>> Hi Jeff,
>>
>> Thanks for taking the time to reply, unfortunately, the linked wiki
>> article seems to be incomplete (you would need to include hex.h for
>> HexEncoder or else you get g++ complaining about HexEncoder not being a
>> member of CryptoPP)
>>
>> Even after adding that header to the code it still gives a compile error
>> complaning that CryptoPP::MD5 has not been declared.
>>
>> As before here is the code I tried (pretty much a copy of the code from
>> that wiki + some slight additions (iostream, hex.h, stream)
>>
>> Many thanks again!
>>
>> ~Leigh
>>
>> #include <iostream>
>> #include <string>
>>
>> #define CRYPTOPP_ENABLE_NAMESPACE_WEAK 1
>>
>> #include <crypto++/md5.h>
>> #include <crypto++/hex.h>
>> int main()
>> {
>>
>> byte digest[ CryptoPP::MD5::DIGESTSIZE ];
>> std::string message = "foobarbat";
>>
>> CryptoPP::Weak::MD5 hash;
>> hash.CalculateDigest( digest, (byte*) message.c_str(),
>> message.length() );
>>
>> CryptoPP::HexEncoder encoder;
>> std::string output;
>>
>> encoder.Attach( new CryptoPP::StringSink( output ) );
>> encoder.Put( digest, sizeof(digest) );
>> encoder.MessageEnd();
>>
>> return 0;
>> }
>>
>> and I tried to compile it using this command
>>
>> g++ -std=c++11 -I/usr/local/include -lcrypto++ cpp-md5sum.cpp -o
>> cpp-md5sum
>>
>> getting the error:
>>
>> $ g++ -std=c++11 -I/usr/local/include -lcrypto++ cpp-md5sum.cpp -o
>> cpp-md5sum
>> cpp-md5sum.cpp: In function ‘int main()’:
>> cpp-md5sum.cpp:11:28: error: ‘CryptoPP::MD5’ has not been declared
>> byte digest[ CryptoPP::MD5::DIGESTSIZE ];
>> ^
>> cpp-md5sum.cpp:15:27: error: ‘digest’ was not declared in this scope
>> hash.CalculateDigest( digest, (byte*) message.c_str(),
>> message.length() );
>>
>>
> Change this:
>
> CryptoPP::MD5::DIGESTSIZE
>
> To this:
>
> CryptoPP::Weak::MD5::DIGESTSIZE
>
> Jeff
>
--
--
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.
---
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 [email protected].
For more options, visit https://groups.google.com/d/optout.