cryptonotefoundation / cryptonote

CryptoNote protocol implementation. This is the reference repository for starting a new CryptoNote currency. See /src/cryptonote_config.h
https://cryptonote.org/
991 stars 6.1k forks source link

Error while make Crypto chacha8.h #328

Open markxoe opened 4 years ago

markxoe commented 4 years ago

/home/mark/toastbrotcoin/src/crypto/chacha8.h: In function ‘void Crypto::generate_chacha8_key(Crypto::cn_context&, const string&, Crypto::chacha8_key&)’: /home/mark/toastbrotcoin/src/crypto/chacha8.h:48:40: error: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of non-trivially copyable type ‘struct Crypto::chacha8_key’; use copy-assignment or copy-initialization instead [-Werror=class-memaccess] 48 | memcpy(&key, &pwd_hash, sizeof(key)); | ^ /home/mark/toastbrotcoin/src/crypto/chacha8.h:23:10: note: ‘struct Crypto::chacha8_key’ declared here 23 | struct chacha8_key { | ^~~~~~~~~~~

Hello, I tried to solve the problem with reinstalling gcc... I installed boost with sudo apt install libboost-all-dev Can anyone help me?

SoraKohaku commented 4 years ago

it's on algorithm. you need tweak on simple think. what you used OS atm?

On Sun, Mar 8, 2020 at 11:46 PM markxoe notifications@github.com wrote:

/home/mark/toastbrotcoin/src/crypto/chacha8.h: In function ‘void Crypto::generate_chacha8_key(Crypto::cn_context&, const string&, Crypto::chacha8_key&)’: /home/mark/toastbrotcoin/src/crypto/chacha8.h:48:40: error: ‘void memcpy(void, const void*, size_t)’ writing to an object of non-trivially copyable type ‘struct Crypto::chacha8_key’; use copy-assignment or copy-initialization instead [-Werror=class-memaccess] 48 | memcpy(&key, &pwd_hash, sizeof(key)); | ^ /home/mark/toastbrotcoin/src/crypto/chacha8.h:23:10: note: ‘struct Crypto::chacha8_key’ declared here 23 | struct chacha8_key { | ^~~

Hello, I tried to solve the problem with reinstalling gcc... I installed boost with sudo apt install libboost-all-dev Can anyone help me?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/cryptonotefoundation/cryptonote/issues/328?email_source=notifications&email_token=ACXHLNN6K4P4AMLFVZH6VBTRGPDXBA5CNFSM4LD26S52YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4ITMM2TQ, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACXHLNN5TKNN253IHOORB7TRGPDXBANCNFSM4LD26S5Q .

-- Nur1Labs©2010


Site Info -> Here https://nur1labs.com/

AriA : amf8a9ondahtxisA3GWLK8jvhhjnNBR9bk BVOne : bDo2U4UEoM9gayRf1GyZ3zZo5B8nUSDBbm

markxoe commented 4 years ago

It is Linux.... I also tried boost 1.58

SoraKohaku commented 4 years ago

No version is not name like ubuntu 16.x

On Tue, Mar 10, 2020, 01:15 markxoe notifications@github.com wrote:

It is Linux....

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/cryptonotefoundation/cryptonote/issues/328?email_source=notifications&email_token=ACXHLNICN5D27QSEL324RJDRGUW4XA5CNFSM4LD26S52YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEOINORY#issuecomment-596694855, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACXHLNL7JZINVXKOKNV4C4TRGUW4XANCNFSM4LD26S5Q .

ghost commented 3 years ago

Downgrade to Ubuntu 16.X Along with this don't forget to run: apt-get update && apt-get upgrade

Also, in some circumstances the code in CMakeLists.txt is outdated. In that cases reference @ghost s post here: https://github.com/cryptonotefoundation/cryptonote/issues/292

In short, in CMakeLists.txt change: target_link_libraries(ConnectivityTool CryptoNoteCore Common Logging Crypto P2P Rpc Http Serialization System ${Boost_LIBRARIES})

to

target_link_libraries(ConnectivityTool CryptoNoteCore Logging Crypto P2P Rpc Http Serialization Common System ${Boost_LIBRARIES})

Sorry if this is a dead thread but this worked for me!

JoshuaPaulBarnard commented 11 months ago

How to Compile a CryptoNote Coin on Windows 10/11

There has been an active issue for over 5 years now when trying to build the source on modern compilers.

Here is how I was able to compile my CryptoNote Coin using Windows 10.
You can also check for any updates to this guide at my blog: https://joshuapaulbarnard.tech.blog/2023/10/04/how-to-compile-a-cryptonote-coin-on-windows-10-11/

I made this guide on Windows 10 in October, 2023.

If you need help compiling on Linux, then you can check my Ubuntu 14/16 guide.

WINDOWS DEPENDENCIES FOR CRYPTONOTE

We are going to build for 64-bit Windows.

Download the Build Tools for Visual Studio 2019 Installer When it opens up select C++ build tools, it automatically selects the needed parts. Make sure MSVC v141 Build Tools is selected. Install Boost v1.71.0. Select the appropriate version for your system. Boost 64-bit

COMPILING CRYPTONOTE ON WINDOWS WITH VS2019

From the start menu, open Developer Command Prompt for VS 2019. cd mkdir build cd build cmake -G "Visual Studio 16 2019" -A x64 .. -DBOOST_ROOT=B:/local/boost_1_71_0 MSBuild CryptoNote.sln /p:Configuration=Release /p:PlatformToolset=v141 /m