RavenCommunity / kawpowminer

KawPow 0.9.4 implementation for Ravencoin
https://github.com/RavenProject/Ravencoin
GNU General Public License v3.0
229 stars 95 forks source link

hunter: Boost does not build on osx, needs update to 1.72.0 #91

Open UnixCro opened 3 years ago

UnixCro commented 3 years ago
cmake .. -DETHASHCUDA=ON -DETHASHCL=ON -DAPICORE=ON

...found 137 targets...
...updating 23 targets...
darwin.compile.c++ bin.v2/libs/system/build/darwin-12.0.0/release/link-static/threading-multi/visibility-hidden/error_code.o
clang: error: unknown argument: '-fcoalesce-templates'

    "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++" "-isysroot" "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk" "-std=c++11" "-isysroot" "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk"   -fvisibility-inlines-hidden -fcoalesce-templates -O3 -Wall -fvisibility=hidden -gdwarf-2 -fexceptions -Wno-long-double -Wno-inline  -DBOOST_ALL_NO_LIB=1 -DBOOST_SYSTEM_STATIC_LINK=1 -DNDEBUG  -I"." -c -o "bin.v2/libs/system/build/darwin-12.0.0/release/link-static/threading-multi/visibility-hidden/error_code.o" "libs/system/src/error_code.cpp"

...failed darwin.compile.c++ bin.v2/libs/system/build/darwin-12.0.0/release/link-static/threading-multi/visibility-hidden/error_code.o...
...skipped <pbin.v2/libs/system/build/darwin-12.0.0/release/link-static/threading-multi/visibility-hidden>libboost_system-mt.a(clean) for lack of <pbin.v2/libs/system/build/darwin-12.0.0/release/link-static/threading-multi/visibility-hidden>error_code.o...
...skipped <pbin.v2/libs/system/build/darwin-12.0.0/release/link-static/threading-multi/visibility-hidden>libboost_system-mt.a for lack of <pbin.v2/libs/system/build/darwin-12.0.0/release/link-static/threading-multi/visibility-hidden>error_code.o...
...skipped <p/Users/home/.hunter/_Base/e14bc15/70da673/196746b/Build/Boost/__system/Source/stage/lib>libboost_system-mt.a for lack of <pbin.v2/libs/system/build/darwin-12.0.0/release/link-static/threading-multi/visibility-hidden>libboost_system-mt.a...
darwin.compile.c++ bin.v2/libs/system/build/darwin-12.0.0/debug/link-static/threading-multi/visibility-hidden/error_code.o
clang: error: unknown argument: '-fcoalesce-templates'

    "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++" "-isysroot" "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk" "-std=c++11" "-isysroot" "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk"   -fvisibility-inlines-hidden -fcoalesce-templates -O0 -fno-inline -Wall -g -fvisibility=hidden -gdwarf-2 -fexceptions -Wno-long-double  -DBOOST_ALL_NO_LIB=1 -DBOOST_SYSTEM_STATIC_LINK=1  -I"." -c -o "bin.v2/libs/system/build/darwin-12.0.0/debug/link-static/threading-multi/visibility-hidden/error_code.o" "libs/system/src/error_code.cpp"

...failed darwin.compile.c++ bin.v2/libs/system/build/darwin-12.0.0/debug/link-static/threading-multi/visibility-hidden/error_code.o...
...skipped <pbin.v2/libs/system/build/darwin-12.0.0/debug/link-static/threading-multi/visibility-hidden>libboost_system-mt-d.a(clean) for lack of <pbin.v2/libs/system/build/darwin-12.0.0/debug/link-static/threading-multi/visibility-hidden>error_code.o...
...skipped <pbin.v2/libs/system/build/darwin-12.0.0/debug/link-static/threading-multi/visibility-hidden>libboost_system-mt-d.a for lack of <pbin.v2/libs/system/build/darwin-12.0.0/debug/link-static/threading-multi/visibility-hidden>error_code.o...
...skipped <p/Users/home/.hunter/_Base/e14bc15/70da673/196746b/Build/Boost/__system/Source/stage/lib>libboost_system-mt-d.a for lack of <pbin.v2/libs/system/build/darwin-12.0.0/debug/link-static/threading-multi/visibility-hidden>libboost_system-mt-d.a...
...failed updating 2 targets...
...skipped 6 targets...
...updated 15 targets...
make[2]: *** [Boost-system-prefix/src/Boost-system-stamp/Boost-system-build] Error 1
make[1]: *** [CMakeFiles/Boost-system.dir/all] Error 2
make: *** [all] Error 2

[hunter ** FATAL ERROR **] Build step failed (dir: /Users/home/.hunter/_Base/e14bc15/70da673/196746b/Build/Boost/__system
[hunter ** FATAL ERROR **] [Directory:/Users/home/.hunter/_Base/Download/Hunter/0.23.214/e14bc15/Unpacked/cmake/projects/Boost/system]

------------------------------ ERROR -----------------------------
    https://docs.hunter.sh/en/latest/reference/errors/error.external.build.failed.html
------------------------------------------------------------------

CMake Error at /Users/home/.hunter/_Base/Download/Hunter/0.23.214/e14bc15/Unpacked/cmake/modules/hunter_error_page.cmake:12 (message):
Call Stack (most recent call first):
  /Users/home/.hunter/_Base/Download/Hunter/0.23.214/e14bc15/Unpacked/cmake/modules/hunter_fatal_error.cmake:20 (hunter_error_page)
  /Users/home/.hunter/_Base/Download/Hunter/0.23.214/e14bc15/Unpacked/cmake/modules/hunter_download.cmake:617 (hunter_fatal_error)
  /Users/home/.hunter/_Base/Download/Hunter/0.23.214/e14bc15/Unpacked/cmake/projects/Boost/system/hunter.cmake:16 (hunter_download)
  /Users/home/.hunter/_Base/Download/Hunter/0.23.214/e14bc15/Unpacked/cmake/modules/hunter_add_package.cmake:62 (include)
  CMakeLists.txt:56 (hunter_add_package)

-- Configuring incomplete, errors occurred!
See also "/Users/home/bin/kawpowminer/build/CMakeFiles/CMakeOutput.log".
See also "/Users/home/bin/kawpowminer/build/CMakeFiles/CMakeError.log".

So ridiculous instead of just releasing the pre-made binary instead of messing around here.

make -sj $(nproc)    

zsh: command not found: nproc
make: *** No targets specified and no makefile found.  Stop.
make -sj $(sysctl -n hw.logicalcpu)
make: *** No targets specified and no makefile found.  Stop.
fdoving commented 3 years ago

I'm aware of this. Boost needs to be updated to support the newer OSX.

fdoving commented 3 years ago

You can try to checkout this branch: https://github.com/RavenCommunity/kawpowminer/commits/fdov-hb2

UnixCro commented 3 years ago

With all due respect. I am aware that developing mining programs requires reputation and therefore I want to hold back a little about my disappointment. Still, it is a shame that we users cannot download and run a prefabricated binary file even though all other operating systems can. We have to compile the source code ourselves, although the code for compiling is not even correct. I ask you to be able to download a pre-made binary file for my Intel Mac without any problems and I will give you a share of my profit.

rezahussain commented 2 years ago

Hello I tried building this second branch, but it failed too

I attached the output

building_kawpow_fail.txt

geppyz commented 2 years ago

I also tried building with the fdov-hb2 branch. It works as long as you disable CUDA. I just need OpenCL, so for me it doesn't matter. Try building with the following command: cmake .. -DETHASHCUDA=OFF -DETHASHCL=ON -DAPICORE=ON.

Hmm might have spoke a bit to soon, got an error running make:

$ make -sj $(nproc)
[  2%] Building CXX object libprogpow/CMakeFiles/progpow.dir/ProgPow.cpp.o
[  5%] Building CXX object libdevcore/CMakeFiles/devcore.dir/CommonData.cpp.o
[  8%] Building CXX object libdevcore/CMakeFiles/devcore.dir/Log.cpp.o
[ 11%] Building CXX object libdevcore/CMakeFiles/devcore.dir/Worker.cpp.o
[ 14%] Building CXX object libdevcore/CMakeFiles/devcore.dir/FixedHash.cpp.o
[ 14%] Built target kawpowminer-buildinfo-git
[ 17%] Updating kawpowminer-buildinfo:
CMake Warning at /Users/geppyz/git/ravencommunity/kawpowminer/cmake/cable/buildinfo/buildinfo.cmake:58 (message):
  Git project version mismatch: '0.9.4' vs '1.2.4'

       Project Version:  1.2.4+commit.63d36936 (prerelease)
       System Name:      darwin
       System Processor: arm64
       Compiler ID:      appleclang
       Compiler Version: 13.0.0.13000029
       Build Type:       release
       Git Info:         0.9.4 42 63d369362e76b3796ecda8abc4c97bc73ec58fa8
       Timestamp:        2022-01-04T14:15:49
[ 20%] Building C object CMakeFiles/kawpowminer-buildinfo.dir/kawpowminer/buildinfo.c.o
[ 22%] Linking C static library kawpowminer/libkawpowminer-buildinfo.a
[ 22%] Built target kawpowminer-buildinfo
[ 25%] Linking CXX static library libprogpow.a
[ 25%] Built target progpow
[ 28%] Linking CXX static library libdevcore.a
[ 28%] Built target devcore
[ 31%] Building CXX object libhwmon/CMakeFiles/hwmon.dir/wraphelper.cpp.o
[ 37%] Building CXX object libpoolprotocols/CMakeFiles/poolprotocols.dir/stratum/EthStratumClient.cpp.o
[ 45%] Building CXX object libpoolprotocols/CMakeFiles/poolprotocols.dir/stratum/utilstrencodings.cpp.o
[ 45%] Building CXX object libpoolprotocols/CMakeFiles/poolprotocols.dir/PoolManager.cpp.o
[ 48%] Building CXX object libpoolprotocols/CMakeFiles/poolprotocols.dir/PoolURI.cpp.o
[ 48%] Building CXX object libpoolprotocols/CMakeFiles/poolprotocols.dir/testing/SimulateClient.cpp.o
[ 51%] Building CXX object libhwmon/CMakeFiles/hwmon.dir/wrapnvml.cpp.o
[ 48%] Building CXX object libhwmon/CMakeFiles/hwmon.dir/wrapadl.cpp.o
[ 54%] Building CXX object libhwmon/CMakeFiles/hwmon.dir/wrapamdsysfs.cpp.o
[ 57%] Building CXX object libpoolprotocols/CMakeFiles/poolprotocols.dir/stratum/uint256.cpp.o
[ 60%] Building CXX object libpoolprotocols/CMakeFiles/poolprotocols.dir/stratum/arith_uint256.cpp.o
[ 62%] Building CXX object libpoolprotocols/CMakeFiles/poolprotocols.dir/getwork/EthGetworkClient.cpp.o
In file included from /Users/geppyz/git/ravencommunity/kawpowminer/libhwmon/wrapamdsysfs.cpp:27:
/Users/geppyz/git/ravencommunity/kawpowminer/libhwmon/wrapamdsysfs.h:20:15: warning: anonymous non-C-compatible type given name for linkage purposes by typedef declaration; add a tag name here [-Wnon-c-typedef-for-linkage]
typedef struct
              ^
               pciInfo
/Users/geppyz/git/ravencommunity/kawpowminer/libhwmon/wrapamdsysfs.h:22:20: note: type is not C-compatible due to this default member initializer
    int DeviceId = -1;
                   ^~
/Users/geppyz/git/ravencommunity/kawpowminer/libhwmon/wrapamdsysfs.h:28:3: note: type is given name 'pciInfo' for linkage purposes by this typedef declaration
} pciInfo;
  ^
/Users/geppyz/git/ravencommunity/kawpowminer/libhwmon/wrapadl.cpp:40:2: warning: "Unrecognized platform: need ADL DLL path for this platform..." [-W#warnings]
#warning "Unrecognized platform: need ADL DLL path for this platform..."
 ^
/Users/geppyz/git/ravencommunity/kawpowminer/libhwmon/wrapnvml.cpp:52:2: warning: "Unrecognized platform: need NVML DLL path for this platform..." [-W#warnings]
#warning "Unrecognized platform: need NVML DLL path for this platform..."
 ^
1 warning generated.
1 warning generated.
/Users/geppyz/git/ravencommunity/kawpowminer/libpoolprotocols/stratum/EthStratumClient.cpp:1394:26: warning: unused variable 'fCancelJob' [-Wunused-variable]
                    bool fCancelJob = jPrm.get(Json::Value::ArrayIndex(prmIdx++), "").asBool();
                         ^
1 warning generated.
[ 65%] Linking CXX static library libhwmon.a
[ 65%] Built target hwmon
[ 68%] Generating OpenCL Kernel
[ 71%] Building CXX object libethash-cl/CMakeFiles/ethash-cl.dir/CLMiner.cpp.o
In file included from /Users/geppyz/git/ravencommunity/kawpowminer/libethash-cl/CLMiner.cpp:9:
In file included from /Users/geppyz/git/ravencommunity/kawpowminer/libethash-cl/CLMiner.h:28:
/Users/geppyz/git/ravencommunity/kawpowminer/libethash-cl/CL/cl2.hpp:1941:18: warning: definition of implicit copy constructor for 'ImageFormat' is deprecated because it has a user-declared copy assignment operator [-Wdeprecated-copy]
    ImageFormat& operator = (const ImageFormat& rhs)
                 ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/memory:916:28: note: in implicit copy constructor for 'cl::ImageFormat' first required here
        ::new ((void*)__p) _Up(_VSTD::forward<_Args>(__args)...);
                           ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/__memory/allocator_traits.h:288:13: note: in instantiation of function template specialization 'std::allocator<cl::ImageFormat>::construct<cl::ImageFormat, cl::ImageFormat &>' requested here
        __a.construct(__p, _VSTD::forward<_Args>(__args)...);
            ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/memory:1047:18: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<cl::ImageFormat>>::construct<cl::ImageFormat, cl::ImageFormat &, void>' requested here
        _Traits::construct(__a, _VSTD::__to_address(__begin2), *__begin1);
                 ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/vector:1077:12: note: in instantiation of function template specialization 'std::__construct_range_forward<std::allocator<cl::ImageFormat>, std::__wrap_iter<cl::ImageFormat *>, cl::ImageFormat *>' requested here
    _VSTD::__construct_range_forward(this->__alloc(), __first, __last, __tx.__pos_);
           ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/vector:1453:13: note: in instantiation of function template specialization 'std::vector<cl::ImageFormat>::__construct_at_end<std::__wrap_iter<cl::ImageFormat *>>' requested here
            __construct_at_end(__mid, __last, __new_size - size());
            ^
/Users/geppyz/git/ravencommunity/kawpowminer/libethash-cl/CL/cl2.hpp:2925:22: note: in instantiation of function template specialization 'std::vector<cl::ImageFormat>::assign<std::__wrap_iter<cl::ImageFormat *>>' requested here
            formats->assign(begin(value), end(value));
                     ^
1 warning generated.
[ 74%] Linking CXX static library libethash-cl.a
[ 74%] Built target ethash-cl
[ 82%] Building CXX object libethcore/CMakeFiles/ethcore.dir/Miner.cpp.o
[ 82%] Building CXX object libethcore/CMakeFiles/ethcore.dir/EthashAux.cpp.o
[ 82%] Building CXX object libethcore/CMakeFiles/ethcore.dir/Farm.cpp.o
1 warning generated.
[ 85%] Linking CXX static library libpoolprotocols.a
[ 85%] Built target poolprotocols
In file included from /Users/geppyz/git/ravencommunity/kawpowminer/libethcore/Farm.cpp:22:
In file included from /Users/geppyz/git/ravencommunity/kawpowminer/libethcore/../libethash-cl/CLMiner.h:28:
/Users/geppyz/git/ravencommunity/kawpowminer/libethcore/../libethash-cl/CL/cl2.hpp:1941:18: warning: definition of implicit copy constructor for 'ImageFormat' is deprecated because it has a user-declared copy assignment operator [-Wdeprecated-copy]
    ImageFormat& operator = (const ImageFormat& rhs)
                 ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/memory:916:28: note: in implicit copy constructor for 'cl::ImageFormat' first required here
        ::new ((void*)__p) _Up(_VSTD::forward<_Args>(__args)...);
                           ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/__memory/allocator_traits.h:288:13: note: in instantiation of function template specialization 'std::allocator<cl::ImageFormat>::construct<cl::ImageFormat, cl::ImageFormat &>' requested here
        __a.construct(__p, _VSTD::forward<_Args>(__args)...);
            ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/memory:1047:18: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<cl::ImageFormat>>::construct<cl::ImageFormat, cl::ImageFormat &, void>' requested here
        _Traits::construct(__a, _VSTD::__to_address(__begin2), *__begin1);
                 ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/vector:1077:12: note: in instantiation of function template specialization 'std::__construct_range_forward<std::allocator<cl::ImageFormat>, std::__wrap_iter<cl::ImageFormat *>, cl::ImageFormat *>' requested here
    _VSTD::__construct_range_forward(this->__alloc(), __first, __last, __tx.__pos_);
           ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/vector:1453:13: note: in instantiation of function template specialization 'std::vector<cl::ImageFormat>::__construct_at_end<std::__wrap_iter<cl::ImageFormat *>>' requested here
            __construct_at_end(__mid, __last, __new_size - size());
            ^
/Users/geppyz/git/ravencommunity/kawpowminer/libethcore/../libethash-cl/CL/cl2.hpp:2925:22: note: in instantiation of function template specialization 'std::vector<cl::ImageFormat>::assign<std::__wrap_iter<cl::ImageFormat *>>' requested here
            formats->assign(begin(value), end(value));
                     ^
1 warning generated.
[ 88%] Linking CXX static library libethcore.a
[ 88%] Built target ethcore
[ 91%] Building CXX object libapicore/CMakeFiles/apicore.dir/ApiServer.cpp.o
[ 94%] Linking CXX static library libapicore.a
[ 94%] Built target apicore
[ 97%] Building CXX object kawpowminer/CMakeFiles/kawpowminer.dir/main.cpp.o
In file included from /Users/geppyz/git/ravencommunity/kawpowminer/kawpowminer/main.cpp:29:
In file included from /Users/geppyz/git/ravencommunity/kawpowminer/kawpowminer/../libethash-cl/CLMiner.h:28:
/Users/geppyz/git/ravencommunity/kawpowminer/kawpowminer/../libethash-cl/CL/cl2.hpp:1941:18: warning: definition of implicit copy constructor for 'ImageFormat' is deprecated because it has a user-declared copy assignment operator [-Wdeprecated-copy]
    ImageFormat& operator = (const ImageFormat& rhs)
                 ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/memory:916:28: note: in implicit copy constructor for 'cl::ImageFormat' first required here
        ::new ((void*)__p) _Up(_VSTD::forward<_Args>(__args)...);
                           ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/__memory/allocator_traits.h:288:13: note: in instantiation of function template specialization 'std::allocator<cl::ImageFormat>::construct<cl::ImageFormat, cl::ImageFormat &>' requested here
        __a.construct(__p, _VSTD::forward<_Args>(__args)...);
            ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/memory:1047:18: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<cl::ImageFormat>>::construct<cl::ImageFormat, cl::ImageFormat &, void>' requested here
        _Traits::construct(__a, _VSTD::__to_address(__begin2), *__begin1);
                 ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/vector:1077:12: note: in instantiation of function template specialization 'std::__construct_range_forward<std::allocator<cl::ImageFormat>, std::__wrap_iter<cl::ImageFormat *>, cl::ImageFormat *>' requested here
    _VSTD::__construct_range_forward(this->__alloc(), __first, __last, __tx.__pos_);
           ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.0.sdk/usr/include/c++/v1/vector:1453:13: note: in instantiation of function template specialization 'std::vector<cl::ImageFormat>::__construct_at_end<std::__wrap_iter<cl::ImageFormat *>>' requested here
            __construct_at_end(__mid, __last, __new_size - size());
            ^
/Users/geppyz/git/ravencommunity/kawpowminer/kawpowminer/../libethash-cl/CL/cl2.hpp:2925:22: note: in instantiation of function template specialization 'std::vector<cl::ImageFormat>::assign<std::__wrap_iter<cl::ImageFormat *>>' requested here
            formats->assign(begin(value), end(value));
                     ^
1 warning generated.
[100%] Linking CXX executable kawpowminer
ld: warning: ignoring file /Users/geppyz/.hunter/_Base/1151d53/0e5dd6f/5cd9d89/Install/lib/libssl.a, missing required architecture arm64 in file /Users/geppyz/.hunter/_Base/1151d53/0e5dd6f/5cd9d89/Install/lib/libssl.a (1 slices)
ld: warning: ignoring file /Users/geppyz/.hunter/_Base/1151d53/0e5dd6f/5cd9d89/Install/lib/libcrypto.a, missing required architecture arm64 in file /Users/geppyz/.hunter/_Base/1151d53/0e5dd6f/5cd9d89/Install/lib/libcrypto.a (1 slices)
Undefined symbols for architecture arm64:
  "_BIO_ctrl", referenced from:
      boost::asio::ssl::detail::engine::map_error_code(boost::system::error_code&) const in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_BIO_ctrl_pending", referenced from:
      boost::asio::ssl::detail::engine::perform(int (boost::asio::ssl::detail::engine::*)(void*, unsigned long), void*, unsigned long, boost::system::error_code&, unsigned long*) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_BIO_free", referenced from:
      boost::asio::ssl::detail::stream_core::stream_core<boost::asio::executor>(ssl_ctx_st*, boost::asio::executor const&) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >::~stream() in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_BIO_new_bio_pair", referenced from:
      boost::asio::ssl::detail::engine::engine(ssl_ctx_st*) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_BIO_read", referenced from:
      boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::ssl::detail::shutdown_op, boost::asio::detail::wrapped_handler<boost::asio::io_context::strand, boost::_bi::bind_t<void, boost::_mfi::mf1<void, EthStratumClient, boost::system::error_code const&>, boost::_bi::list2<boost::_bi::value<EthStratumClient*>, boost::arg<1> (*)()> >, boost::asio::detail::is_continuation_if_running> >::operator()(boost::system::error_code, unsigned long, int) in libpoolprotocols.a(EthStratumClient.cpp.o)
      unsigned long boost::asio::ssl::detail::io<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::ssl::detail::handshake_op>(boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>&, boost::asio::ssl::detail::stream_core&, boost::asio::ssl::detail::handshake_op const&, boost::system::error_code&) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::ssl::detail::read_op<boost::asio::mutable_buffers_1>, boost::asio::detail::read_dynbuf_v1_op<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >, boost::asio::basic_streambuf_ref<std::__1::allocator<char> >, boost::asio::detail::transfer_at_least_t, boost::asio::detail::wrapped_handler<boost::asio::io_context::strand, boost::_bi::bind_t<void, boost::_mfi::mf2<void, EthStratumClient, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<EthStratumClient*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::asio::detail::is_continuation_if_running> > >::operator()(boost::system::error_code, unsigned long, int) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::ssl::detail::write_op<boost::asio::const_buffers_1>, boost::asio::detail::write_op<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >, boost::asio::const_buffers_1, boost::asio::const_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::detail::write_dynbuf_v1_op<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >, boost::asio::basic_streambuf_ref<std::__1::allocator<char> >, boost::asio::detail::transfer_all_t, boost::asio::detail::wrapped_handler<boost::asio::io_context::strand, boost::_bi::bind_t<void, boost::_mfi::mf1<void, EthStratumClient, boost::system::error_code const&>, boost::_bi::list2<boost::_bi::value<EthStratumClient*>, boost::arg<1> (*)()> >, boost::asio::detail::is_continuation_if_running> > > >::operator()(boost::system::error_code, unsigned long, int) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_BIO_write", referenced from:
      boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::ssl::detail::shutdown_op, boost::asio::detail::wrapped_handler<boost::asio::io_context::strand, boost::_bi::bind_t<void, boost::_mfi::mf1<void, EthStratumClient, boost::system::error_code const&>, boost::_bi::list2<boost::_bi::value<EthStratumClient*>, boost::arg<1> (*)()> >, boost::asio::detail::is_continuation_if_running> >::operator()(boost::system::error_code, unsigned long, int) in libpoolprotocols.a(EthStratumClient.cpp.o)
      unsigned long boost::asio::ssl::detail::io<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::ssl::detail::handshake_op>(boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>&, boost::asio::ssl::detail::stream_core&, boost::asio::ssl::detail::handshake_op const&, boost::system::error_code&) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::ssl::detail::read_op<boost::asio::mutable_buffers_1>, boost::asio::detail::read_dynbuf_v1_op<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >, boost::asio::basic_streambuf_ref<std::__1::allocator<char> >, boost::asio::detail::transfer_at_least_t, boost::asio::detail::wrapped_handler<boost::asio::io_context::strand, boost::_bi::bind_t<void, boost::_mfi::mf2<void, EthStratumClient, boost::system::error_code const&, unsigned long>, boost::_bi::list3<boost::_bi::value<EthStratumClient*>, boost::arg<1> (*)(), boost::arg<2> (*)()> >, boost::asio::detail::is_continuation_if_running> > >::operator()(boost::system::error_code, unsigned long, int) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::detail::io_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::ssl::detail::write_op<boost::asio::const_buffers_1>, boost::asio::detail::write_op<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >, boost::asio::const_buffers_1, boost::asio::const_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::detail::write_dynbuf_v1_op<boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >, boost::asio::basic_streambuf_ref<std::__1::allocator<char> >, boost::asio::detail::transfer_all_t, boost::asio::detail::wrapped_handler<boost::asio::io_context::strand, boost::_bi::bind_t<void, boost::_mfi::mf1<void, EthStratumClient, boost::system::error_code const&>, boost::_bi::list2<boost::_bi::value<EthStratumClient*>, boost::arg<1> (*)()> >, boost::asio::detail::is_continuation_if_running> > > >::operator()(boost::system::error_code, unsigned long, int) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_CONF_modules_unload", referenced from:
      boost::asio::ssl::detail::openssl_init_base::instance() in main.cpp.o
      std::__1::__shared_ptr_pointer<boost::asio::ssl::detail::openssl_init_base::do_init*, std::__1::shared_ptr<boost::asio::ssl::detail::openssl_init_base::do_init>::__shared_ptr_default_delete<boost::asio::ssl::detail::openssl_init_base::do_init, boost::asio::ssl::detail::openssl_init_base::do_init>, std::__1::allocator<boost::asio::ssl::detail::openssl_init_base::do_init> >::__on_zero_shared() in main.cpp.o
      boost::asio::ssl::detail::openssl_init_base::instance() in libpoolprotocols.a(PoolManager.cpp.o)
      std::__1::__shared_ptr_pointer<boost::asio::ssl::detail::openssl_init_base::do_init*, std::__1::shared_ptr<boost::asio::ssl::detail::openssl_init_base::do_init>::__shared_ptr_default_delete<boost::asio::ssl::detail::openssl_init_base::do_init, boost::asio::ssl::detail::openssl_init_base::do_init>, std::__1::allocator<boost::asio::ssl::detail::openssl_init_base::do_init> >::__on_zero_shared() in libpoolprotocols.a(PoolManager.cpp.o)
      boost::asio::ssl::detail::openssl_init_base::instance() in libapicore.a(ApiServer.cpp.o)
      std::__1::__shared_ptr_pointer<boost::asio::ssl::detail::openssl_init_base::do_init*, std::__1::shared_ptr<boost::asio::ssl::detail::openssl_init_base::do_init>::__shared_ptr_default_delete<boost::asio::ssl::detail::openssl_init_base::do_init, boost::asio::ssl::detail::openssl_init_base::do_init>, std::__1::allocator<boost::asio::ssl::detail::openssl_init_base::do_init> >::__on_zero_shared() in libapicore.a(ApiServer.cpp.o)
      boost::asio::ssl::detail::openssl_init_base::instance() in libpoolprotocols.a(EthStratumClient.cpp.o)
      ...
  "_ERR_clear_error", referenced from:
      boost::asio::ssl::context::context(boost::asio::ssl::context_base::method) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::context::load_verify_file(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, boost::system::error_code&) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::detail::engine::perform(int (boost::asio::ssl::detail::engine::*)(void*, unsigned long), void*, unsigned long, boost::system::error_code&, unsigned long*) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_ERR_get_error", referenced from:
      boost::asio::ssl::context::context(boost::asio::ssl::context_base::method) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::context::load_verify_file(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, boost::system::error_code&) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::detail::engine::engine(ssl_ctx_st*) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::detail::engine::perform(int (boost::asio::ssl::detail::engine::*)(void*, unsigned long), void*, unsigned long, boost::system::error_code&, unsigned long*) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_ERR_reason_error_string", referenced from:
      boost::asio::error::detail::ssl_category::message(int) const in main.cpp.o
      boost::asio::error::detail::ssl_category::message(int) const in libpoolprotocols.a(PoolManager.cpp.o)
      boost::asio::error::detail::ssl_category::message(int) const in libapicore.a(ApiServer.cpp.o)
      boost::asio::error::detail::ssl_category::message(int) const in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_GENERAL_NAMES_free", referenced from:
      boost::asio::ssl::rfc2818_verification::operator()(bool, boost::asio::ssl::verify_context&) const in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_OPENSSL_sk_num", referenced from:
      boost::asio::ssl::rfc2818_verification::operator()(bool, boost::asio::ssl::verify_context&) const in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_OPENSSL_sk_value", referenced from:
      boost::asio::ssl::rfc2818_verification::operator()(bool, boost::asio::ssl::verify_context&) const in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_CTX_ctrl", referenced from:
      boost::asio::ssl::context::context(boost::asio::ssl::context_base::method) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_CTX_free", referenced from:
      boost::asio::ssl::context::~context() in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_CTX_get_default_passwd_cb_userdata", referenced from:
      boost::asio::ssl::context::~context() in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_CTX_get_ex_data", referenced from:
      boost::asio::ssl::context::~context() in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_CTX_load_verify_locations", referenced from:
      boost::asio::ssl::context::load_verify_file(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, boost::system::error_code&) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_CTX_new", referenced from:
      boost::asio::ssl::context::context(boost::asio::ssl::context_base::method) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_CTX_set_default_passwd_cb_userdata", referenced from:
      boost::asio::ssl::context::~context() in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_CTX_set_ex_data", referenced from:
      boost::asio::ssl::context::~context() in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_CTX_set_options", referenced from:
      boost::asio::ssl::context::context(boost::asio::ssl::context_base::method) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_accept", referenced from:
      boost::asio::ssl::detail::engine::do_accept(void*, unsigned long) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_connect", referenced from:
      boost::asio::ssl::detail::engine::do_connect(void*, unsigned long) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_ctrl", referenced from:
      boost::asio::ssl::detail::engine::engine(ssl_ctx_st*) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_free", referenced from:
      boost::asio::ssl::detail::stream_core::stream_core<boost::asio::executor>(ssl_ctx_st*, boost::asio::executor const&) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >::~stream() in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_get_error", referenced from:
      boost::asio::ssl::detail::engine::perform(int (boost::asio::ssl::detail::engine::*)(void*, unsigned long), void*, unsigned long, boost::system::error_code&, unsigned long*) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_get_ex_data", referenced from:
      boost::asio::ssl::detail::stream_core::stream_core<boost::asio::executor>(ssl_ctx_st*, boost::asio::executor const&) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >::~stream() in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::detail::engine::set_verify_callback(boost::asio::ssl::detail::verify_callback_base*, boost::system::error_code&) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::detail::engine::verify_callback_function(int, x509_store_ctx_st*) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_get_ex_data_X509_STORE_CTX_idx", referenced from:
      boost::asio::ssl::detail::engine::verify_callback_function(int, x509_store_ctx_st*) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_get_shutdown", referenced from:
      boost::asio::ssl::detail::engine::map_error_code(boost::system::error_code&) const in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_get_verify_callback", referenced from:
      boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >::set_verify_mode(int) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_get_verify_mode", referenced from:
      boost::asio::ssl::detail::engine::set_verify_callback(boost::asio::ssl::detail::verify_callback_base*, boost::system::error_code&) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_new", referenced from:
      boost::asio::ssl::detail::engine::engine(ssl_ctx_st*) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_read", referenced from:
      boost::asio::ssl::detail::engine::do_read(void*, unsigned long) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_set_bio", referenced from:
      boost::asio::ssl::detail::engine::engine(ssl_ctx_st*) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_set_ex_data", referenced from:
      boost::asio::ssl::detail::stream_core::stream_core<boost::asio::executor>(ssl_ctx_st*, boost::asio::executor const&) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >::~stream() in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::detail::engine::set_verify_callback(boost::asio::ssl::detail::verify_callback_base*, boost::system::error_code&) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_set_verify", referenced from:
      boost::asio::ssl::stream<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor> >::set_verify_mode(int) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::detail::engine::set_verify_callback(boost::asio::ssl::detail::verify_callback_base*, boost::system::error_code&) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_shutdown", referenced from:
      boost::asio::ssl::detail::engine::do_shutdown(void*, unsigned long) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_SSL_write", referenced from:
      boost::asio::ssl::detail::engine::do_write(void*, unsigned long) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_TLS_client_method", referenced from:
      boost::asio::ssl::context::context(boost::asio::ssl::context_base::method) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_TLS_method", referenced from:
      boost::asio::ssl::context::context(boost::asio::ssl::context_base::method) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_TLS_server_method", referenced from:
      boost::asio::ssl::context::context(boost::asio::ssl::context_base::method) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_X509_NAME_ENTRY_get_data", referenced from:
      boost::asio::ssl::rfc2818_verification::operator()(bool, boost::asio::ssl::verify_context&) const in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_X509_NAME_get_entry", referenced from:
      boost::asio::ssl::rfc2818_verification::operator()(bool, boost::asio::ssl::verify_context&) const in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_X509_NAME_get_index_by_NID", referenced from:
      boost::asio::ssl::rfc2818_verification::operator()(bool, boost::asio::ssl::verify_context&) const in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_X509_NAME_oneline", referenced from:
      verbose_verification<boost::asio::ssl::rfc2818_verification>::operator()(bool, boost::asio::ssl::verify_context&) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_X509_STORE_CTX_get_current_cert", referenced from:
      verbose_verification<boost::asio::ssl::rfc2818_verification>::operator()(bool, boost::asio::ssl::verify_context&) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::rfc2818_verification::operator()(bool, boost::asio::ssl::verify_context&) const in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_X509_STORE_CTX_get_error_depth", referenced from:
      boost::asio::ssl::rfc2818_verification::operator()(bool, boost::asio::ssl::verify_context&) const in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_X509_STORE_CTX_get_ex_data", referenced from:
      boost::asio::ssl::detail::engine::verify_callback_function(int, x509_store_ctx_st*) in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_X509_get_ext_d2i", referenced from:
      boost::asio::ssl::rfc2818_verification::operator()(bool, boost::asio::ssl::verify_context&) const in libpoolprotocols.a(EthStratumClient.cpp.o)
  "_X509_get_subject_name", referenced from:
      verbose_verification<boost::asio::ssl::rfc2818_verification>::operator()(bool, boost::asio::ssl::verify_context&) in libpoolprotocols.a(EthStratumClient.cpp.o)
      boost::asio::ssl::rfc2818_verification::operator()(bool, boost::asio::ssl::verify_context&) const in libpoolprotocols.a(EthStratumClient.cpp.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [kawpowminer/kawpowminer] Error 1
make[1]: *** [kawpowminer/CMakeFiles/kawpowminer.dir/all] Error 2
make: *** [all] Error 2