I am using Kernel: 6.1.41-1-MANJARO. When compiling this version, I failed to compile and got navicat-patcher instead of navicat-keygen.
The compiled error message is as follows:
[100%] Built target bundling_target
In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:4,
from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:1:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:24:28: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:24:35: 错误:模板第 1 个参数无效 24 | static std::vector decode(std::string_view b32_string);
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:24:35: 错误:模板第 2 个参数无效In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:4,
from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:1:
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:6:1: 附注:‘intptr_t’ is defined in header ‘’; did you forget to ‘#include ’?
5 | #include <utility>
+++ |+#include
6 |
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:58: 错误:‘uint8_t’ is not a member of ‘std’; did you mean ‘wint_t’?
11 | static std::string encode(const std::vectorstd::uint8_t& data);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp: In static member function ‘static std::string nkg::base32_rfc4648::encode(const void, size_t)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 错误:ISO C++ 不允许声明无类型的‘type name’ [-fpermissive]
34 | auto p = reinterpret_cast<const uint8_t>(data_ptr);
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 错误:expected ‘>’ before ‘uint8_t’
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 错误:expected ‘(’ before ‘uint8_t’
34 | auto p = reinterpret_cast(data_ptr);
| ^~~~~~~
| (
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 错误:‘uint8_t’在此作用域中尚未声明 34 | auto p = reinterpret_cast(data_ptr);
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:53: 错误:expected primary-expression before ‘>’ token
34 | auto p = reinterpret_cast(data_ptr);
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:64: 错误:expected ‘)’ before ‘;’ token
34 | auto p = reinterpret_cast(data_ptr);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:76:17: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:76:24: 错误:模板第 1 个参数无效 76 | std::vector base32_rfc4648::decode(std::string_view b32_string) {
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:76:24: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp: In static member function ‘static int nkg::base32_rfc4648::decode(std::string_view)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:78:25: 错误:‘uint8_t’在此作用域中尚未声明 78 | std::vector retval;
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:78:25: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:78:32: 错误:模板第 1 个参数无效 78 | std::vector retval;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:107:44: 错误:‘uint8_t’不是一个类型名 107 | auto val = static_cast((bit_buffer >> (left_bits - 8)) & 0xff);
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:107:44: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:108:28: 错误:对成员‘push_back’的请求出现在‘retval’中,而后者具有非类类型‘int’
108 | retval.push_back(val);
| ^~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:15:63: 错误:‘uint8_t’ is not a member of ‘std’; did you mean ‘wint_t’?
15 | std::string base64_rfc4648::encode(const std::vectorstd::uint8_t& data) {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:8:12: 附注:‘struct nkg::base64_rfc4648’ defined here
8 | struct base64_rfc4648 {
| ^~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/navicat-keygen.dir/build.make:90:CMakeFiles/navicat-keygen.dir/navicat-keygen/base32_rfc4648.cpp.o] 错误 1
make[2]: *** 正在等待未完成的任务....
make[2]: *** [CMakeFiles/navicat-keygen.dir/build.make:104:CMakeFiles/navicat-keygen.dir/navicat-keygen/base64_rfc4648.cpp.o] 错误 1
In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:5:
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:78:17: 错误:‘intptr_t’不是一个类型名 78 | virtual intptr_t error_code() const noexcept {
| ^~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:6:1: 附注:‘intptr_t’ is defined in header ‘’; did you forget to ‘#include ’?
5 | #include <utility>
+++ |+#include
6 |
In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:8:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:58: 错误:‘uint8_t’ is not a member of ‘std’; did you mean ‘wint_t’?
11 | static std::string encode(const std::vectorstd::uint8_t& data);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:1:1: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
+++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:1:1: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
+++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 错误:‘uint8_t’不是一个类型名 46 | uint8_t m_data[10];
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 错误:‘uint8_t’不是一个类型名 47 | uint8_t m_des_key[8];
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:36: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:5:1: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 错误:‘uint8_t’不是一个类型名 46 | uint8_t m_data[10];
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 错误:‘uint8_t’不是一个类型名 47 | uint8_t m_des_key[8];
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:36: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:5:1: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 错误:‘uint8_t’不是一个类型名 46 | uint8_t m_data[10];
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 错误:‘uint8_t’不是一个类型名 47 | uint8_t m_des_key[8];
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:36: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:116:31: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:120:31: 错误:‘uint8_t’不是一个类型名 120 | auto s2 = static_cast(read_int(0x00, 0xff, "(range: 0x00 ~ 0xFF)> ", "Invalid number."));
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:120:31: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:10:
/home/snemc/Desktop/nav/navicat-keygen/./common/rsa_cipher.hpp:134:26: 错误:‘virtual intptr_t nkg::rsa_cipher::backend_error::error_code() const’ marked ‘override’, but does not override
134 | virtual intptr_t error_code() const noexcept override {
| ^~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp: In function ‘int main(int, char**)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:102:72: 错误:‘class nkg::exception’ has no member named ‘error_code’
102 | printf(" %s (0x%zx)\n", e.error_string().c_str(), e.error_code());
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In member function ‘void nkg::navicat_serial_generator::set_software_language(nkg::navicat_software_language)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:37:17: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’?
37 | m_data[5] = 0xAC; // Must be 0xAC for English version.
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:37:11: 附注:‘class nkg::navicat_serial_generator’ defined here
37 | class navicat_serial_generator {
| ^~~~~~~~~~~~~~~~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In member function ‘void nkg::navicat_serial_generator::set_software_type(nkg::navicat_software_type)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:93:17: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’?
93 | m_data[7] = 0x84;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:37:11: 附注:‘class nkg::navicat_serial_generator’ defined here
37 | class navicat_serial_generator {
| ^~~~~~~~~~~~~~~~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In member function ‘void nkg::navicat_serial_generator::set_software_version(int)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:139:34: 错误:‘m_des_key’在此作用域中尚未声明 139 | static_assert(sizeof(m_des_key) == sizeof(s_des_key0));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:141:13: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’?
141 | m_data[8] = static_caststd::uint8_t((ver << 4) | (m_data[8] & 0x0f));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:146:13: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’?
146 | m_data[8] = static_caststd::uint8_t(((ver - 16) << 4) | (m_data[8] & 0x0f));
| ^~~~~~
| SN_data
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In member function ‘void nkg::navicat_serial_generator::generate()’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:154:20: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’?
154 | RAND_bytes(m_data + 2, 3);
| ^~~~~~
| SN_data
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:169:82: 错误:‘m_des_key’在此作用域中尚未声明 169 | if (EVP_EncryptInit_ex(evp_cipher_context.get(), EVP_des_ecb(), nullptr, m_des_key, nullptr) <= 0) { // return 1 for success and 0 for failure
| ^~~~~~~~~
make[2]: *** [CMakeFiles/navicat-keygen.dir/build.make:118:CMakeFiles/navicat-keygen.dir/navicat-keygen/navicat_serial_generator.cpp.o] 错误 1
make[1]: *** [CMakeFiles/Makefile2:402:CMakeFiles/navicat-keygen.dir/all] 错误 2
make[1]: *** 正在等待未完成的任务....
/home/snemc/Desktop/nav/navicat-keygen/navicat-patcher/patch_solution_since_16.0.7.0.cpp: In member function ‘virtual void nkg::patch_solution_since<16, 0, 7, 0>::make_patch(const nkg::rsa_cipher&)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-patcher/patch_solution_since_16.0.7.0.cpp:758:19: 警告:‘void* memcpy(void, const void, size_t)’ specified bound between 18446744073709551608 and 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
758 | memcpy(push_values.data(), new_encoded_key.data(), new_encoded_key.length());
[-] patch_solution_since<16, 0, 7, 0>: Vftable for CSRegistrationInfoFetcher_LINUX is not found.
[-] patch_solution_since<16, 0, 7, 0>: This patch solution will be suppressed.
[-] .\navicat-patcher\elf64_interpreter.cpp:570 ->
I am using Kernel: 6.1.41-1-MANJARO. When compiling this version, I failed to compile and got navicat-patcher instead of navicat-keygen.
The compiled error message is as follows:
[100%] Built target bundling_target
In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:4,
from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:1:
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:78:17: 错误:‘intptr_t’不是一个类型名 78 | virtual intptr_t error_code() const noexcept {
| ^~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:6:1: 附注:‘intptr_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
5 | #include <utility>
+++ |+#include <cstdint>
6 |
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:20:53: 错误:‘uint8_t’在此作用域中尚未声明 20 | static std::string encode(const std::vector<uint8_t>& data);
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:5:1: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
4 | #include "exception.hpp"
+++ |+#include <cstdint>
5 |
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:20:60: 错误:模板第 1 个参数无效 20 | static std::string encode(const std::vector<uint8_t>& data);
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:20:60: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:24:28: 错误:‘uint8_t’在此作用域中尚未声明 24 | static std::vector<uint8_t> decode(std::string_view b32_string);
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:24:28: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:24:35: 错误:模板第 1 个参数无效 24 | static std::vector<uint8_t> decode(std::string_view b32_string);
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:24:35: 错误:模板第 2 个参数无效In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:4,
from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:1:
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:78:17: 错误:‘intptr_t’不是一个类型名 78 | virtual intptr_t error_code() const noexcept {
| ^~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:6:1: 附注:‘intptr_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
5 | #include <utility>
+++ |+#include <cstdint>
6 |
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:58: 错误:‘uint8_t’ is not a member of ‘std’; did you mean ‘wint_t’?
11 | static std::string encode(const std::vector<std::uint8_t>& data);
| ^~~~~~~
| wint_t
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:65: 错误:模板第 1 个参数无效 11 | static std::string encode(const std::vector<std::uint8_t>& data);
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:65: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:28: 错误:‘uint8_t’在此作用域中尚未声明 13 | static std::vector<uint8_t> decode(std::string_view str_b64);
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:5:1: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
4 | #include "exception.hpp"
+++ |+#include <cstdint>
5 |
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:35: 错误:模板第 1 个参数无效 13 | static std::vector<uint8_t> decode(std::string_view str_b64);
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:35: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:24:58: 错误:‘uint8_t’在此作用域中尚未声明 24 | std::string base32_rfc4648::encode(const std::vector<uint8_t>& data) {
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:4:1: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
3 | #include <algorithm>
+++ |+#include <cstdint>
4 |
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:24:65: 错误:模板第 1 个参数无效 24 | std::string base32_rfc4648::encode(const std::vector<uint8_t>& data) {
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:24:65: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp: In static member function ‘static std::string nkg::base32_rfc4648::encode(const int&)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:25:28: 错误:对成员‘data’的请求出现在‘data’中,而后者具有非类类型‘const int’
25 | return encode(data.data(), data.size());
| ^~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:25:41: 错误:对成员‘size’的请求出现在‘data’中,而后者具有非类类型‘const int’
25 | return encode(data.data(), data.size());
| ^~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp: In static member function ‘static std::string nkg::base32_rfc4648::encode(const void*, size_t)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 错误:ISO C++ 不允许声明无类型的‘type name’ [-fpermissive]
34 | auto p = reinterpret_cast<const uint8_t*>(data_ptr);
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 错误:expected ‘>’ before ‘uint8_t’
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 错误:expected ‘(’ before ‘uint8_t’
34 | auto p = reinterpret_cast<const uint8_t*>(data_ptr);
| ^~~~~~~
| (
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 错误:‘uint8_t’在此作用域中尚未声明 34 | auto p = reinterpret_cast<const uint8_t*>(data_ptr);
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:53: 错误:expected primary-expression before ‘>’ token
34 | auto p = reinterpret_cast<const uint8_t*>(data_ptr);
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:64: 错误:expected ‘)’ before ‘;’ token
34 | auto p = reinterpret_cast<const uint8_t*>(data_ptr);
| ^
| )
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp: 在全局域:/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:76:17: 错误:‘uint8_t’在此作用域中尚未声明 76 | std::vector<uint8_t> base32_rfc4648::decode(std::string_view b32_string) {
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:76:17: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:76:24: 错误:模板第 1 个参数无效 76 | std::vector<uint8_t> base32_rfc4648::decode(std::string_view b32_string) {
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:76:24: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp: In static member function ‘static int nkg::base32_rfc4648::decode(std::string_view)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:78:25: 错误:‘uint8_t’在此作用域中尚未声明 78 | std::vector<uint8_t> retval;
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:78:25: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:78:32: 错误:模板第 1 个参数无效 78 | std::vector<uint8_t> retval;
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:78:32: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:83:28: 错误:对成员‘reserve’的请求出现在‘retval’中,而后者具有非类类型‘int’
83 | retval.reserve(b32_string.length() / 8 * 5 - (5 - 4));
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:86:28: 错误:对成员‘reserve’的请求出现在‘retval’中,而后者具有非类类型‘int’
86 | retval.reserve(b32_string.length() / 8 * 5 - (5 - 3));
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:89:28: 错误:对成员‘reserve’的请求出现在‘retval’中,而后者具有非类类型‘int’
89 | retval.reserve(b32_string.length() / 8 * 5 - (5 - 2));
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:92:28: 错误:对成员‘reserve’的请求出现在‘retval’中,而后者具有非类类型‘int’
92 | retval.reserve(b32_string.length() / 8 * 5 - (5 - 1));
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:107:44: 错误:‘uint8_t’不是一个类型名 107 | auto val = static_cast<uint8_t>((bit_buffer >> (left_bits - 8)) & 0xff);
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:107:44: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:108:28: 错误:对成员‘push_back’的请求出现在‘retval’中,而后者具有非类类型‘int’
108 | retval.push_back(val);
| ^~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:15:63: 错误:‘uint8_t’ is not a member of ‘std’; did you mean ‘wint_t’?
15 | std::string base64_rfc4648::encode(const std::vector<std::uint8_t>& data) {
| ^~~~~~~
| wint_t
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:15:70: 错误:模板第 1 个参数无效 15 | std::string base64_rfc4648::encode(const std::vector<std::uint8_t>& data) {
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:15:70: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp: In static member function ‘static std::string nkg::base64_rfc4648::encode(const int&)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:30:56: 错误:对成员‘size’的请求出现在‘data’中,而后者具有非类类型‘const int’
30 | for (size_t written_size = 0, left_size = data.size(); left_size != 0;) {
| ^~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:33:51: 错误:对成员‘data’的请求出现在‘data’中,而后者具有非类类型‘const int’
33 | int r = BIO_write(bio_b64.get(), data.data() + written_size, size_to_write);
| ^~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp: 在全局域:/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:52:26: 错误:no declaration matches ‘std::vector<unsigned char> nkg::base64_rfc4648::decode(std::string_view)’
52 | std::vector<uint8_t> base64_rfc4648::decode(std::string_view b64_string) {
| ^~~~~~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:37: 附注:备选是: ‘static int nkg::base64_rfc4648::decode(std::string_view)’
13 | static std::vector<uint8_t> decode(std::string_view str_b64);
| ^~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:8:12: 附注:‘struct nkg::base64_rfc4648’ defined here
8 | struct base64_rfc4648 {
| ^~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/navicat-keygen.dir/build.make:90:CMakeFiles/navicat-keygen.dir/navicat-keygen/base32_rfc4648.cpp.o] 错误 1
make[2]: *** 正在等待未完成的任务....
make[2]: *** [CMakeFiles/navicat-keygen.dir/build.make:104:CMakeFiles/navicat-keygen.dir/navicat-keygen/base64_rfc4648.cpp.o] 错误 1
In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:5:
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:78:17: 错误:‘intptr_t’不是一个类型名 78 | virtual intptr_t error_code() const noexcept {
| ^~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:6:1: 附注:‘intptr_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
5 | #include <utility>
+++ |+#include <cstdint>
6 |
In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:8:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:58: 错误:‘uint8_t’ is not a member of ‘std’; did you mean ‘wint_t’?
11 | static std::string encode(const std::vector<std::uint8_t>& data);
| ^~~~~~~
| wint_t
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:65: 错误:模板第 1 个参数无效 11 | static std::string encode(const std::vector<std::uint8_t>& data);
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:65: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:28: 错误:‘uint8_t’在此作用域中尚未声明 13 | static std::vector<uint8_t> decode(std::string_view str_b64);
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:1:1: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
+++ |+#include <cstdint>
1 | #pragma once
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:35: 错误:模板第 1 个参数无效 13 | static std::vector<uint8_t> decode(std::string_view str_b64);
| ^
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:35: 错误:模板第 2 个参数无效In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:9:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:43:29: 错误:‘uint8_t’不是一个类型名 43 | static inline const uint8_t s_des_key0[8] = { 0x64, 0xAD, 0xF3, 0x2F, 0xAE, 0xF2, 0x1A, 0x27 };
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:1:1: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
+++ |+#include <cstdint>
1 | #pragma once
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 错误:‘uint8_t’不是一个类型名 44 | static inline const uint8_t s_des_key1[8] = { 0xE9, 0x7F, 0xB0, 0x60, 0x77, 0x45, 0x90, 0xAE };
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 错误:‘uint8_t’不是一个类型名 46 | uint8_t m_data[10];
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 错误:‘uint8_t’不是一个类型名 47 | uint8_t m_des_key[8];
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:36: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:55: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:60:32: 错误:‘uint8_t’未声明 60 | void set_software_type(uint8_t software_type_sig) noexcept;
| ^~~~~~~
In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:4,
from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:1:
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:78:17: 错误:‘intptr_t’不是一个类型名 78 | virtual intptr_t error_code() const noexcept {
| ^~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:6:1: 附注:‘intptr_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
5 | #include <utility>
+++ |+#include <cstdint>
6 |
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:43:29: 错误:‘uint8_t’不是一个类型名 43 | static inline const uint8_t s_des_key0[8] = { 0x64, 0xAD, 0xF3, 0x2F, 0xAE, 0xF2, 0x1A, 0x27 };
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:5:1: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
4 | #include "exception.hpp"
+++ |+#include <cstdint>
5 |
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 错误:‘uint8_t’不是一个类型名 44 | static inline const uint8_t s_des_key1[8] = { 0xE9, 0x7F, 0xB0, 0x60, 0x77, 0x45, 0x90, 0xAE };
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 错误:‘uint8_t’不是一个类型名 46 | uint8_t m_data[10];
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 错误:‘uint8_t’不是一个类型名 47 | uint8_t m_des_key[8];
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:36: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:55: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:60:32: 错误:‘uint8_t’未声明 60 | void set_software_type(uint8_t software_type_sig) noexcept;
| ^~~~~~~
In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:4,
from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:2:
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:78:17: 错误:‘intptr_t’不是一个类型名 78 | virtual intptr_t error_code() const noexcept {
| ^~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:6:1: 附注:‘intptr_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
5 | #include <utility>
+++ |+#include <cstdint>
6 |
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:43:29: 错误:‘uint8_t’不是一个类型名 43 | static inline const uint8_t s_des_key0[8] = { 0x64, 0xAD, 0xF3, 0x2F, 0xAE, 0xF2, 0x1A, 0x27 };
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:5:1: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
4 | #include "exception.hpp"
+++ |+#include <cstdint>
5 |
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 错误:‘uint8_t’不是一个类型名 44 | static inline const uint8_t s_des_key1[8] = { 0xE9, 0x7F, 0xB0, 0x60, 0x77, 0x45, 0x90, 0xAE };
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 错误:‘uint8_t’不是一个类型名 46 | uint8_t m_data[10];
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 错误:‘uint8_t’不是一个类型名 47 | uint8_t m_des_key[8];
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:36: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:55: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:60:32: 错误:‘uint8_t’未声明 60 | void set_software_type(uint8_t software_type_sig) noexcept;
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp: In function ‘nkg::navicat_serial_generator nkg::CollectInformationAdvanced()’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:112:52: 错误:‘uint8_t’不是一个类型名 112 | sn_generator.set_software_type(static_cast<uint8_t>(read_int(0x00, 0xff, "(range: 0x00 ~ 0xFF)> ", "Invalid number.")));
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:4:1: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
3 | #include "exceptions/operation_canceled_exception.hpp"
+++ |+#include <cstdint>
4 |
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:116:31: 错误:‘uint8_t’不是一个类型名 116 | auto s1 = static_cast<uint8_t>(read_int(0x00, 0xff, "(range: 0x00 ~ 0xFF)> ", "Invalid number."));
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:116:31: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:120:31: 错误:‘uint8_t’不是一个类型名 120 | auto s2 = static_cast<uint8_t>(read_int(0x00, 0xff, "(range: 0x00 ~ 0xFF)> ", "Invalid number."));
| ^~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:120:31: 附注:‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:10:
/home/snemc/Desktop/nav/navicat-keygen/./common/rsa_cipher.hpp:134:26: 错误:‘virtual intptr_t nkg::rsa_cipher::backend_error::error_code() const’ marked ‘override’, but does not override
134 | virtual intptr_t error_code() const noexcept override {
| ^~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp: In function ‘int main(int, char**)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:102:72: 错误:‘class nkg::exception’ has no member named ‘error_code’
102 | printf(" %s (0x%zx)\n", e.error_string().c_str(), e.error_code());
| ^~~~~~~~~~
make[2]: *** [CMakeFiles/navicat-keygen.dir/build.make:132:CMakeFiles/navicat-keygen.dir/navicat-keygen/CollectInformation.cpp.o] 错误 1
make[2]: *** [CMakeFiles/navicat-keygen.dir/build.make:160:CMakeFiles/navicat-keygen.dir/navicat-keygen/main.cpp.o] 错误 1
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In constructor ‘nkg::navicat_serial_generator::navicat_serial_generator()’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:32:9: 错误:类‘nkg::navicat_serial_generator’没有名为‘m_data’的字段 32 | m_data{ 0x68 , 0x2A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32 }, m_des_key{} {}
| ^~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:32:80: 错误:类‘nkg::navicat_serial_generator’没有名为‘m_des_key’的字段 32 | m_data{ 0x68 , 0x2A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32 }, m_des_key{} {}
| ^~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In member function ‘void nkg::navicat_serial_generator::set_software_language(nkg::navicat_software_language)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:37:17: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’?
37 | m_data[5] = 0xAC; // Must be 0xAC for English version.
| ^~~~~~
| SN_data
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: 在全局域:/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:85:10: 错误:no declaration matches ‘void nkg::navicat_serial_generator::set_software_language(uint8_t, uint8_t)’
85 | void navicat_serial_generator::set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept {
| ^~~~~~~~~~~~~~~~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:14: 附注:备选为: ‘void nkg::navicat_serial_generator::set_software_language(int, int)’
57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
| ^~~~~~~~~~~~~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:34:10: 附注: ‘void nkg::navicat_serial_generator::set_software_language(nkg::navicat_software_language)’
34 | void navicat_serial_generator::set_software_language(navicat_software_language lang) noexcept {
| ^~~~~~~~~~~~~~~~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:37:11: 附注:‘class nkg::navicat_serial_generator’ defined here
37 | class navicat_serial_generator {
| ^~~~~~~~~~~~~~~~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In member function ‘void nkg::navicat_serial_generator::set_software_type(nkg::navicat_software_type)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:93:17: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’?
93 | m_data[7] = 0x84;
| ^~~~~~
| SN_data
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: 在全局域:/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:133:10: 错误:no declaration matches ‘void nkg::navicat_serial_generator::set_software_type(uint8_t)’
133 | void navicat_serial_generator::set_software_type(uint8_t software_type_sig) noexcept {
| ^~~~~~~~~~~~~~~~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:60:14: 附注:备选为: ‘void nkg::navicat_serial_generator::set_software_type(int)’
60 | void set_software_type(uint8_t software_type_sig) noexcept;
| ^~~~~~~~~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:90:10: 附注: ‘void nkg::navicat_serial_generator::set_software_type(nkg::navicat_software_type)’
90 | void navicat_serial_generator::set_software_type(navicat_software_type software_type) noexcept {
| ^~~~~~~~~~~~~~~~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:37:11: 附注:‘class nkg::navicat_serial_generator’ defined here
37 | class navicat_serial_generator {
| ^~~~~~~~~~~~~~~~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In member function ‘void nkg::navicat_serial_generator::set_software_version(int)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:139:34: 错误:‘m_des_key’在此作用域中尚未声明 139 | static_assert(sizeof(m_des_key) == sizeof(s_des_key0));
| ^~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:139:55: 错误:‘s_des_key0’在此作用域中尚未声明 139 | static_assert(sizeof(m_des_key) == sizeof(s_des_key0));
| ^~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:141:13: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’?
141 | m_data[8] = static_cast<std::uint8_t>((ver << 4) | (m_data[8] & 0x0f));
| ^~~~~~
| SN_data
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:144:34: 错误:‘m_des_key’在此作用域中尚未声明 144 | static_assert(sizeof(m_des_key) == sizeof(s_des_key1));
| ^~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:144:55: 错误:‘s_des_key1’在此作用域中尚未声明 144 | static_assert(sizeof(m_des_key) == sizeof(s_des_key1));
| ^~~~~~~~~~
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:146:13: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’?
146 | m_data[8] = static_cast<std::uint8_t>(((ver - 16) << 4) | (m_data[8] & 0x0f));
| ^~~~~~
| SN_data
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In member function ‘void nkg::navicat_serial_generator::generate()’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:154:20: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’?
154 | RAND_bytes(m_data + 2, 3);
| ^~~~~~
| SN_data
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:169:82: 错误:‘m_des_key’在此作用域中尚未声明 169 | if (EVP_EncryptInit_ex(evp_cipher_context.get(), EVP_des_ecb(), nullptr, m_des_key, nullptr) <= 0) { // return 1 for success and 0 for failure
| ^~~~~~~~~
make[2]: *** [CMakeFiles/navicat-keygen.dir/build.make:118:CMakeFiles/navicat-keygen.dir/navicat-keygen/navicat_serial_generator.cpp.o] 错误 1
make[1]: *** [CMakeFiles/Makefile2:402:CMakeFiles/navicat-keygen.dir/all] 错误 2
make[1]: *** 正在等待未完成的任务....
/home/snemc/Desktop/nav/navicat-keygen/navicat-patcher/patch_solution_since_16.0.7.0.cpp: In member function ‘virtual void nkg::patch_solution_since<16, 0, 7, 0>::make_patch(const nkg::rsa_cipher&)’:
/home/snemc/Desktop/nav/navicat-keygen/navicat-patcher/patch_solution_since_16.0.7.0.cpp:758:19: 警告:‘void* memcpy(void*, const void*, size_t)’ specified bound between 18446744073709551608 and 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
758 | memcpy(push_values.data(), new_encoded_key.data(), new_encoded_key.length());
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[100%] Linking CXX executable navicat-patcher
[100%] Built target navicat-patcher
make: *** [Makefile:156:all] 错误 2
Then I tried to run one of the commands:
❯ ./navicat-patcher navicat16-premium-cs-pathced (nav) 02:26:38
***************************************************
* navicat-patcher by @DoubleLabyrinth *
* version: 16.0.7.0-3 *
***************************************************
[+] Try to open libcc.dll ... OK!
[-] patch_solution_since<16, 0, 7, 0>: Vftable for CSRegistrationInfoFetcher_LINUX is not found.
[-] patch_solution_since<16, 0, 7, 0>: This patch solution will be suppressed.
[-] .\navicat-patcher\elf64_interpreter.cpp:570 ->
I am using Kernel: 6.1.41-1-MANJARO. When compiling this version, I failed to compile and got navicat-patcher instead of navicat-keygen. The compiled error message is as follows: [100%] Built target bundling_target In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:4,
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:78:17: 错误:‘intptr_t’不是一个类型名 78 | virtual intptr_t error_code() const noexcept {
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:6:1: 附注:‘intptr_t’ is defined in header ‘’; did you forget to ‘#include ’?
+++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:20:53: 错误:‘uint8_t’在此作用域中尚未声明 20 | static std::string encode(const std::vector& data);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:5:1: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
+++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:20:60: 错误:模板第 1 个参数无效 20 | static std::string encode(const std::vector& data);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:20:60: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:24:28: 错误:‘uint8_t’在此作用域中尚未声明 24 | static std::vector decode(std::string_view b32_string);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:24:28: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:24:35: 错误:模板第 1 个参数无效 24 | static std::vector decode(std::string_view b32_string);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.hpp:24:35: 错误:模板第 2 个参数无效In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:4,
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:78:17: 错误:‘intptr_t’不是一个类型名 78 | virtual intptr_t error_code() const noexcept {
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:6:1: 附注:‘intptr_t’ is defined in header ‘’; did you forget to ‘#include ’?
+++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:58: 错误:‘uint8_t’ is not a member of ‘std’; did you mean ‘wint_t’? 11 | static std::string encode(const std::vectorstd::uint8_t& data);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:65: 错误:模板第 1 个参数无效 11 | static std::string encode(const std::vectorstd::uint8_t& data);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:65: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:28: 错误:‘uint8_t’在此作用域中尚未声明 13 | static std::vector decode(std::string_view str_b64);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:5:1: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
+++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:35: 错误:模板第 1 个参数无效 13 | static std::vector decode(std::string_view str_b64);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:35: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:24:58: 错误:‘uint8_t’在此作用域中尚未声明 24 | std::string base32_rfc4648::encode(const std::vector& data) {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:4:1: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
+++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:24:65: 错误:模板第 1 个参数无效 24 | std::string base32_rfc4648::encode(const std::vector& data) {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:24:65: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp: In static member function ‘static std::string nkg::base32_rfc4648::encode(const int&)’: /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:25:28: 错误:对成员‘data’的请求出现在‘data’中,而后者具有非类类型‘const int’ 25 | return encode(data.data(), data.size());
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:25:41: 错误:对成员‘size’的请求出现在‘data’中,而后者具有非类类型‘const int’ 25 | return encode(data.data(), data.size());
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp: In static member function ‘static std::string nkg::base32_rfc4648::encode(const void, size_t)’: /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 错误:ISO C++ 不允许声明无类型的‘type name’ [-fpermissive] 34 | auto p = reinterpret_cast<const uint8_t>(data_ptr);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 错误:expected ‘>’ before ‘uint8_t’ /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 错误:expected ‘(’ before ‘uint8_t’ 34 | auto p = reinterpret_cast(data_ptr);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 错误:‘uint8_t’在此作用域中尚未声明 34 | auto p = reinterpret_cast(data_ptr);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:45: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:53: 错误:expected primary-expression before ‘>’ token 34 | auto p = reinterpret_cast(data_ptr);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:34:64: 错误:expected ‘)’ before ‘;’ token 34 | auto p = reinterpret_cast(data_ptr);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp: 在全局域:/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:76:17: 错误:‘uint8_t’在此作用域中尚未声明 76 | std::vector base32_rfc4648::decode(std::string_view b32_string) {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:76:17: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:76:24: 错误:模板第 1 个参数无效 76 | std::vector base32_rfc4648::decode(std::string_view b32_string) {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:76:24: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp: In static member function ‘static int nkg::base32_rfc4648::decode(std::string_view)’: /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:78:25: 错误:‘uint8_t’在此作用域中尚未声明 78 | std::vector retval;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:78:25: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:78:32: 错误:模板第 1 个参数无效 78 | std::vector retval;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:78:32: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:83:28: 错误:对成员‘reserve’的请求出现在‘retval’中,而后者具有非类类型‘int’ 83 | retval.reserve(b32_string.length() / 8 * 5 - (5 - 4));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:86:28: 错误:对成员‘reserve’的请求出现在‘retval’中,而后者具有非类类型‘int’ 86 | retval.reserve(b32_string.length() / 8 * 5 - (5 - 3));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:89:28: 错误:对成员‘reserve’的请求出现在‘retval’中,而后者具有非类类型‘int’ 89 | retval.reserve(b32_string.length() / 8 * 5 - (5 - 2));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:92:28: 错误:对成员‘reserve’的请求出现在‘retval’中,而后者具有非类类型‘int’ 92 | retval.reserve(b32_string.length() / 8 * 5 - (5 - 1));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:107:44: 错误:‘uint8_t’不是一个类型名 107 | auto val = static_cast((bit_buffer >> (left_bits - 8)) & 0xff);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:107:44: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base32_rfc4648.cpp:108:28: 错误:对成员‘push_back’的请求出现在‘retval’中,而后者具有非类类型‘int’ 108 | retval.push_back(val);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:15:63: 错误:‘uint8_t’ is not a member of ‘std’; did you mean ‘wint_t’? 15 | std::string base64_rfc4648::encode(const std::vectorstd::uint8_t& data) {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:15:70: 错误:模板第 1 个参数无效 15 | std::string base64_rfc4648::encode(const std::vectorstd::uint8_t& data) {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:15:70: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp: In static member function ‘static std::string nkg::base64_rfc4648::encode(const int&)’: /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:30:56: 错误:对成员‘size’的请求出现在‘data’中,而后者具有非类类型‘const int’ 30 | for (size_t written_size = 0, left_size = data.size(); left_size != 0;) {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:33:51: 错误:对成员‘data’的请求出现在‘data’中,而后者具有非类类型‘const int’ 33 | int r = BIO_write(bio_b64.get(), data.data() + written_size, size_to_write);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp: 在全局域:/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.cpp:52:26: 错误:no declaration matches ‘std::vector nkg::base64_rfc4648::decode(std::string_view)’ 52 | std::vector base64_rfc4648::decode(std::string_view b64_string) {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:37: 附注:备选是: ‘static int nkg::base64_rfc4648::decode(std::string_view)’ 13 | static std::vector decode(std::string_view str_b64);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:8:12: 附注:‘struct nkg::base64_rfc4648’ defined here
make[2]: *** [CMakeFiles/navicat-keygen.dir/build.make:90:CMakeFiles/navicat-keygen.dir/navicat-keygen/base32_rfc4648.cpp.o] 错误 1 make[2]: *** 正在等待未完成的任务.... make[2]: *** [CMakeFiles/navicat-keygen.dir/build.make:104:CMakeFiles/navicat-keygen.dir/navicat-keygen/base64_rfc4648.cpp.o] 错误 1 In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:5: /home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:78:17: 错误:‘intptr_t’不是一个类型名 78 | virtual intptr_t error_code() const noexcept {
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:6:1: 附注:‘intptr_t’ is defined in header ‘’; did you forget to ‘#include ’?
+++ |+#include
In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:8: /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:58: 错误:‘uint8_t’ is not a member of ‘std’; did you mean ‘wint_t’? 11 | static std::string encode(const std::vectorstd::uint8_t& data);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:65: 错误:模板第 1 个参数无效 11 | static std::string encode(const std::vectorstd::uint8_t& data);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:11:65: 错误:模板第 2 个参数无效/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:28: 错误:‘uint8_t’在此作用域中尚未声明 13 | static std::vector decode(std::string_view str_b64);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:1:1: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? +++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:35: 错误:模板第 1 个参数无效 13 | static std::vector decode(std::string_view str_b64);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/base64_rfc4648.hpp:13:35: 错误:模板第 2 个参数无效In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:9: /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:43:29: 错误:‘uint8_t’不是一个类型名 43 | static inline const uint8_t s_des_key0[8] = { 0x64, 0xAD, 0xF3, 0x2F, 0xAE, 0xF2, 0x1A, 0x27 };
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:1:1: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? +++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 错误:‘uint8_t’不是一个类型名 44 | static inline const uint8_t s_des_key1[8] = { 0xE9, 0x7F, 0xB0, 0x60, 0x77, 0x45, 0x90, 0xAE };
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 错误:‘uint8_t’不是一个类型名 46 | uint8_t m_data[10];
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 错误:‘uint8_t’不是一个类型名 47 | uint8_t m_des_key[8];
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:36: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:55: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:60:32: 错误:‘uint8_t’未声明 60 | void set_software_type(uint8_t software_type_sig) noexcept;
In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:4,
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:78:17: 错误:‘intptr_t’不是一个类型名 78 | virtual intptr_t error_code() const noexcept {
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:6:1: 附注:‘intptr_t’ is defined in header ‘’; did you forget to ‘#include ’?
+++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:43:29: 错误:‘uint8_t’不是一个类型名 43 | static inline const uint8_t s_des_key0[8] = { 0x64, 0xAD, 0xF3, 0x2F, 0xAE, 0xF2, 0x1A, 0x27 };
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:5:1: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
+++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 错误:‘uint8_t’不是一个类型名 44 | static inline const uint8_t s_des_key1[8] = { 0xE9, 0x7F, 0xB0, 0x60, 0x77, 0x45, 0x90, 0xAE };
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 错误:‘uint8_t’不是一个类型名 46 | uint8_t m_data[10];
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 错误:‘uint8_t’不是一个类型名 47 | uint8_t m_des_key[8];
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:36: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:55: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:60:32: 错误:‘uint8_t’未声明 60 | void set_software_type(uint8_t software_type_sig) noexcept;
In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:4,
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:78:17: 错误:‘intptr_t’不是一个类型名 78 | virtual intptr_t error_code() const noexcept {
/home/snemc/Desktop/nav/navicat-keygen/./common/exception.hpp:6:1: 附注:‘intptr_t’ is defined in header ‘’; did you forget to ‘#include ’?
+++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:43:29: 错误:‘uint8_t’不是一个类型名 43 | static inline const uint8_t s_des_key0[8] = { 0x64, 0xAD, 0xF3, 0x2F, 0xAE, 0xF2, 0x1A, 0x27 };
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:5:1: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
+++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 错误:‘uint8_t’不是一个类型名 44 | static inline const uint8_t s_des_key1[8] = { 0xE9, 0x7F, 0xB0, 0x60, 0x77, 0x45, 0x90, 0xAE };
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:44:29: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 错误:‘uint8_t’不是一个类型名 46 | uint8_t m_data[10];
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:46:9: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 错误:‘uint8_t’不是一个类型名 47 | uint8_t m_des_key[8];
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:47:9: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:36: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:55: 错误:‘uint8_t’未声明 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:60:32: 错误:‘uint8_t’未声明 60 | void set_software_type(uint8_t software_type_sig) noexcept;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp: In function ‘nkg::navicat_serial_generator nkg::CollectInformationAdvanced()’: /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:112:52: 错误:‘uint8_t’不是一个类型名 112 | sn_generator.set_software_type(static_cast(read_int(0x00, 0xff, "(range: 0x00 ~ 0xFF)> ", "Invalid number.")));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:4:1: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
+++ |+#include
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:116:31: 错误:‘uint8_t’不是一个类型名 116 | auto s1 = static_cast(read_int(0x00, 0xff, "(range: 0x00 ~ 0xFF)> ", "Invalid number."));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:116:31: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:120:31: 错误:‘uint8_t’不是一个类型名 120 | auto s2 = static_cast(read_int(0x00, 0xff, "(range: 0x00 ~ 0xFF)> ", "Invalid number."));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/CollectInformation.cpp:120:31: 附注:‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’? In file included from /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:10: /home/snemc/Desktop/nav/navicat-keygen/./common/rsa_cipher.hpp:134:26: 错误:‘virtual intptr_t nkg::rsa_cipher::backend_error::error_code() const’ marked ‘override’, but does not override 134 | virtual intptr_t error_code() const noexcept override {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp: In function ‘int main(int, char**)’: /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/main.cpp:102:72: 错误:‘class nkg::exception’ has no member named ‘error_code’ 102 | printf(" %s (0x%zx)\n", e.error_string().c_str(), e.error_code());
make[2]: *** [CMakeFiles/navicat-keygen.dir/build.make:132:CMakeFiles/navicat-keygen.dir/navicat-keygen/CollectInformation.cpp.o] 错误 1 make[2]: *** [CMakeFiles/navicat-keygen.dir/build.make:160:CMakeFiles/navicat-keygen.dir/navicat-keygen/main.cpp.o] 错误 1 /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In constructor ‘nkg::navicat_serial_generator::navicat_serial_generator()’: /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:32:9: 错误:类‘nkg::navicat_serial_generator’没有名为‘m_data’的字段 32 | m_data{ 0x68 , 0x2A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32 }, m_des_key{} {}
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:32:80: 错误:类‘nkg::navicat_serial_generator’没有名为‘m_des_key’的字段 32 | m_data{ 0x68 , 0x2A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32 }, m_des_key{} {}
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In member function ‘void nkg::navicat_serial_generator::set_software_language(nkg::navicat_software_language)’: /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:37:17: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’? 37 | m_data[5] = 0xAC; // Must be 0xAC for English version.
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: 在全局域:/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:85:10: 错误:no declaration matches ‘void nkg::navicat_serial_generator::set_software_language(uint8_t, uint8_t)’ 85 | void navicat_serial_generator::set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:57:14: 附注:备选为: ‘void nkg::navicat_serial_generator::set_software_language(int, int)’ 57 | void set_software_language(uint8_t lang_sig0, uint8_t lang_sig1) noexcept;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:34:10: 附注: ‘void nkg::navicat_serial_generator::set_software_language(nkg::navicat_software_language)’ 34 | void navicat_serial_generator::set_software_language(navicat_software_language lang) noexcept {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:37:11: 附注:‘class nkg::navicat_serial_generator’ defined here 37 | class navicat_serial_generator {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In member function ‘void nkg::navicat_serial_generator::set_software_type(nkg::navicat_software_type)’: /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:93:17: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’? 93 | m_data[7] = 0x84;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: 在全局域:/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:133:10: 错误:no declaration matches ‘void nkg::navicat_serial_generator::set_software_type(uint8_t)’ 133 | void navicat_serial_generator::set_software_type(uint8_t software_type_sig) noexcept {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:60:14: 附注:备选为: ‘void nkg::navicat_serial_generator::set_software_type(int)’ 60 | void set_software_type(uint8_t software_type_sig) noexcept;
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:90:10: 附注: ‘void nkg::navicat_serial_generator::set_software_type(nkg::navicat_software_type)’ 90 | void navicat_serial_generator::set_software_type(navicat_software_type software_type) noexcept {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.hpp:37:11: 附注:‘class nkg::navicat_serial_generator’ defined here 37 | class navicat_serial_generator {
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In member function ‘void nkg::navicat_serial_generator::set_software_version(int)’: /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:139:34: 错误:‘m_des_key’在此作用域中尚未声明 139 | static_assert(sizeof(m_des_key) == sizeof(s_des_key0));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:139:55: 错误:‘s_des_key0’在此作用域中尚未声明 139 | static_assert(sizeof(m_des_key) == sizeof(s_des_key0));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:141:13: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’? 141 | m_data[8] = static_caststd::uint8_t((ver << 4) | (m_data[8] & 0x0f));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:144:34: 错误:‘m_des_key’在此作用域中尚未声明 144 | static_assert(sizeof(m_des_key) == sizeof(s_des_key1));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:144:55: 错误:‘s_des_key1’在此作用域中尚未声明 144 | static_assert(sizeof(m_des_key) == sizeof(s_des_key1));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:146:13: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’? 146 | m_data[8] = static_caststd::uint8_t(((ver - 16) << 4) | (m_data[8] & 0x0f));
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp: In member function ‘void nkg::navicat_serial_generator::generate()’: /home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:154:20: 错误:‘m_data’ was not declared in this scope; did you mean ‘SN_data’? 154 | RAND_bytes(m_data + 2, 3);
/home/snemc/Desktop/nav/navicat-keygen/navicat-keygen/navicat_serial_generator.cpp:169:82: 错误:‘m_des_key’在此作用域中尚未声明 169 | if (EVP_EncryptInit_ex(evp_cipher_context.get(), EVP_des_ecb(), nullptr, m_des_key, nullptr) <= 0) { // return 1 for success and 0 for failure
make[2]: *** [CMakeFiles/navicat-keygen.dir/build.make:118:CMakeFiles/navicat-keygen.dir/navicat-keygen/navicat_serial_generator.cpp.o] 错误 1 make[1]: *** [CMakeFiles/Makefile2:402:CMakeFiles/navicat-keygen.dir/all] 错误 2 make[1]: *** 正在等待未完成的任务.... /home/snemc/Desktop/nav/navicat-keygen/navicat-patcher/patch_solution_since_16.0.7.0.cpp: In member function ‘virtual void nkg::patch_solution_since<16, 0, 7, 0>::make_patch(const nkg::rsa_cipher&)’: /home/snemc/Desktop/nav/navicat-keygen/navicat-patcher/patch_solution_since_16.0.7.0.cpp:758:19: 警告:‘void* memcpy(void, const void, size_t)’ specified bound between 18446744073709551608 and 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=] 758 | memcpy(push_values.data(), new_encoded_key.data(), new_encoded_key.length());
[100%] Linking CXX executable navicat-patcher [100%] Built target navicat-patcher make: *** [Makefile:156:all] 错误 2
Then I tried to run one of the commands:
❯ ./navicat-patcher navicat16-premium-cs-pathced (nav) 02:26:38
[+] Try to open libcc.dll ... OK!
[-] patch_solution_since<16, 0, 7, 0>: Vftable for CSRegistrationInfoFetcher_LINUX is not found. [-] patch_solution_since<16, 0, 7, 0>: This patch solution will be suppressed. [-] .\navicat-patcher\elf64_interpreter.cpp:570 ->