emarkproject / eMark

https://deutsche-emark.org
MIT License
24 stars 36 forks source link

Search tutorial for Raspberry pi #47

Open DAllion666 opened 6 years ago

DAllion666 commented 6 years ago

Information about rasp version (lsb_release -a):

Someone give this but it's not working: `ich habe eine alte Anleitung gefunden von aphex.

Hier eine kurze Anleitung zum Bau der Binaries und deren Verwendung:

Raspbian auf der SD Karte des Raspberry Pi installieren
Den Pi booten und die üblichen Einstellungen vornehmen (Passwort, Locale, Zeitzone, SSH, etc.)
Ich betreibe den PI nur im Textmodus, aber das kann ja jeder für sich entscheiden
Auf dem Pi mit SSH (Windows user können dazu PuTTy verwenden) als user "pi" einloggen und das OS updaten:
sudo apt-get update
sudo apt-get upgrade
sudo shutdown -r now
(Der Pi rebootet nach dem letzten Befehl und beendet die SSH Session)
Auf dem Pi mit SSH (Windows user können dazu PuTTy verwenden) als user "pi" einloggen und die nötigen Pakete für eMarkd und cgminer installieren:
sudo apt-get install git autoconf libcurl4-openssl-dev libncurses5-dev libtool libjansson-dev libudev-dev libusb-1.0-0-dev libdb-dev libdb++-dev libboost-all-dev libqrencode-dev libminiupnpc-dev
sudo apt-get install qt4-qmake libqt4-dev build-essential libboost-dev libboost-system-dev libboost-filesystem-dev libboost-program-options-dev libboost-thread-dev libssl-dev libdb++-dev libminiupnpc-dev git
apt-get install build-essential libssl-dev libdb-dev libdb++-dev libboost-all-dev libqrencode-dev libminiupnpc-dev
Immernoch auf dem Raspberry als user "pi" angemeldet den eMark Source Code herunterladen:
git clone https://github.com/emarkproject/eMark
In das Verzeichnis eMark/src wechseln
cd eMark/src
Das Makefile anpassen. Dazu mit einem Text Editor (vi, nano, ...) die Datei makefile.unix öffnen und nach "-msse2" suchen. Dieses Flag steht in den CXXFLAGS - wird vom Raspberry aber nicht unterstützt. Also einfach nur diesen einen Parameter "-msse2" (aktuell in Zeile 96) löschen und die Datei speichern.
eMarkd bauen:
make -f makefile.unix
(Dieser Schritt dauert ca. 1 Stunde!)
strip eMarkd
Das eMarkd executable nach /usr/bin kopieren (optional)
sudo cp eMarkd /usr/bin
eMarkd zum ersten Mal starten:
eMarkd
und wieder beenden:
eMarkd stop
Konfiguration anlegen
Im Home-Verzeichnis der Benutzers "pi" gibt es jetzt ein verstecktes Verzeichnis ".eMark". Ihr könnt es sichtbar machen, wenn ihr im Homeverzeichnis "ls -la" eingebt. Wechselt in dieses Verzeichnis und legt die Konfigurationsdatei an:
cd ~/.eMark
vi eMark.conf
(alternativ könnt ihr auch nano oder einen anderen Editor verwenden)
In die Konfigurationsdatei kommt nun folgender Inhalt:

daemon=1
server=1
rpcuser=<username>
rpcpassword=<password>
rpcallowip=127.0.0.1
rpcport=8925
# addnode=84.200.38.169 eMark Live

Wählt einen Benutzernamen und ein Passwort! Der rpcport ist frei wählbar - falls ihr mehrere *coin-daemons auf dem Raspi laufen lasst, braucht jeder seinen eigenen Port. Danach die Datei speichern.
eMarkd mit der Konfiguration neu starten
eMarkd
Der eMarkd Daemon läuft nun im Hintergrund und synchronisiert die Blockchain. Ihr könnt das im Befehl "top" sehen - eMarkd wird einer der aktivsten Prozesse sein, bis die komplette Blockchain lokal gespeichert ist. Falls ihr mehr über die Aktivität von eMarkd wissen möchtet, könnt ihr mit
tail -f ~/.eMark/debug.log
verfolgen was grade passiert (mit <ctrl-c> beendet man den tail Befehl und kehrt zum command prompt zurück).

`

I have an issue on make "-f makefile.unix": g++ -c -O2 -pthread -Wall -Wextra -Wno-ignored-qualifiers -Wformat -Wformat-security -Wno-unused-parameter -g -DBOOST_SPIRIT_THREADSAFE -I/home/pi/eMark-wallet/src -I/home/pi/eMark-wallet/src/obj -DUSE_UPNP=0 -DENABLE_WALLET -I/home/pi/eMark-wallet/src/leveldb/include -I/home/pi/eMark-wallet/src/leveldb/helpers -DHAVE_BUILD_INFO -fno-stack-protector -fstack-protector-all -Wstack-protector -D_FORTIFY_SOURCE=2 -MMD -MF obj/alert.d -o obj/alert.o alert.cpp In file included from chainparams.h:9:0, from alert.cpp:7: bignum.h:57:24: error: invalid use of incomplete type ‘BIGNUM {aka struct bignum_st}’ class CBigNum : public BIGNUM ^~ In file included from /usr/include/openssl/crypto.h:31:0, from allocators.h:12, from serialize.h:22, from alert.h:9, from alert.cpp:5: /usr/include/openssl/ossl_typ.h:80:16: note: forward declaration of ‘BIGNUM {aka struct bignum_st}’ typedef struct bignum_st BIGNUM; ^~~~~ ... ... ... ^ makefile.unix:171 : la recette pour la cible « obj/alert.o » a échouée make: *** [obj/alert.o] Erreur 1