Open
Description
您好,
我在 Arch Linux 上,部分软件(库)版本如下:
cmake 4.0.0
make 4.4.1
asio 1.34.0
botan 3.7.1
克隆仓库并 cmake
没有问题,但是 make
会有报错,判断可能是 asio
和 botan
库版本更新更改了部分函数导致,经过修改后,在 make
的 link
阶段会报错:
/usr/bin/ld: /tmp/cccNnIcH.ltrans12.ltrans.o: in function `aes_256_gcm::set_key(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
/usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:250:(.text+0x83e0): undefined reference to `Botan::HashFunction::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:256:(.text+0x8652): undefined reference to `Botan::AEAD_Mode::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Botan::Cipher_Dir, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:257:(.text+0x86de): undefined reference to `Botan::AEAD_Mode::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Botan::Cipher_Dir, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:259:(.text+0x8747): undefined reference to `Botan::SymmetricAlgorithm::set_key(unsigned char const*, unsigned long)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:262:(.text+0x8776): undefined reference to `Botan::SymmetricAlgorithm::set_key(unsigned char const*, unsigned long)'
/usr/bin/ld: /tmp/cccNnIcH.ltrans12.ltrans.o: in function `aes_256_ocb::set_key(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
/usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:327:(.text+0x8efa): undefined reference to `Botan::HashFunction::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:331:(.text+0x8fbe): undefined reference to `Botan::HashFunction::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:344:(.text+0x93b9): undefined reference to `Botan::AEAD_Mode::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Botan::Cipher_Dir, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:345:(.text+0x944e): undefined reference to `Botan::AEAD_Mode::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Botan::Cipher_Dir, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:347:(.text+0x94b9): undefined reference to `Botan::SymmetricAlgorithm::set_key(unsigned char const*, unsigned long)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:350:(.text+0x94e8): undefined reference to `Botan::SymmetricAlgorithm::set_key(unsigned char const*, unsigned long)'
/usr/bin/ld: /tmp/cccNnIcH.ltrans12.ltrans.o: in function `chacha20::set_key(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
/usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:415:(.text+0x9b46): undefined reference to `Botan::HashFunction::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:429:(.text+0x9f56): undefined reference to `Botan::AEAD_Mode::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Botan::Cipher_Dir, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:430:(.text+0x9fe8): undefined reference to `Botan::AEAD_Mode::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Botan::Cipher_Dir, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:432:(.text+0xa053): undefined reference to `Botan::SymmetricAlgorithm::set_key(unsigned char const*, unsigned long)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:435:(.text+0xa082): undefined reference to `Botan::SymmetricAlgorithm::set_key(unsigned char const*, unsigned long)'
/usr/bin/ld: /tmp/cccNnIcH.ltrans12.ltrans.o: in function `xchacha20::set_key(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
/usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:498:(.text+0xa654): undefined reference to `Botan::HashFunction::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:502:(.text+0xa727): undefined reference to `Botan::HashFunction::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:507:(.text+0xa97e): undefined reference to `Botan::AEAD_Mode::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Botan::Cipher_Dir, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:508:(.text+0xaa13): undefined reference to `Botan::AEAD_Mode::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Botan::Cipher_Dir, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:510:(.text+0xaa7f): undefined reference to `Botan::SymmetricAlgorithm::set_key(unsigned char const*, unsigned long)'
/usr/bin/ld: /usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:513:(.text+0xaaae): undefined reference to `Botan::SymmetricAlgorithm::set_key(unsigned char const*, unsigned long)'
/usr/bin/ld: /tmp/cccNnIcH.ltrans12.ltrans.o: in function `encryption_base::decrypt[abi:cxx11](unsigned char const*, unsigned long, unsigned char*, unsigned long&) [clone .cold]':
/usr/src/debug/kcptube/kcptube-0.7.2/src/shares/aead.hpp:229:(.text.unlikely+0xe32): undefined reference to `Botan::SymmetricAlgorithm::set_key(unsigned char const*, unsigned long)'
/usr/bin/ld: /tmp/cccNnIcH.ltrans13.ltrans.o: in function `simple_hashing::simple_hashing()':
/usr/src/debug/kcptube/kcptube-0.7.2/src/shares/simple_hashing.hpp:10:(.text+0x93): undefined reference to `Botan::HashFunction::create(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/kcptube.dir/build.make:107: kcptube] Error 1
make[1]: *** [CMakeFiles/Makefile2:200: CMakeFiles/kcptube.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
由于没有 C++ 经验,我无法解决这些问题,请问您发布的预构建二进制包的构建环境如何?
如果需要,我可以提供更多信息。
Metadata
Metadata
Assignees
Labels
No labels