yapay zeka ile bitcoin puzzle için hazırlanmış bir c++ kodum var , libbitcoin kütüphanesi kullanıyor, derlemede hata alıyorum. derleme konusunda destek olabilecek var mı? kodlar aşşağıda



#include <iostream>
#include <fstream>
#include <string>
#include <set>
#include <chrono>
#include <thread>
#include <random>
#include <bitcoin/bitcoin.hpp>
#include <openssl/bn.h> // Added for BIGNUM definition
#include <bitcoin/wallet/ec_private.hpp>
#include <bitcoin/wallet/payment_address.hpp>
#ifdef __BYTE_ORDER__
#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
#define BYTE_ORDER LITTLE_ENDIAN
#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
#define BYTE_ORDER BIG_ENDIAN
#else
#error "Unknown byte order"
#endif
#else
#error "Byte order not defined"
#endif

using namespace std;
using namespace std::chrono;



set<string> addresses;
const int privateKeyLength = 64;
const string zeros = string(47, '0');

void readAddresses() {
ifstream file("btcpuzzle.txt");
string line;
while (getline(file, line)) {
addresses.insert(line);
}
file.close();
}

string generateRandomPart(const string& chars, int length) {
random_device rd;
mt19937 generator(rd());
uniform_int_distribution<> distribution(0, chars.size() - 1);

string result;
for (int i = 0; i < length; ++i) {
result += chars[distribution(generator)];
}

return result;
}

void generateAndCheckAddress() {
string randomPart = generateRandomPart("23", 1);
string randomPart2 = generateRandomPart("ABCDEF0123456789", 16);
string privateKeyHex = zeros + randomPart + randomPart2;

// Using libbitcoin for key handling:
libbitcoin::wallet::ec_secret secret;
libbitcoin::decode_base58(secret, privateKeyHex);

if (libbitcoin::is_valid(secret)) {
libbitcoin::wallet::ec_private privateKey(secret);
libbitcoin::wallet:ayment_address payAddress = privateKey.to_payment_address(libbitcoin::wallet:: ec_private::mainnet_p2kh);

string bitcoinAddress = payAddress.encoded();
if (addresses.find(bitcoinAddress) != addresses.end()) {
// Address found!
cout << "nFound matching address: " << bitcoinAddress << endl;
ofstream outFile("Success.txt");
outFile << "Wallet: " << bitcoinAddress << "nSeed: " << privateKeyHex.encoded() << endl;
outFile.close();
exit(0);
}
}
}

int main() {
readAddresses();

auto startTime = steady_clock::now();
long long scanCount = 0;

while (true) {
generateAndCheckAddress();
scanCount++;

auto currentTime = steady_clock::now();
auto elapsedTime = duration_cast<seconds>(currentTime - startTime).count();
if (elapsedTime > 0) {
cout << "Total Scans: " << scanCount << ", Elapsed Time: " << elapsedTime << " s, Scan Rate: " << (scanCount / elapsedTime) << " scans/secr";
}

this_thread::sleep_for(milliseconds(10));
}

return 0;
}