#include
#include
#include
#include
#include
#include
#include
< /code>
Тогда я собрал его со следующей командой < /p>
g++-14 -std=c++17 DES_Encryption.cpp -o DES_Encryption -I/opt/homebrew/opt/cryptopp/include/cryptopp -L/opt/homebrew/opt/cryptopp/lib -lcryptopp
Undefined symbols for architecture arm64:
"CryptoPP::StringStore::TransferTo2(CryptoPP::BufferedTransformation&, unsigned long&, std::__cxx11::basic_string const&, bool)", referenced from:
CryptoPP::SourceTemplate::Pump2(unsigned long&, bool) in ccaoxnCJ.o
"CryptoPP::DEFAULT_CHANNEL[abi:cxx11]", referenced from:
CryptoPP::SourceTemplate::Pump2(unsigned long&, bool) in ccaoxnCJ.o
CryptoPP::SourceTemplate::PumpMessages2(unsigned int&, bool) in ccaoxnCJ.o
CryptoPP::SourceTemplate::PumpAll2(bool) in ccaoxnCJ.o
"CryptoPP::StringSinkTemplate::StringSinkTemplate(std::__cxx11::basic_string&)", referenced from:
LibraryDES() in ccaoxnCJ.o
LibraryDES() in ccaoxnCJ.o
"CryptoPP::BufferedTransformation::ChannelFlush(std::__cxx11::basic_string const&, bool, int, bool)", referenced from:
vtable for CryptoPP::StringSource in ccaoxnCJ.o
vtable for CryptoPP::SourceTemplate in ccaoxnCJ.o
vtable for CryptoPP::InputRejecting in ccaoxnCJ.o
vtable for CryptoPP::AutoSignaling in ccaoxnCJ.o
vtable for CryptoPP::InputRejecting in ccaoxnCJ.o
"CryptoPP::BufferedTransformation::TransferAllTo2(CryptoPP::BufferedTransformation&, std::__cxx11::basic_string const&, bool)", referenced from:
CryptoPP::SourceTemplate::PumpAll2(bool) in ccaoxnCJ.o
"CryptoPP::BufferedTransformation::SetRetrievalChannel(std::__cxx11::basic_string const&)", referenced from:
vtable for CryptoPP::StringSource in ccaoxnCJ.o
vtable for CryptoPP::SourceTemplate in ccaoxnCJ.o
vtable for CryptoPP::InputRejecting in ccaoxnCJ.o
vtable for CryptoPP::AutoSignaling in ccaoxnCJ.o
vtable for CryptoPP::InputRejecting in ccaoxnCJ.o
"CryptoPP::BufferedTransformation::TransferMessagesTo2(CryptoPP::BufferedTransformation&, unsigned int&, std::__cxx11::basic_string const&, bool)", referenced from:
CryptoPP::SourceTemplate::PumpMessages2(unsigned int&, bool) in ccaoxnCJ.o
"CryptoPP::BufferedTransformation::ChannelCreatePutSpace(std::__cxx11::basic_string const&, unsigned long&)", referenced from:
vtable for CryptoPP::StringSource in ccaoxnCJ.o
vtable for CryptoPP::SourceTemplate in ccaoxnCJ.o
vtable for CryptoPP::InputRejecting in ccaoxnCJ.o
vtable for CryptoPP::AutoSignaling in ccaoxnCJ.o
vtable for CryptoPP::InputRejecting in ccaoxnCJ.o
"CryptoPP::BufferedTransformation::ChannelPutModifiable2(std::__cxx11::basic_string const&, unsigned char*, unsigned long, int, bool)", referenced from:
vtable for CryptoPP::StringSource in ccaoxnCJ.o
vtable for CryptoPP::SourceTemplate in ccaoxnCJ.o
vtable for CryptoPP::InputRejecting in ccaoxnCJ.o
vtable for CryptoPP::AutoSignaling in ccaoxnCJ.o
vtable for CryptoPP::InputRejecting in ccaoxnCJ.o
"CryptoPP::Filter::TransferTo2(CryptoPP::BufferedTransformation&, unsigned long&, std::__cxx11::basic_string const&, bool)", referenced from:
vtable for CryptoPP::StringSource in ccaoxnCJ.o
vtable for CryptoPP::SourceTemplate in ccaoxnCJ.o
vtable for CryptoPP::InputRejecting in ccaoxnCJ.o
"CryptoPP::Filter::CopyRangeTo2(CryptoPP::BufferedTransformation&, unsigned long&, unsigned long, std::__cxx11::basic_string const&, bool) const", referenced from:
vtable for CryptoPP::StringSource in ccaoxnCJ.o
vtable for CryptoPP::SourceTemplate in ccaoxnCJ.o
vtable for CryptoPP::InputRejecting in ccaoxnCJ.o
ld: symbol(s) not found for architecture arm64
collect2: error: ld returned 1 exit status
Я пишу код, чтобы самостоятельно реализовать алгоритм шифрования DES и сравнить его с фактической библиотекой. < /p> [code]brew install cryptopp[/code] Я установил библиотеку с приведенной выше командой, и она расположена в пути/opt/homebrew/opt/cryptopp на моем Mac.[code]#include #include #include #include #include #include #include < /code> Тогда я собрал его со следующей командой < /p> g++-14 -std=c++17 DES_Encryption.cpp -o DES_Encryption -I/opt/homebrew/opt/cryptopp/include/cryptopp -L/opt/homebrew/opt/cryptopp/lib -lcryptopp[/code] Я затем увидел следующий журнал [code]Undefined symbols for architecture arm64: "CryptoPP::StringStore::TransferTo2(CryptoPP::BufferedTransformation&, unsigned long&, std::__cxx11::basic_string const&, bool)", referenced from: CryptoPP::SourceTemplate::Pump2(unsigned long&, bool) in ccaoxnCJ.o "CryptoPP::DEFAULT_CHANNEL[abi:cxx11]", referenced from: CryptoPP::SourceTemplate::Pump2(unsigned long&, bool) in ccaoxnCJ.o CryptoPP::SourceTemplate::PumpMessages2(unsigned int&, bool) in ccaoxnCJ.o CryptoPP::SourceTemplate::PumpAll2(bool) in ccaoxnCJ.o "CryptoPP::StringSinkTemplate::StringSinkTemplate(std::__cxx11::basic_string&)", referenced from: LibraryDES() in ccaoxnCJ.o LibraryDES() in ccaoxnCJ.o "CryptoPP::BufferedTransformation::ChannelFlush(std::__cxx11::basic_string const&, bool, int, bool)", referenced from: vtable for CryptoPP::StringSource in ccaoxnCJ.o vtable for CryptoPP::SourceTemplate in ccaoxnCJ.o vtable for CryptoPP::InputRejecting in ccaoxnCJ.o vtable for CryptoPP::AutoSignaling in ccaoxnCJ.o vtable for CryptoPP::InputRejecting in ccaoxnCJ.o "CryptoPP::BufferedTransformation::TransferAllTo2(CryptoPP::BufferedTransformation&, std::__cxx11::basic_string const&, bool)", referenced from: CryptoPP::SourceTemplate::PumpAll2(bool) in ccaoxnCJ.o "CryptoPP::BufferedTransformation::SetRetrievalChannel(std::__cxx11::basic_string const&)", referenced from: vtable for CryptoPP::StringSource in ccaoxnCJ.o vtable for CryptoPP::SourceTemplate in ccaoxnCJ.o vtable for CryptoPP::InputRejecting in ccaoxnCJ.o vtable for CryptoPP::AutoSignaling in ccaoxnCJ.o vtable for CryptoPP::InputRejecting in ccaoxnCJ.o "CryptoPP::BufferedTransformation::TransferMessagesTo2(CryptoPP::BufferedTransformation&, unsigned int&, std::__cxx11::basic_string const&, bool)", referenced from: CryptoPP::SourceTemplate::PumpMessages2(unsigned int&, bool) in ccaoxnCJ.o "CryptoPP::BufferedTransformation::ChannelCreatePutSpace(std::__cxx11::basic_string const&, unsigned long&)", referenced from: vtable for CryptoPP::StringSource in ccaoxnCJ.o vtable for CryptoPP::SourceTemplate in ccaoxnCJ.o vtable for CryptoPP::InputRejecting in ccaoxnCJ.o vtable for CryptoPP::AutoSignaling in ccaoxnCJ.o vtable for CryptoPP::InputRejecting in ccaoxnCJ.o "CryptoPP::BufferedTransformation::ChannelPutModifiable2(std::__cxx11::basic_string const&, unsigned char*, unsigned long, int, bool)", referenced from: vtable for CryptoPP::StringSource in ccaoxnCJ.o vtable for CryptoPP::SourceTemplate in ccaoxnCJ.o vtable for CryptoPP::InputRejecting in ccaoxnCJ.o vtable for CryptoPP::AutoSignaling in ccaoxnCJ.o vtable for CryptoPP::InputRejecting in ccaoxnCJ.o "CryptoPP::Filter::TransferTo2(CryptoPP::BufferedTransformation&, unsigned long&, std::__cxx11::basic_string const&, bool)", referenced from: vtable for CryptoPP::StringSource in ccaoxnCJ.o vtable for CryptoPP::SourceTemplate in ccaoxnCJ.o vtable for CryptoPP::InputRejecting in ccaoxnCJ.o "CryptoPP::Filter::CopyRangeTo2(CryptoPP::BufferedTransformation&, unsigned long&, unsigned long, std::__cxx11::basic_string const&, bool) const", referenced from: vtable for CryptoPP::StringSource in ccaoxnCJ.o vtable for CryptoPP::SourceTemplate in ccaoxnCJ.o vtable for CryptoPP::InputRejecting in ccaoxnCJ.o ld: symbol(s) not found for architecture arm64 collect2: error: ld returned 1 exit status [/code] Дайте мне знать, что не так !!!>