Install xmr-stak 2.4 in a machine with NVIDIA video card under Ubuntu 18.04 LTS

This is simple “how to” to get started mining crypto currency with XMR-STAK using cryptonight algorithm like monero, electroneum, intensecoin and more. This time we are going to use PPA repository for the NVIDIA drivers and the CUDA toolkit. Installing the official NVIDIA driver we can use our ASUS ROG POSEIDON GTX 1080Ti Platinum Edition to mine along with our processor AMD Ryzen Threadripper 1950X (16 cores with 32 threads with 3.4GHz base frequency and boost to 4GHz).
XMR-STAK could be used only for CPU mining, but now we installed an NVIDIA card and Ubuntu 18.04 LTS. Ubuntu is installed with the default open source NVIDIA driver (nouveau), which is OK for every day and office use, but if you like to game or to mine you must install the proprietary driver shipped by NVIDIA. The following howto will show you how to do it!

Just follow the simple steps and you’ll have an optimized GPU and CPU miner for cryptonight crypto currencies:

STEP 1) Install Ubuntu 18.04 LTS.

If you do not have Ubuntu installed yet it is time to do it. You can see how easy is to do it here even if you have multiple systems installed – Install Ubuntu Desktop 18.04 LTS on a PC with existing windows 10 and linux If your machine is only for mining and you want to have only one system it’s even simpler and you can still follow the above howto!

STEP 2) Install NVIDIA proprietary driver and CUDA Toolkit

Here we show you a brief command set to execute, but if you want a detailed explanations you could check the two howtos on the subject: Install NVIDIA proprietary drivers on Ubuntu 18.0 LTS (x86_64) and Install NVIDIA Cuda on Ubuntu 18.04 LTS (x86_64)

myuser@srv:~$ sudo apt -y update
myuser@srv:~$ sudo add-apt-repository -y ppa:graphics-drivers/ppa
myuser@srv:~$ sudo apt -y update
myuser@srv:~$ sudo ubuntu-drivers autoinstall
myuser@srv:~$ sudo reboot
myuser@srv:~$ sudo apt install -y nvidia-cuda-toolkit gcc-6

Check if your driver is loaded successfully before continuing:

myuser@srv:~$ dmesg|grep -i nvidia
[    1.414268] nvidia: loading out-of-tree module taints kernel.
[    1.414273] nvidia: module license 'NVIDIA' taints kernel.
[    1.632334] nvidia: module verification failed: signature and/or required key missing - tainting kernel
[    1.639698] nvidia-nvlink: Nvlink Core is being initialized, major device number 236
[    1.640031] nvidia 0000:0a:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=io+mem
[    1.640146] NVRM: loading NVIDIA UNIX x86_64 Kernel Module  396.24.10  Tue Jul 10 10:00:18 PDT 2018 (using threaded interrupts)
[    1.647029] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  396.24.10  Tue Jul 10 08:53:56 PDT 2018
[    1.648372] [drm] [nvidia-drm] [GPU ID 0x00000a00] Loading driver
[    1.648373] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:0a:00.0 on minor 0
[   37.086767] nvidia-uvm: Loaded the UVM driver in 8 mode, major device number 511
[   37.761570] caller os_map_kernel_space.part.7+0xda/0x120 [nvidia] mapping multiple BARs
[   38.532918] input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:03.1/0000:0a:00.1/sound/card0/input16
[   38.532960] input: HDA NVidia HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:03.1/0000:0a:00.1/sound/card0/input17
[   38.532996] input: HDA NVidia HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:03.1/0000:0a:00.1/sound/card0/input18
[   38.533028] input: HDA NVidia HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:03.1/0000:0a:00.1/sound/card0/input19
[   40.851562] caller os_map_kernel_space.part.7+0xda/0x120 [nvidia] mapping multiple BARs
[   41.205592] nvidia-modeset: Allocated GPU:0 (GPU-3bad60bf-8ff7-4cba-8b51-a931299a56d8) @ PCI:0000:0a:00.0

STEP 3) Install dependencies for XMR-STAK

Around 380Mbytes of libraries and tools to be installed in addition.

myuser@srv:~$ sudo apt -y install libboost-all-dev libleveldb-dev libcurl4-openssl-dev libmicrohttpd-dev libminiupnpc-dev libgmp-dev libmicrohttpd-dev libssl-dev cmake build-essential screen git
Reading package lists... Done
Building dependency tree       
Reading state information... Done
build-essential is already the newest version (12.4ubuntu1).
build-essential set to manually installed.
The following additional packages will be installed:
  autotools-dev cmake-data dh-python gir1.2-harfbuzz-0.0 ibverbs-providers icu-devtools libboost-atomic-dev libboost-atomic1.65-dev libboost-atomic1.65.1
  libboost-chrono-dev libboost-chrono1.65-dev libboost-chrono1.65.1 libboost-container-dev libboost-container1.65-dev libboost-container1.65.1 libboost-context-dev
  libboost-context1.65-dev libboost-context1.65.1 libboost-coroutine-dev libboost-coroutine1.65-dev libboost-coroutine1.65.1 libboost-date-time-dev
  libboost-date-time1.65-dev libboost-dev libboost-exception-dev libboost-exception1.65-dev libboost-fiber-dev libboost-fiber1.65-dev libboost-fiber1.65.1
  libboost-filesystem-dev libboost-filesystem1.65-dev libboost-graph-dev libboost-graph-parallel-dev libboost-graph-parallel1.65-dev libboost-graph-parallel1.65.1
  libboost-graph1.65-dev libboost-graph1.65.1 libboost-iostreams-dev libboost-iostreams1.65-dev libboost-locale-dev libboost-locale1.65-dev libboost-log-dev
  libboost-log1.65-dev libboost-log1.65.1 libboost-math-dev libboost-math1.65-dev libboost-math1.65.1 libboost-mpi-dev libboost-mpi-python-dev libboost-mpi-python1.65-dev
  libboost-mpi-python1.65.1 libboost-mpi1.65-dev libboost-mpi1.65.1 libboost-numpy-dev libboost-numpy1.65-dev libboost-numpy1.65.1 libboost-program-options-dev
  libboost-program-options1.65-dev libboost-program-options1.65.1 libboost-python-dev libboost-python1.65-dev libboost-python1.65.1 libboost-random-dev
  libboost-random1.65-dev libboost-random1.65.1 libboost-regex-dev libboost-regex1.65-dev libboost-regex1.65.1 libboost-serialization-dev libboost-serialization1.65-dev
  libboost-serialization1.65.1 libboost-signals-dev libboost-signals1.65-dev libboost-signals1.65.1 libboost-stacktrace-dev libboost-stacktrace1.65-dev
  libboost-stacktrace1.65.1 libboost-system-dev libboost-system1.65-dev libboost-test-dev libboost-test1.65-dev libboost-test1.65.1 libboost-thread-dev
  libboost-thread1.65-dev libboost-timer-dev libboost-timer1.65-dev libboost-timer1.65.1 libboost-tools-dev libboost-type-erasure-dev libboost-type-erasure1.65-dev
  libboost-type-erasure1.65.1 libboost-wave-dev libboost-wave1.65-dev libboost-wave1.65.1 libboost1.65-dev libboost1.65-tools-dev libcurl4 libexpat1-dev libfabric1
  libgcrypt20-dev libglib2.0-dev libglib2.0-dev-bin libgmpxx4ldbl libgnutls-dane0 libgnutls-openssl27 libgnutls28-dev libgnutlsxx28 libgpg-error-dev libgraphite2-dev
  libharfbuzz-dev libharfbuzz-gobject0 libhwloc-dev libhwloc-plugins libhwloc5 libibverbs-dev libibverbs1 libicu-dev libicu-le-hb-dev libicu-le-hb0 libiculx60
  libidn2-0-dev libidn2-dev libjsoncpp1 libleveldb1v5 libltdl-dev libmicrohttpd12 libnl-route-3-200 libnuma-dev libopenmpi-dev libopenmpi2 libp11-kit-dev libpcre16-3
  libpcre3-dev libpcre32-3 libpcrecpp0v5 libpsm-infinipath1 libpython-dev libpython-stdlib libpython2.7-dev libpython3-dev libpython3.6-dev librdmacm1 librhash0
  libsnappy1v5 libssl-doc libtasn1-6-dev libtasn1-doc libtool libunbound2 libuv1 mpi-default-bin mpi-default-dev nettle-dev openmpi-bin openmpi-common python python-dev
  python-minimal python2.7 python2.7-dev python2.7-minimal python3-dev python3-distutils python3-lib2to3 python3.6-dev zlib1g-dev git-man liberror-perl libutempter0
Suggested packages:
  cmake-doc ninja-build libboost-doc graphviz libboost1.65-doc gccxml libmpfrc++-dev libntl-dev xsltproc doxygen docbook-xml docbook-xsl default-jdk fop libcurl4-doc
  libidn11-dev libkrb5-dev libldap2-dev librtmp-dev libssh2-1-dev libgcrypt20-doc libglib2.0-doc gmp-doc libgmp10-doc libmpfr-dev gnutls-doc gnutls-bin libgraphite2-utils
  libhwloc-contrib-plugins icu-doc leveldb-doc libtool-doc minissdpd openmpi-doc autoconf automaken gfortran | fortran95-compiler gcj-jdk gfortran python-doc python-tk git-daemon-run | git-daemon-sysvinit git-doc git-el git-email git-gui gitk gitweb git-cvs git-mediawiki git-svn byobu | screenie | iselect
  python2.7-doc binfmt-support
The following NEW packages will be installed:
  autotools-dev cmake cmake-data dh-python gir1.2-harfbuzz-0.0 ibverbs-providers icu-devtools libboost-all-dev libboost-atomic-dev libboost-atomic1.65-dev
  libboost-atomic1.65.1 libboost-chrono-dev libboost-chrono1.65-dev libboost-chrono1.65.1 libboost-container-dev libboost-container1.65-dev libboost-container1.65.1
  libboost-context-dev libboost-context1.65-dev libboost-context1.65.1 libboost-coroutine-dev libboost-coroutine1.65-dev libboost-coroutine1.65.1 libboost-date-time-dev
  libboost-date-time1.65-dev libboost-dev libboost-exception-dev libboost-exception1.65-dev libboost-fiber-dev libboost-fiber1.65-dev libboost-fiber1.65.1
  libboost-filesystem-dev libboost-filesystem1.65-dev libboost-graph-dev libboost-graph-parallel-dev libboost-graph-parallel1.65-dev libboost-graph-parallel1.65.1
  libboost-graph1.65-dev libboost-graph1.65.1 libboost-iostreams-dev libboost-iostreams1.65-dev libboost-locale-dev libboost-locale1.65-dev libboost-log-dev
  libboost-log1.65-dev libboost-log1.65.1 libboost-math-dev libboost-math1.65-dev libboost-math1.65.1 libboost-mpi-dev libboost-mpi-python-dev libboost-mpi-python1.65-dev
  libboost-mpi-python1.65.1 libboost-mpi1.65-dev libboost-mpi1.65.1 libboost-numpy-dev libboost-numpy1.65-dev libboost-numpy1.65.1 libboost-program-options-dev
  libboost-program-options1.65-dev libboost-program-options1.65.1 libboost-python-dev libboost-python1.65-dev libboost-python1.65.1 libboost-random-dev
  libboost-random1.65-dev libboost-random1.65.1 libboost-regex-dev libboost-regex1.65-dev libboost-regex1.65.1 libboost-serialization-dev libboost-serialization1.65-dev
  libboost-serialization1.65.1 libboost-signals-dev libboost-signals1.65-dev libboost-signals1.65.1 libboost-stacktrace-dev libboost-stacktrace1.65-dev
  libboost-stacktrace1.65.1 libboost-system-dev libboost-system1.65-dev libboost-test-dev libboost-test1.65-dev libboost-test1.65.1 libboost-thread-dev
  libboost-thread1.65-dev libboost-timer-dev libboost-timer1.65-dev libboost-timer1.65.1 libboost-tools-dev libboost-type-erasure-dev libboost-type-erasure1.65-dev
  libboost-type-erasure1.65.1 libboost-wave-dev libboost-wave1.65-dev libboost-wave1.65.1 libboost1.65-dev libboost1.65-tools-dev libcurl4 libcurl4-openssl-dev
  libexpat1-dev libfabric1 libgcrypt20-dev libglib2.0-dev libglib2.0-dev-bin libgmp-dev libgmpxx4ldbl libgnutls-dane0 libgnutls-openssl27 libgnutls28-dev libgnutlsxx28
  libgpg-error-dev libgraphite2-dev libharfbuzz-dev libharfbuzz-gobject0 libhwloc-dev libhwloc-plugins libhwloc5 libibverbs-dev libibverbs1 libicu-dev libicu-le-hb-dev
  libicu-le-hb0 libiculx60 libidn2-0-dev libidn2-dev libjsoncpp1 libleveldb-dev libleveldb1v5 libltdl-dev libmicrohttpd-dev libmicrohttpd12 libminiupnpc-dev
  libnl-route-3-200 libnuma-dev libopenmpi-dev libopenmpi2 libp11-kit-dev libpcre16-3 libpcre3-dev libpcre32-3 libpcrecpp0v5 libpsm-infinipath1 libpython-dev
  libpython-stdlib libpython2.7-dev libpython3-dev libpython3.6-dev librdmacm1 librhash0 libsnappy1v5 libssl-dev libssl-doc libtasn1-6-dev libtasn1-doc libtool
  libunbound2 libuv1 mpi-default-bin mpi-default-dev nettle-dev openmpi-bin openmpi-common python python-dev python-minimal python2.7 python2.7-dev python2.7-minimal
  python3-dev python3-distutils python3-lib2to3 python3.6-dev zlib1g-dev git git-man liberror-perl libutempter0 screen
0 upgraded, 179 newly installed, 0 to remove and 26 not upgraded.
Need to get 76.9 MB of archives.
After this operation, 380 MB of additional disk space will be used.
Get:1 http://gb.archive.ubuntu.com/ubuntu bionic/main amd64 python2.7-minimal amd64 2.7.15~rc1-1 [1292 kB]
....
....

Tune the screen program (this is not mandatory, but is important to have good scrolling) and start screen.

myuser@srv:~$ echo "termcapinfo xterm* ti@:te@" >> ~/.screenrc
myuser@srv:~$ screen -R xmr-stak

STEP 4) Compile XMR-STAK

First get the sources from the official github repository. The master is now with tag 2.4.7. If you do not know how to work with git and want the exact tag version it is easy, just open in the browser “https://github.com/fireice-uk/xmr-stak” change “Branch:master” (click on it and a dropdown will appear, click the tab “Tag” and select your tag version) to “Tag:2.4.7” then click on “Clone or download” on the right and click on “Download ZIP” and it will offer you to download a zip file with the name 2.4.7.zip (here is the URL: https://codeload.github.com/fireice-uk/xmr-stak/zip/2.4.7).
This step it is important to note that we MUST build XMR-STAK with GNU GCC 6 (6.4.0) and the default GNU GCC in Ubuntu 18.04 LTS is 7 (7.3.0), so we export environment variables “CC” and “CXX” to use gcc-6. Exporting CC and CXX is enough to compile succeessfully no need to mess with “update-alternatives”.

myuser@srv:~$ git clone https://github.com/fireice-uk/xmr-stak
Cloning into 'xmr-stak'...
remote: Counting objects: 5078, done.
remote: Total 5078 (delta 0), reused 0 (delta 0), pack-reused 5078
Receiving objects: 100% (5078/5078), 1.48 MiB | 1.86 MiB/s, done.
Resolving deltas: 100% (3628/3628), done.
myuser@srv:~$ #or just download the tag version 2.4.7 from this url: https://codeload.github.com/fireice-uk/xmr-stak/zip/2.4.7 or as it was described above. This 3 lines are comments, if you want tag 2.4.7 just uncomment the second and the third lines
myuser@srv:~$ #wget https://codeload.github.com/fireice-uk/xmr-stak/zip/2.4.7
myuser@srv:~$ #unzip 2.4.7.zip
myuser@srv:~$ mkdir -p ./xmr-stak/build
myuser@srv:~$ cd ./xmr-stak/build
myuser@srv:~/xmr-stak/build$ export CFLAGS="-O2 -march=native -msse3 -fomit-frame-pointer -pipe"
myuser@srv:~/xmr-stak/build$ export CHOST="x86_64-pc-linux-gnu"
myuser@srv:~/xmr-stak/build$ export CXXFLAGS="${CFLAGS}"
myuser@srv:~/xmr-stak/build$ export LDFLAGS="-Wl,-O1"
myuser@srv:~/xmr-stak/build$ export CC=/usr/bin/gcc-6
myuser@srv:~/xmr-stak/build$ export CXX=/usr/bin/g++-6
myuser@srv:~/xmr-stak/build$ cmake ../
-- The C compiler identification is GNU 6.4.0
-- The CXX compiler identification is GNU 6.4.0
-- Check for working C compiler: /usr/bin/gcc-6
-- Check for working C compiler: /usr/bin/gcc-6 -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/g++-6
-- Check for working CXX compiler: /usr/bin/g++-6 -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Found CUDA: /usr (found suitable version "9.1", minimum required is "7.5") 
-- Looking for CL_VERSION_2_2
-- Looking for CL_VERSION_2_2 - found
-- Found OpenCL: /usr/lib/x86_64-linux-gnu/libOpenCL.so (found version "2.2") 
-- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "1.1.0g") 
-- Configuring done
-- Generating done
-- Build files have been written to: /home/myuser/xmr-stak/build
myuser@srv:~/xmr-stak/build$ make -j 16
Scanning dependencies of target xmr-stak-c
[  8%] Building C object CMakeFiles/xmr-stak-c.dir/xmrstak/backend/cpu/crypto/c_jh.c.o
[  8%] Building C object CMakeFiles/xmr-stak-c.dir/xmrstak/backend/cpu/crypto/c_blake256.c.o
[  8%] Building C object CMakeFiles/xmr-stak-c.dir/xmrstak/backend/cpu/crypto/c_skein.c.o
[ 11%] Building C object CMakeFiles/xmr-stak-c.dir/xmrstak/backend/cpu/crypto/c_groestl.c.o
[ 14%] Building C object CMakeFiles/xmr-stak-c.dir/xmrstak/backend/cpu/crypto/c_keccak.c.o
[ 17%] Linking C static library bin/libxmr-stak-c.a
[ 17%] Built target xmr-stak-c
Scanning dependencies of target xmr-stak-backend
[ 20%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/version.cpp.o
[ 22%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/jconf.cpp.o
[ 25%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/backend/backendConnector.cpp.o
[ 28%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/misc/telemetry.cpp.o
[ 34%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/net/jpsock.cpp.o
[ 34%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/misc/executor.cpp.o
[ 37%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/http/httpd.cpp.o
[ 42%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/backend/cpu/hwlocMemory.cpp.o
[ 42%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/backend/cpu/jconf.cpp.o
[ 45%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/backend/cpu/crypto/cryptonight_common.cpp.o
[ 48%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/backend/cpu/minethd.cpp.o
[ 51%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/misc/console.cpp.o
[ 54%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/backend/globalStates.cpp.o
[ 57%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/http/webdesign.cpp.o
[ 60%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/misc/uac.cpp.o
[ 62%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/misc/utility.cpp.o
[ 65%] Building CXX object CMakeFiles/xmr-stak-backend.dir/xmrstak/net/socket.cpp.o
[ 68%] Linking CXX static library bin/libxmr-stak-backend.a
[ 68%] Built target xmr-stak-backend
[ 71%] Building NVCC (Device) object CMakeFiles/xmrstak_cuda_backend.dir/xmrstak/backend/nvidia/nvcc_code/xmrstak_cuda_backend_generated_cuda_extra.cu.o
[ 74%] Building NVCC (Device) object CMakeFiles/xmrstak_cuda_backend.dir/xmrstak/backend/nvidia/nvcc_code/xmrstak_cuda_backend_generated_cuda_core.cu.o
Scanning dependencies of target xmr-stak
Scanning dependencies of target xmrstak_opencl_backend
[ 77%] Building CXX object CMakeFiles/xmr-stak.dir/xmrstak/cli/cli-miner.cpp.o
[ 85%] Building CXX object CMakeFiles/xmrstak_opencl_backend.dir/xmrstak/backend/amd/jconf.cpp.o
[ 85%] Building CXX object CMakeFiles/xmrstak_opencl_backend.dir/xmrstak/backend/amd/amd_gpu/gpu.cpp.o
[ 85%] Building CXX object CMakeFiles/xmrstak_opencl_backend.dir/xmrstak/backend/amd/minethd.cpp.o
[ 88%] Linking CXX executable bin/xmr-stak
[ 88%] Built target xmr-stak
[ 91%] Linking CXX shared library bin/libxmrstak_opencl_backend.so
[ 91%] Built target xmrstak_opencl_backend
Scanning dependencies of target xmrstak_cuda_backend
[ 94%] Building CXX object CMakeFiles/xmrstak_cuda_backend.dir/xmrstak/backend/nvidia/jconf.cpp.o
[ 97%] Building CXX object CMakeFiles/xmrstak_cuda_backend.dir/xmrstak/backend/nvidia/minethd.cpp.o
[100%] Linking CXX shared library bin/libxmrstak_cuda_backend.so
[100%] Built target xmrstak_cuda_backend
myuser@srv:~/xmr-stak/build$

STEP 5) Execute XMR-STAK, but before you must execute some tuning exports for the GPU and the linux kernel

Now is the time to use XMR-STAK.

myuser@srv:~/xmr-stak/build$ sudo sysctl -w vm.nr_hugepages=128
myuser@srv:~/xmr-stak/build$ export GPU_FORCE_64BIT_PTR=0
myuser@srv:~/xmr-stak/build$ export GPU_MAX_HEAP_SIZE=100
myuser@srv:~/xmr-stak/build$ export GPU_USE_SYNC_OBJECTS=1
myuser@srv:~/xmr-stak/build$ export GPU_MAX_ALLOC_PERCENT=100
myuser@srv:~/xmr-stak/build$ export GPU_SINGLE_ALLOC_PERCENT=100
myuser@srv:~/xmr-stak/build$ cd ./bin
myuser@srv:~/xmr-stak/build/bin$ ls -la
total 35804
drwxrwxr-x 2 myuser myuser     4096 Jul 19 16:13 .
drwxrwxr-x 4 myuser myuser     4096 Jul 19 16:05 ..
-rw-rw-r-- 1 myuser myuser  1614230 Jul 19 16:05 libxmr-stak-backend.a
-rw-rw-r-- 1 myuser myuser    75182 Jul 19 16:05 libxmr-stak-c.a
-rwxrwxr-x 1 myuser myuser 32570440 Jul 19 16:13 libxmrstak_cuda_backend.so
-rwxrwxr-x 1 myuser myuser  1307456 Jul 19 16:06 libxmrstak_opencl_backend.so
-rwxrwxr-x 1 myuser myuser  1075784 Jul 19 16:06 xmr-stak
myuser@srv:~/xmr-stak/build/bin$ ./xmr-stak 

Always execute the exports before running the xmr-stak binary.
As you can see the XMR-STAK is in

./bin/xmr-stak

under the “~/xmr-stak/build”.

STEP 6) Mining with XMR-STAK.

Execute the program and follow the first run questions. Here you can see a MONERO configuration and the first run – Mining Monero with xmr-stak 2.4 in a machine with NVIDIA video card under Ubuntu 18.04 LTS.

* Options of the XMR-STAK program

As you can see all the algo you can use with this program – new and classic (the old) criptonight coins to mine like Monero, Electroneum, IntenseCoin and many more!

myuser@srv:~/xmr-stak/build/bin$ ./xmr-stak --help
Usage: xmr-stak [OPTION]...
 
  -h, --help                 show this help
  -v, --version              show version number
  -V, --version-long         show long version number
  -c, --config FILE          common miner configuration file
  -C, --poolconf FILE        pool configuration file
  --benchmark BLOCKVERSION   ONLY do a benchmark and exit
  --benchwait WAIT_SEC             ... benchmark wait time
  --benchwork WORK_SEC             ... benchmark work time
  --noCPU                    disable the CPU miner backend
  --cpu FILE                 CPU backend miner config file
  --noAMD                    disable the AMD miner backend
  --noAMDCache               disable the AMD(OpenCL) cache for precompiled binaries
  --openCLVendor VENDOR      use OpenCL driver of VENDOR and devices [AMD,NVIDIA]
                             default: AMD
  --amd FILE                 AMD backend miner config file
  --noNVIDIA                 disable the NVIDIA miner backend
  --nvidia FILE              NVIDIA backend miner config file
  -i --httpd HTTP_PORT       HTTP interface port
 
The following options can be used for automatic start without a guided config,
If config exists then this pool will be top priority.
  -o, --url URL              pool url and port, e.g. pool.usxmrpool.com:3333
  -O, --tls-url URL          TLS pool url and port, e.g. pool.usxmrpool.com:10443
  -u, --user USERNAME        pool user name or wallet address
  -r, --rigid RIGID          rig identifier for pool-side statistics (needs pool support)
  -p, --pass PASSWD          pool password, in the most cases x or empty ""
  --use-nicehash             the pool should run in nicehash mode
  --currency NAME            currency to mine

Supported coin options: 
        - aeon7
        - bbscoin
        - bittube
        - cryptonight
        - cryptonight_bittube2
        - cryptonight_masari
        - cryptonight_haven
        - cryptonight_heavy
        - cryptonight_lite
        - cryptonight_lite_v7
        - cryptonight_lite_v7_xor
        - cryptonight_v7
        - cryptonight_v7_stellite
        - graft
        - haven
        - intense
        - masari
        - monero7
        - ryo
        - stellite
        - turtlecoin

Version: xmr-stak 2.4.7 c5f0505
Brought to by fireice_uk and psychocrypt under GPLv3.

* Troubleshooting – the right version of GNU GCC

You must use GNU GCC 6, because version above 6 (7 and 8) are not supported by the NVIDIA 9.1 Toolkit. So if you end up with this error you must change to the version to 6 from 7 (the default in Ubuntu 18.04 LTS is GNU 7.3.0). GNU GCC 6 was installed as a dependency to NVIDIA 9.1 Toolkit in STEP 2) and we exported two environments “CC” and “CCX” in STEP 4)

[ 85%] Building CXX object CMakeFiles/xmrstak_opencl_backend.dir/xmrstak/backend/amd/jconf.cpp.o
In file included from /usr/include/host_config.h:50:0,
                 from /usr/include/cuda_runtime.h:78,
                 from <command-line>:0:
/usr/include/crt/host_config.h:121:2: error: #error -- unsupported GNU version! gcc versions later than 6 are not supported!
 #error -- unsupported GNU version! gcc versions later than 6 are not supported!
  ^~~~~
In file included from /usr/include/host_config.h:50:0,
                 from /usr/include/cuda_runtime.h:78,
                 from <command-line>:0:
/usr/include/crt/host_config.h:121:2: error: #error -- unsupported GNU version! gcc versions later than 6 are not supported!
 #error -- unsupported GNU version! gcc versions later than 6 are not supported!
  ^~~~~
CMake Error at xmrstak_cuda_backend_generated_cuda_core.cu.o.Release.cmake:219 (message):
  Error generating
  /home/myuser/xmr-stak/build/CMakeFiles/xmrstak_cuda_backend.dir/xmrstak/backend/nvidia/nvcc_code/./xmrstak_cuda_backend_generated_cuda_core.cu.o


CMakeFiles/xmrstak_cuda_backend.dir/build.make:63: recipe for target 'CMakeFiles/xmrstak_cuda_backend.dir/xmrstak/backend/nvidia/nvcc_code/xmrstak_cuda_backend_generated_cuda_core.cu.o' failed
make[2]: *** [CMakeFiles/xmrstak_cuda_backend.dir/xmrstak/backend/nvidia/nvcc_code/xmrstak_cuda_backend_generated_cuda_core.cu.o] Error 1
make[2]: *** Waiting for unfinished jobs....
CMake Error at xmrstak_cuda_backend_generated_cuda_extra.cu.o.Release.cmake:219 (message):
  Error generating
  /home/myuser/xmr-stak/build/CMakeFiles/xmrstak_cuda_backend.dir/xmrstak/backend/nvidia/nvcc_code/./xmrstak_cuda_backend_generated_cuda_extra.cu.o


CMakeFiles/xmrstak_cuda_backend.dir/build.make:70: recipe for target 'CMakeFiles/xmrstak_cuda_backend.dir/xmrstak/backend/nvidia/nvcc_code/xmrstak_cuda_backend_generated_cuda_extra.cu.o' failed
make[2]: *** [CMakeFiles/xmrstak_cuda_backend.dir/xmrstak/backend/nvidia/nvcc_code/xmrstak_cuda_backend_generated_cuda_extra.cu.o] Error 1
CMakeFiles/Makefile2:105: recipe for target 'CMakeFiles/xmrstak_cuda_backend.dir/all' failed
make[1]: *** [CMakeFiles/xmrstak_cuda_backend.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 88%] Linking CXX executable bin/xmr-stak
[ 88%] Built target xmr-stak
[ 91%] Linking CXX shared library bin/libxmrstak_opencl_backend.so
[ 91%] Built target xmrstak_opencl_backend
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

The solution is simple as said, just export CC and CXX before compilation in the same terminal console:

myuser@srv:~$ export CC=/usr/bin/gcc-6
myuser@srv:~$ export CXX=/usr/bin/g++-6

Mining Monero with xmr-stak 2.4 in a machine with NVIDIA video card under Ubuntu 18.04 LTS

Here are all the steps you need to begin mining Monero crypto coin with XMR-STAK 2.4. We can use our ASUS ROG POSEIDON GTX 1080Ti Platinum Edition to mine along with our processor AMD Ryzen Threadripper 1950X (16 cores with 32 threads with 3.4GHz base frequency and boost to 4GHz). As you’ll see our processor has better performance with cryptonight v7 than our GPU.

STEP 1) Install all the needed software

  1. Install linux distro – Ubuntu 18.04 LTS
  2. Install NVIDIA proprietary driver
  3. Install NVIDIA CURA Toolkit
  4. Build XMR-STAK

This step is a matter of another howto, you can check all the step and detail explanations here – Install xmr-stak 2.4 in a machine with NVIDIA video card under Ubuntu 18.04 LTS. Skip it if you just followed the above howto and you want to see an example of how to mine the Monero coins with XMR-STAK using CPU and GPU power.

STEP 2) First run of XMR-STAK

If you followed our howto above you should have installed XMR-STAK in “~/xmr-stak/build/bin”, so all the examples will be run from this directory.

myuser@srv:~/xmr-stak/build/bin$ ./xmr-stak 
Please enter:
- Do you want to use the HTTP interface?
Unlike the screen display, browser interface is not affected by the GPU lag.
If you don't want to use it, please enter 0, otherwise enter port number that the miner should listen on
0
Configuration stored in file 'config.txt'
Please enter:
- Please enter the currency that you want to mine: 
        - aeon7
        - bbscoin
        - bittube
        - cryptonight
        - cryptonight_bittube2
        - cryptonight_masari
        - cryptonight_haven
        - cryptonight_heavy
        - cryptonight_lite
        - cryptonight_lite_v7
        - cryptonight_lite_v7_xor
        - cryptonight_v7
        - cryptonight_v7_stellite
        - graft
        - haven
        - intense
        - masari
        - monero7
        - ryo
        - stellite
        - turtlecoin

cryptonight_v7
- Pool address: e.g. pool.example.com:3333
pool.monero.spacepools.org:3333
- Username (wallet address or pool login):
111111111111111111111111111111111111111111111111111111111111111111111
- Password (mostly empty or x):
mining@example.com
- Rig identifier for pool-side statistics (needs pool support). Can be empty:

- Does this pool port support TLS/SSL? Use no if unknown. (y/N)
N
- Do you want to use nicehash on this pool? (y/n)
n
- Do you want to use multiple pools? (y/n)
n
Pool configuration stored in file 'pools.txt'
-------------------------------------------------------------------
xmr-stak 2.4.7 c5f0505

Brought to you by fireice_uk and psychocrypt under GPLv3.
Based on CPU mining code by wolf9466 (heavily optimized by fireice_uk).
Based on NVIDIA mining code by KlausT and psychocrypt.
Based on OpenCL mining code by wolf9466.

Configurable dev donation level is set to 2.0%

You can use following keys to display reports:
'h' - hashrate
'r' - results
'c' - connection
-------------------------------------------------------------------
[2018-07-20 03:13:52] : Mining coin: cryptonight_v7
[2018-07-20 03:13:52] : NVIDIA: GPU configuration stored in file 'nvidia.txt'
[2018-07-20 03:13:52] : Starting NVIDIA GPU thread 0, no affinity.
[2018-07-20 03:13:52] : WARNING: No AMD OpenCL platform found. Possible driver issues or wrong vendor driver.
[2018-07-20 03:13:52] : WARNING: backend AMD (OpenCL) disabled.
[2018-07-20 03:13:52] : CPU configuration stored in file 'cpu.txt'
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 0.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 1.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 2.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 3.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 4.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 5.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 6.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 7.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 8.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 9.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 10.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 11.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 12.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 13.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 14.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Starting 1x thread, affinity: 15.
[2018-07-20 03:13:52] : hwloc: memory pinned
[2018-07-20 03:13:52] : Fast-connecting to pool.monero.spacepools.org:3333 pool ...
[2018-07-20 03:13:52] : Pool pool.monero.spacepools.org:3333 connected. Logging in...
[2018-07-20 03:13:53] : Difficulty changed. Now: 50000.
[2018-07-20 03:13:53] : Pool logged in.
[2018-07-20 03:14:16] : Result accepted by the pool.
[2018-07-20 03:14:23] : Difficulty changed. Now: 35000.
[2018-07-20 03:14:23] : New block detected.
[2018-07-20 03:14:24] : Result accepted by the pool.
[2018-07-20 03:14:27] : Result accepted by the pool.
[2018-07-20 03:14:38] : Difficulty changed. Now: 45500.
[2018-07-20 03:14:38] : New block detected.
[2018-07-20 03:14:53] : Difficulty changed. Now: 31850.
[2018-07-20 03:14:53] : New block detected.
[2018-07-20 03:14:59] : Result accepted by the pool.
[2018-07-20 03:15:06] : Result accepted by the pool.
[2018-07-20 03:15:08] : Difficulty changed. Now: 41405.
[2018-07-20 03:15:08] : New block detected.
[2018-07-20 03:15:18] : Result accepted by the pool.
[2018-07-20 03:15:23] : Difficulty changed. Now: 51756.
[2018-07-20 03:15:23] : New block detected.
[2018-07-20 03:15:38] : Difficulty changed. Now: 38817.
[2018-07-20 03:15:38] : New block detected.
[2018-07-20 03:16:08] : New block detected.
[2018-07-20 03:16:08] : Difficulty changed. Now: 27172.
[2018-07-20 03:16:08] : New block detected.
[2018-07-20 03:16:08] : Result accepted by the pool.
HASHRATE REPORT - CPU
| ID |    10s |    60s |    15m | ID |    10s |    60s |    15m |
|  0 |   80.3 |   80.3 |   (na) |  1 |   80.7 |   80.7 |   (na) |
|  2 |   80.7 |   80.7 |   (na) |  3 |   80.7 |   80.7 |   (na) |
|  4 |   81.2 |   81.1 |   (na) |  5 |   81.2 |   81.1 |   (na) |
|  6 |   81.2 |   81.1 |   (na) |  7 |   81.2 |   81.1 |   (na) |
|  8 |   80.8 |   81.0 |   (na) |  9 |   80.5 |   81.0 |   (na) |
| 10 |   81.0 |   81.1 |   (na) | 11 |   81.0 |   81.0 |   (na) |
| 12 |   81.2 |   81.2 |   (na) | 13 |   81.2 |   81.2 |   (na) |
| 14 |   81.1 |   81.1 |   (na) | 15 |   81.2 |   81.2 |   (na) |
Totals (CPU):  1295.2 1295.8    0.0 H/s
-----------------------------------------------------------------
HASHRATE REPORT - NVIDIA
| ID |    10s |    60s |    15m |
|  0 |   (na) |  772.2 |   (na) |
Totals (NVIDIA):     0.0  772.2    0.0 H/s
-----------------------------------------------------------------
Totals (ALL):   1295.2 2068.0    0.0 H/s
Highest:  2069.8 H/s
-----------------------------------------------------------------
[2018-07-20 03:16:15] : Result accepted by the pool.
RESULT REPORT
Difficulty       : 27172
Good results     : 8 / 8 (100.0 %)
Avg result time  : 17.6 sec
Pool-side hashes : 279449

Top 10 best results found:
|  0 |           179318 |  1 |            98494 |
|  2 |            65145 |  3 |            59550 |
|  4 |            58982 |  5 |            50332 |
|  6 |            42050 |  7 |            34703 |
|  8 |                0 |  9 |                0 |

Error details:
Yay! No errors.
[2018-07-20 03:16:23] : Difficulty changed. Now: 35324.
[2018-07-20 03:16:23] : New block detected.
[2018-07-20 03:16:38] : Difficulty changed. Now: 24727.
[2018-07-20 03:16:38] : New block detected.
[2018-07-20 03:16:42] : Result accepted by the pool.
[2018-07-20 03:16:49] : Result accepted by the pool.
[2018-07-20 03:16:53] : Difficulty changed. Now: 32145.
[2018-07-20 03:16:53] : New block detected.
[2018-07-20 03:16:55] : Result accepted by the pool.
[2018-07-20 03:17:08] : Difficulty changed. Now: 41789.
[2018-07-20 03:17:08] : New block detected.
[2018-07-20 03:17:23] : Difficulty changed. Now: 29252.
[2018-07-20 03:17:23] : New block detected.
[2018-07-20 03:17:47] : Result accepted by the pool.
[2018-07-20 03:17:53] : Difficulty changed. Now: 20476.
[2018-07-20 03:17:53] : New block detected.
[2018-07-20 03:17:54] : Result accepted by the pool.
[2018-07-20 03:18:00] : Result accepted by the pool.
[2018-07-20 03:18:08] : Difficulty changed. Now: 26619.
[2018-07-20 03:18:08] : New block detected.
[2018-07-20 03:18:15] : Result accepted by the pool.
[2018-07-20 03:18:21] : Result accepted by the pool.
[2018-07-20 03:18:23] : Difficulty changed. Now: 34605.
[2018-07-20 03:18:23] : New block detected.
[2018-07-20 03:18:30] : Result accepted by the pool.
[2018-07-20 03:18:30] : Result accepted by the pool.
[2018-07-20 03:18:36] : Result accepted by the pool.
[2018-07-20 03:18:38] : Difficulty changed. Now: 44987.
[2018-07-20 03:18:38] : New block detected.
[2018-07-20 03:18:53] : Difficulty changed. Now: 39694.
[2018-07-20 03:18:53] : New block detected.
[2018-07-20 03:18:55] : Result accepted by the pool.
[2018-07-20 03:18:56] : Result accepted by the pool.
[2018-07-20 03:19:08] : Difficulty changed. Now: 51602.
[2018-07-20 03:19:08] : New block detected.
[2018-07-20 03:19:23] : Difficulty changed. Now: 36121.
[2018-07-20 03:19:23] : New block detected.
[2018-07-20 03:19:28] : New block detected.
[2018-07-20 03:19:37] : Result accepted by the pool.
[2018-07-20 03:20:01] : Result accepted by the pool.
[2018-07-20 03:20:08] : Difficulty changed. Now: 28517.
[2018-07-20 03:20:08] : New block detected.
[2018-07-20 03:20:08] : New block detected.
[2018-07-20 03:20:23] : Difficulty changed. Now: 19962.
[2018-07-20 03:20:23] : New block detected.
[2018-07-20 03:20:23] : Result accepted by the pool.
[2018-07-20 03:20:30] : Result accepted by the pool.
[2018-07-20 03:20:31] : Result accepted by the pool.
[2018-07-20 03:20:38] : Difficulty changed. Now: 25951.
[2018-07-20 03:20:38] : New block detected.
[2018-07-20 03:20:45] : Result accepted by the pool.
[2018-07-20 03:21:08] : Difficulty changed. Now: 21041.
[2018-07-20 03:21:08] : New block detected.
[2018-07-20 03:21:18] : Result accepted by the pool.
[2018-07-20 03:21:23] : Difficulty changed. Now: 27353.
[2018-07-20 03:21:23] : New block detected.
[2018-07-20 03:21:26] : Result accepted by the pool.
[2018-07-20 03:21:32] : Result accepted by the pool.
[2018-07-20 03:21:35] : Result accepted by the pool.
[2018-07-20 03:21:38] : Difficulty changed. Now: 35559.
[2018-07-20 03:21:38] : New block detected.
[2018-07-20 03:21:53] : Difficulty changed. Now: 29633.
[2018-07-20 03:21:53] : New block detected.
[2018-07-20 03:21:55] : Result accepted by the pool.
[2018-07-20 03:22:08] : Difficulty changed. Now: 38523.
[2018-07-20 03:22:08] : New block detected.
[2018-07-20 03:22:23] : Difficulty changed. Now: 26966.
[2018-07-20 03:22:23] : New block detected.
[2018-07-20 03:22:28] : Result accepted by the pool.
[2018-07-20 03:22:38] : Difficulty changed. Now: 35056.
[2018-07-20 03:22:38] : New block detected.
[2018-07-20 03:22:49] : Result accepted by the pool.
[2018-07-20 03:22:52] : Result accepted by the pool.
[2018-07-20 03:22:53] : Difficulty changed. Now: 43820.
[2018-07-20 03:22:53] : New block detected.
[2018-07-20 03:23:00] : Result accepted by the pool.
[2018-07-20 03:23:08] : Difficulty changed. Now: 56966.
[2018-07-20 03:23:08] : New block detected.
[2018-07-20 03:23:13] : Result accepted by the pool.
[2018-07-20 03:23:23] : Difficulty changed. Now: 65730.
[2018-07-20 03:23:23] : New block detected.
[2018-07-20 03:23:23] : Result accepted by the pool.
[2018-07-20 03:23:30] : New block detected.
[2018-07-20 03:23:38] : Difficulty changed. Now: 85449.
[2018-07-20 03:23:38] : New block detected.
[2018-07-20 03:23:53] : Difficulty changed. Now: 59814.
[2018-07-20 03:23:53] : New block detected.
[2018-07-20 03:24:07] : Result accepted by the pool.
[2018-07-20 03:24:35] : New block detected.
[2018-07-20 03:24:38] : Difficulty changed. Now: 41870.
[2018-07-20 03:24:38] : New block detected.
[2018-07-20 03:25:08] : Difficulty changed. Now: 29309.
[2018-07-20 03:25:08] : New block detected.
[2018-07-20 03:25:38] : Difficulty changed. Now: 20516.
[2018-07-20 03:25:38] : New block detected.
[2018-07-20 03:25:49] : Result accepted by the pool.
[2018-07-20 03:25:53] : Difficulty changed. Now: 26671.
[2018-07-20 03:25:53] : New block detected.
[2018-07-20 03:26:08] : Difficulty changed. Now: 21056.
[2018-07-20 03:26:08] : New block detected.
[2018-07-20 03:26:15] : Result accepted by the pool.
[2018-07-20 03:26:22] : Result accepted by the pool.
[2018-07-20 03:26:23] : Difficulty changed. Now: 27373.
[2018-07-20 03:26:23] : New block detected.
[2018-07-20 03:26:52] : Result accepted by the pool.
[2018-07-20 03:26:53] : Difficulty changed. Now: 19161.
[2018-07-20 03:26:53] : New block detected.
[2018-07-20 03:26:56] : Result accepted by the pool.
[2018-07-20 03:27:08] : Difficulty changed. Now: 24909.
[2018-07-20 03:27:08] : New block detected.
[2018-07-20 03:27:19] : Result accepted by the pool.
[2018-07-20 03:27:23] : Difficulty changed. Now: 17436.
[2018-07-20 03:27:23] : New block detected.
[2018-07-20 03:27:26] : Result accepted by the pool.
[2018-07-20 03:27:36] : Result accepted by the pool.
[2018-07-20 03:27:38] : Difficulty changed. Now: 22667.
[2018-07-20 03:27:38] : New block detected.
[2018-07-20 03:27:43] : Result accepted by the pool.
[2018-07-20 03:27:43] : Result accepted by the pool.
[2018-07-20 03:27:49] : Result accepted by the pool.
[2018-07-20 03:27:53] : Difficulty changed. Now: 29467.
[2018-07-20 03:27:53] : New block detected.
[2018-07-20 03:27:57] : Result accepted by the pool.
[2018-07-20 03:28:00] : Result accepted by the pool.
[2018-07-20 03:28:03] : Result accepted by the pool.
[2018-07-20 03:28:08] : Difficulty changed. Now: 38307.
[2018-07-20 03:28:08] : New block detected.
[2018-07-20 03:28:23] : Difficulty changed. Now: 28730.
[2018-07-20 03:28:23] : New block detected.
[2018-07-20 03:28:30] : Result accepted by the pool.
[2018-07-20 03:28:30] : Result accepted by the pool.
[2018-07-20 03:28:35] : Result accepted by the pool.
[2018-07-20 03:28:37] : Result accepted by the pool.
[2018-07-20 03:28:37] : Result accepted by the pool.
[2018-07-20 03:28:38] : Difficulty changed. Now: 37349.
[2018-07-20 03:28:38] : New block detected.
[2018-07-20 03:29:07] : Result accepted by the pool.
[2018-07-20 03:29:08] : Difficulty changed. Now: 26144.
[2018-07-20 03:29:08] : New block detected.
[2018-07-20 03:29:36] : Result accepted by the pool.
[2018-07-20 03:29:38] : Result accepted by the pool.
[2018-07-20 03:29:38] : Difficulty changed. Now: 18301.
[2018-07-20 03:29:38] : New block detected.
[2018-07-20 03:29:41] : Result accepted by the pool.
[2018-07-20 03:29:45] : Result accepted by the pool.
[2018-07-20 03:29:50] : Result accepted by the pool.
[2018-07-20 03:29:53] : Difficulty changed. Now: 23791.
[2018-07-20 03:29:53] : New block detected.
[2018-07-20 03:29:58] : New block detected.
[2018-07-20 03:29:58] : Result accepted by the pool.
[2018-07-20 03:30:08] : Difficulty changed. Now: 30928.
[2018-07-20 03:30:08] : New block detected.
[2018-07-20 03:30:12] : Result accepted by the pool.
[2018-07-20 03:30:13] : Result accepted by the pool.
[2018-07-20 03:30:23] : Difficulty changed. Now: 40206.
[2018-07-20 03:30:23] : New block detected.
[2018-07-20 03:30:24] : Result accepted by the pool.
[2018-07-20 03:30:38] : Difficulty changed. Now: 52268.
[2018-07-20 03:30:38] : New block detected.
[2018-07-20 03:30:53] : Difficulty changed. Now: 36588.
[2018-07-20 03:30:53] : New block detected.
[2018-07-20 03:31:23] : Difficulty changed. Now: 25612.
[2018-07-20 03:31:23] : New block detected.
[2018-07-20 03:31:53] : Difficulty changed. Now: 17928.
[2018-07-20 03:31:53] : New block detected.
[2018-07-20 03:31:53] : Result accepted by the pool.
[2018-07-20 03:32:08] : Difficulty changed. Now: 23306.
[2018-07-20 03:32:08] : New block detected.
[2018-07-20 03:32:14] : Result accepted by the pool.
[2018-07-20 03:32:20] : Result accepted by the pool.
[2018-07-20 03:32:53] : Difficulty changed. Now: 17480.
[2018-07-20 03:32:53] : New block detected.
RESULT REPORT
Difficulty       : 17480
Good results     : 71 / 71 (100.0 %)
Avg result time  : 16.2 sec
Pool-side hashes : 2085841

Top 10 best results found:
|  0 |          4672722 |  1 |           993908 |
|  2 |           991887 |  3 |           271993 |
|  4 |           210975 |  5 |           208951 |
|  6 |           207738 |  7 |           179318 |
|  8 |           144045 |  9 |           118699 |

Error details:
Yay! No errors.
HASHRATE REPORT - CPU
| ID |    10s |    60s |    15m | ID |    10s |    60s |    15m |
|  0 |   80.3 |   80.3 |   80.3 |  1 |   80.7 |   80.7 |   80.7 |
|  2 |   80.7 |   80.7 |   80.7 |  3 |   80.7 |   80.7 |   80.7 |
|  4 |   81.2 |   81.2 |   81.2 |  5 |   81.2 |   81.2 |   81.2 |
|  6 |   81.2 |   81.2 |   81.1 |  7 |   81.2 |   81.2 |   81.2 |
|  8 |   80.7 |   81.1 |   81.0 |  9 |   80.9 |   81.1 |   81.1 |
| 10 |   80.9 |   81.0 |   81.0 | 11 |   80.9 |   81.1 |   81.1 |
| 12 |   81.0 |   81.1 |   81.1 | 13 |   81.1 |   81.1 |   81.2 |
| 14 |   81.1 |   81.1 |   81.1 | 15 |   81.1 |   81.1 |   81.2 |
Totals (CPU):  1295.1 1296.0 1295.9 H/s
-----------------------------------------------------------------
HASHRATE REPORT - NVIDIA
| ID |    10s |    60s |    15m |
|  0 |   (na) |  771.7 |  771.5 |
Totals (NVIDIA):     0.0  771.7  771.5 H/s
-----------------------------------------------------------------
Totals (ALL):   1295.1 2067.7 2067.4 H/s
Highest:  2069.9 H/s
-----------------------------------------------------------------
[2018-07-20 03:33:07] : Result accepted by the pool.
[2018-07-20 03:33:09] : Result accepted by the pool.

You could use monero7 or cryptonight_v7to mine Monero. The pool we use is under “Pool address:” – pool.monero.spacepools.org:3333 You cannot mine crypto without to be part of a pool of other mining “people”, because the difficulty is too big for solo mining! So choose your mining pool carefully – by the “Total Pool Fee”, which for the Spacepools is 0.1% and the stability of the pool.
The username is your MONERO wallet address (we changed our to invalid 111111111111111111111111111111111111111111111111111111111111111111111, DO NOT USE THIS ADDRESS) – check this to see how you can generate monero wallet address – Generate a new Monero address (wallet). The password in most cases is your email address, with which you could change some account information in the pool web page.

It is good to see

Result accepted by the pool.

it means your discovered a hash and you are going to be awarded by the pool for your mining share! As many as “accepted results” as good as for you!

As you can see our ASUS ROG POSEIDON GTX 1080Ti Platinum Edition without any overclocking has 771.5 H/s of Cryptonight v7 algorithm!
Our AMD Ryzen Threadripper 1950X (16 cores with 32 threads with 3.4GHz base frequency and boost to 4GHz) without any overclocking has 1295.1 of Cryptonight v7 algorithm! The performance of the CPU is almost double the performance of the GPU.
Our motherboard is ASUS ROG ZENITH EXTREME with 4x8Gbytes (G.Skill Trident Z RGB DIMM Kit 32GB F4-3200C14Q-32GTZR) of RAM running in fourth channel mode.

There are three control keys to display additional information of your XMR-STAK. Press one of the key during the program execution. In the above first run we used “h” and “r”.

'h' - hashrate
'r' - results
'c' - connection

And here is the stat after 5 hours:

[2018-07-20 08:42:32] : Result accepted by the pool.
RESULT REPORT
Difficulty       : 27881
Good results     : 1266 / 1266 (100.0 %)
Avg result time  : 15.6 sec
Pool-side hashes : 41195382

Top 10 best results found:
|  0 |         86854459 |  1 |         47586423 |
|  2 |         35768342 |  3 |         25208619 |
|  4 |          8208523 |  5 |          7828657 |
|  6 |          6669723 |  7 |          6490827 |
|  8 |          6448233 |  9 |          5964065 |

Error details:
Yay! No errors.
HASHRATE REPORT - CPU
| ID |    10s |    60s |    15m | ID |    10s |    60s |    15m |
|  0 |   80.3 |   80.3 |   80.3 |  1 |   80.8 |   80.8 |   80.8 |
|  2 |   80.8 |   80.8 |   80.8 |  3 |   80.8 |   80.8 |   80.8 |
|  4 |   81.2 |   81.1 |   81.1 |  5 |   81.2 |   81.1 |   81.1 |
|  6 |   81.2 |   81.1 |   81.1 |  7 |   81.2 |   81.1 |   81.1 |
|  8 |   81.0 |   80.9 |   81.0 |  9 |   81.0 |   81.0 |   81.0 |
| 10 |   81.0 |   81.0 |   80.9 | 11 |   80.5 |   80.8 |   81.0 |
| 12 |   81.2 |   81.1 |   81.1 | 13 |   81.2 |   81.2 |   81.2 |
| 14 |   81.2 |   81.2 |   81.1 | 15 |   81.2 |   81.2 |   81.1 |
Totals (CPU):  1295.7 1295.5 1295.7 H/s
-----------------------------------------------------------------
HASHRATE REPORT - NVIDIA
| ID |    10s |    60s |    15m |
|  0 |  773.0 |  769.9 |  771.6 |
Totals (NVIDIA):   773.0  769.9  771.6 H/s
-----------------------------------------------------------------
Totals (ALL):   2068.8 2065.4 2067.3 H/s
Highest:  2069.9 H/s
-----------------------------------------------------------------
[2018-07-20 08:42:42] : Result accepted by the pool.
[2018-07-20 08:42:43] : Difficulty changed. Now: 36245.
[2018-07-20 08:42:43] : New block detected.

Here we use https://dwarfpool.com/ and after 14 hours of mining:

[2018-07-21 02:21:05] : New block detected.
[2018-07-21 02:21:24] : Result accepted by the pool.
[2018-07-21 02:21:31] : Result accepted by the pool.
[2018-07-21 02:21:55] : Result accepted by the pool.
[2018-07-21 02:22:09] : Result accepted by the pool.
[2018-07-21 02:22:32] : Result accepted by the pool.
[2018-07-21 02:23:03] : Result accepted by the pool.
[2018-07-21 02:23:05] : Result accepted by the pool.
[2018-07-21 02:23:19] : Result accepted by the pool.
HASHRATE REPORT - CPU
| ID |    10s |    60s |    15m | ID |    10s |    60s |    15m |
|  0 |   80.3 |   80.3 |   80.3 |  1 |   80.8 |   80.8 |   80.8 |
|  2 |   80.8 |   80.8 |   80.8 |  3 |   80.8 |   80.8 |   80.8 |
|  4 |   81.2 |   81.1 |   81.2 |  5 |   81.2 |   81.1 |   81.2 |
|  6 |   81.2 |   81.1 |   81.1 |  7 |   81.2 |   81.1 |   81.2 |
|  8 |   81.0 |   80.9 |   81.0 |  9 |   81.0 |   81.0 |   81.0 |
| 10 |   81.0 |   81.0 |   81.0 | 11 |   81.0 |   80.8 |   81.0 |
| 12 |   81.1 |   81.2 |   81.2 | 13 |   81.1 |   81.2 |   81.2 |
| 14 |   81.1 |   81.1 |   81.1 | 15 |   81.0 |   81.2 |   81.2 |
Totals (CPU):  1295.8 1295.5 1295.8 H/s
-----------------------------------------------------------------
HASHRATE REPORT - NVIDIA
| ID |    10s |    60s |    15m |
|  0 |   (na) |  769.5 |  771.1 |
Totals (NVIDIA):     0.0  769.5  771.1 H/s
-----------------------------------------------------------------
Totals (ALL):   1295.8 2065.0 2066.9 H/s
Highest:  2069.8 H/s
-----------------------------------------------------------------
RESULT REPORT
Difficulty       : 50000
Good results     : 2592 / 2595 (99.9 %)
Avg result time  : 23.1 sec
Pool-side hashes : 3300000

Top 10 best results found:
|  0 |       1257001197 |  1 |         62229932 |
|  2 |         58697077 |  3 |         13938510 |
|  4 |         13393176 |  5 |         12264166 |
|  6 |         10357917 |  7 |          8800621 |
|  8 |          8669175 |  9 |          8547001 |

Error details:
| Count | Error text                       | Last seen           |
|     3 | [NETWORK ERROR]                  | 2018-07-20 19:26:18 |
[2018-07-21 02:45:48] : Result accepted by the pool.
[2018-07-21 02:45:50] : Result accepted by the pool.
[2018-07-21 02:46:11] : New block detected.
[2018-07-21 02:46:13] : New block detected.
[2018-07-21 02:46:44] : Result accepted by the pool.
[2018-07-21 02:46:53] : Result accepted by the pool.
[2018-07-21 02:47:21] : Result accepted by the pool.
[2018-07-21 02:47:33] : Result accepted by the pool.
[2018-07-21 02:47:48] : Result accepted by the pool.
RESULT REPORT
Difficulty       : 50000
Good results     : 2657 / 2660 (99.9 %)
Avg result time  : 20.8 sec
Pool-side hashes : 1000000

Top 10 best results found:
|  0 |       1257001197 |  1 |         62229932 |
|  2 |         58697077 |  3 |         13938510 |
|  4 |         13393176 |  5 |         12264166 |
|  6 |         10357917 |  7 |          8800621 |
|  8 |          8669175 |  9 |          8547001 |

Error details:
| Count | Error text                       | Last seen           |
|     3 | [NETWORK ERROR]                  | 2018-07-20 19:26:18 |
HASHRATE REPORT - CPU
| ID |    10s |    60s |    15m | ID |    10s |    60s |    15m |
|  0 |   80.2 |   80.3 |   77.5 |  1 |   80.7 |   80.7 |   77.9 |
|  2 |   80.7 |   80.7 |   77.9 |  3 |   80.7 |   80.7 |   77.9 |
|  4 |   81.1 |   81.1 |   78.3 |  5 |   81.1 |   81.1 |   78.3 |
|  6 |   81.1 |   81.1 |   78.3 |  7 |   81.1 |   81.1 |   78.3 |
|  8 |   81.1 |   81.0 |   78.2 |  9 |   81.1 |   81.1 |   78.2 |
| 10 |   81.1 |   81.0 |   78.2 | 11 |   81.1 |   81.1 |   78.2 |
| 12 |   81.0 |   81.1 |   78.3 | 13 |   81.1 |   81.1 |   78.3 |
| 14 |   81.0 |   81.1 |   78.3 | 15 |   81.1 |   81.1 |   78.3 |
Totals (CPU):  1295.2 1295.5 1250.7 H/s
-----------------------------------------------------------------
HASHRATE REPORT - NVIDIA
| ID |    10s |    60s |    15m |
|  0 |   (na) |  770.5 |  745.5 |
Totals (NVIDIA):     0.0  770.5  745.5 H/s
-----------------------------------------------------------------
Totals (ALL):   1295.2 2066.0 1996.1 H/s
Highest:  2069.8 H/s
-----------------------------------------------------------------
[2018-07-21 02:48:40] : New block detected.

The difficult is constant 50000 and you see we have multiple results, so we can try to higher it with another port (check for this the configuration page of the pool – https://dwarfpool.com/xmr/). The stats is “Earning in last 24 hours: 0.00753535 XMR”, “Current balance: 0.00732356 XMR” and ” Unconfirmed: 0.00078419 XMR” (in most cases all of it will be confirmed successfully), so the total monero we mined is “0.00810775 XMR” for these 14 hours with our machine and the estimate for the next 24 hours is “0.01440000 XMR” (for the current price you’ll earn 1.832300 USD for 24hours with this machine).

Here is the https://dwarfpool.com/xmr/ with almost 24 hours with difficult 100 000:

[2018-07-22 02:04:35] : Result accepted by the pool.
[2018-07-22 02:04:37] : Result accepted by the pool.
[2018-07-22 02:04:44] : Result accepted by the pool.
[2018-07-22 02:05:29] : Result accepted by the pool.
[2018-07-22 02:05:29] : Result accepted by the pool.
RESULT REPORT
Difficulty       : 100001
Good results     : 1691 / 1693 (99.9 %)
Avg result time  : 35.2 sec
Pool-side hashes : 4800048

Top 10 best results found:
|  0 |         50511124 |  1 |         32008411 |
|  2 |         27907718 |  3 |         27563158 |
|  4 |         20638537 |  5 |         19189255 |
|  6 |         18843649 |  7 |         15123109 |
|  8 |         12496904 |  9 |         12222295 |

Error details:
| Count | Error text                       | Last seen           |
|     1 | Low difficulty share             | 2018-07-21 15:11:03 |
|     1 | [NETWORK ERROR]                  | 2018-07-21 17:22:50 |
HASHRATE REPORT - CPU
| ID |    10s |    60s |    15m | ID |    10s |    60s |    15m |
|  0 |   80.3 |   80.3 |   80.3 |  1 |   80.7 |   80.7 |   80.7 |
|  2 |   80.7 |   80.7 |   80.7 |  3 |   80.7 |   80.7 |   80.7 |
|  4 |   81.1 |   81.2 |   81.1 |  5 |   81.1 |   81.2 |   81.1 |
|  6 |   80.8 |   81.1 |   81.1 |  7 |   81.1 |   81.2 |   81.1 |
|  8 |   80.9 |   81.0 |   81.0 |  9 |   81.0 |   81.0 |   81.0 |
| 10 |   81.0 |   81.1 |   81.1 | 11 |   81.0 |   81.1 |   81.1 |
| 12 |   81.0 |   81.1 |   81.1 | 13 |   81.0 |   81.1 |   81.1 |
| 14 |   80.9 |   81.1 |   81.1 | 15 |   81.0 |   81.1 |   81.1 |
Totals (CPU):  1294.5 1295.8 1295.6 H/s
-----------------------------------------------------------------
HASHRATE REPORT - NVIDIA
| ID |    10s |    60s |    15m |
|  0 |  771.4 |  770.7 |  771.0 |
Totals (NVIDIA):   771.4  770.7  771.0 H/s
-----------------------------------------------------------------
Totals (ALL):   2065.9 2066.5 2066.7 H/s
Highest:  2069.7 H/s
-----------------------------------------------------------------
[2018-07-22 02:06:15] : New block detected.

Current balance: 0.01082526 XMR, Unconfirmed: 0.00242919 XMR, the total is: 0.01325445 XMR, Earning in last 24 hours: 0.00603805 XMR. Next 24h earning with this speed: 0.01850000 XMR (with the current price of Monero 2.455200 USD) very approximated avg_24h_diff = 54061666755.14

Here is the nvidia-smi output

myuser@srv:~/xmr-stak/build/bin$ nvidia-smi 
Fri Jul 20 03:38:52 2018       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 396.24.10              Driver Version: 396.24.10                 |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 108...  Off  | 00000000:0A:00.0  On |                  N/A |
| 46%   64C    P2   143W / 275W |  10711MiB / 11173MiB |    100%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0      2119      G   /usr/lib/xorg/Xorg                            59MiB |
|    0      2170      G   /usr/bin/gnome-shell                          70MiB |
|    0     20146      C   ./xmr-stak                                 10577MiB |
+-----------------------------------------------------------------------------+

The GPU is using 143W and here is the used GPU RAM 10711MiB out of 11173MiB by xmr-stak.
All CPU cores are running at 3680.374 Mhz. The uptime is

myuser@srv:~/xmr-stak/build/bin$ uptime
 03:48:37 up 18:28,  3 users,  load average: 16.04, 16.05, 14.39

After the first run there will be created 4 files in your current directory of the xmr-stak binary:

myuser@srv:~/xmr-stak/build/bin$ ls -altr
total 35824
drwxrwxr-x 4 myuser myuser     4096 Jul 19 16:05 ..
-rw-rw-r-- 1 myuser myuser    75182 Jul 19 16:05 libxmr-stak-c.a
-rw-rw-r-- 1 myuser myuser  1614230 Jul 19 16:05 libxmr-stak-backend.a
-rwxrwxr-x 1 myuser myuser  1075784 Jul 19 16:06 xmr-stak
-rwxrwxr-x 1 myuser myuser  1307456 Jul 19 16:06 libxmrstak_opencl_backend.so
-rwxrwxr-x 1 myuser myuser 32570440 Jul 19 16:13 libxmrstak_cuda_backend.so
-rw-rw-r-- 1 myuser myuser     7228 Jul 20 03:10 config.txt
-rw-rw-r-- 1 myuser myuser     2087 Jul 20 03:13 pools.txt
-rw-rw-r-- 1 myuser myuser     2032 Jul 20 03:13 nvidia.txt
-rw-rw-r-- 1 myuser myuser     2963 Jul 20 03:13 cpu.txt
drwxrwxr-x 2 myuser myuser     4096 Jul 20 03:13 .
myuser@srv:~/xmr-stak/build/bin$

The configuration files are

  • config.txt – the general config
  • pools.txt – configuration for what coin your are mining and which pool you are using. You can tune the rig naming and additional pools.
  • nvidia.txt – configuration for GPU miner part – GPU threads, blocks and affine_to_cpu. Definitely check this out.
  • cpu.txt – configuration for the cpu miner part – Thread configuration for each thread – a line for each core. CPU affinity, power mode and more.

These files are generated on the first run with default values and then you could quit the xmr-stak and edit the files with text editor.

* Options of the XMR-STAK program

As you can see all the algo you can use with this program – new and classic (the old) criptonight coins to mine like Monero, Electroneum, IntenseCoin and many more!

myuser@srv:~/xmr-stak/build/bin$ ./xmr-stak --help
Usage: xmr-stak [OPTION]...
 
  -h, --help                 show this help
  -v, --version              show version number
  -V, --version-long         show long version number
  -c, --config FILE          common miner configuration file
  -C, --poolconf FILE        pool configuration file
  --benchmark BLOCKVERSION   ONLY do a benchmark and exit
  --benchwait WAIT_SEC             ... benchmark wait time
  --benchwork WORK_SEC             ... benchmark work time
  --noCPU                    disable the CPU miner backend
  --cpu FILE                 CPU backend miner config file
  --noAMD                    disable the AMD miner backend
  --noAMDCache               disable the AMD(OpenCL) cache for precompiled binaries
  --openCLVendor VENDOR      use OpenCL driver of VENDOR and devices [AMD,NVIDIA]
                             default: AMD
  --amd FILE                 AMD backend miner config file
  --noNVIDIA                 disable the NVIDIA miner backend
  --nvidia FILE              NVIDIA backend miner config file
  -i --httpd HTTP_PORT       HTTP interface port
 
The following options can be used for automatic start without a guided config,
If config exists then this pool will be top priority.
  -o, --url URL              pool url and port, e.g. pool.usxmrpool.com:3333
  -O, --tls-url URL          TLS pool url and port, e.g. pool.usxmrpool.com:10443
  -u, --user USERNAME        pool user name or wallet address
  -r, --rigid RIGID          rig identifier for pool-side statistics (needs pool support)
  -p, --pass PASSWD          pool password, in the most cases x or empty ""
  --use-nicehash             the pool should run in nicehash mode
  --currency NAME            currency to mine

Supported coin options: 
        - aeon7
        - bbscoin
        - bittube
        - cryptonight
        - cryptonight_bittube2
        - cryptonight_masari
        - cryptonight_haven
        - cryptonight_heavy
        - cryptonight_lite
        - cryptonight_lite_v7
        - cryptonight_lite_v7_xor
        - cryptonight_v7
        - cryptonight_v7_stellite
        - graft
        - haven
        - intense
        - masari
        - monero7
        - ryo
        - stellite
        - turtlecoin

Version: xmr-stak 2.4.7 c5f0505
Brought to by fireice_uk and psychocrypt under GPLv3.

QEMU full virtualization – CPU emulations (enable/disable CPU flags/instruction sets)

After the two QEMU full virtualization howtos

You can use qemu have a nearly native full virtualization. Here are some important tips for the guest CPU to consider when using qemu directly (without any virtualization manager like virt-manager, libvirt and so on).

TIP 1)Choose your host CPU emulation

You can see what options are available for host emulation with:

srv@local ~$ qemu-system-x86_64 -cpu help

x86           qemu64  QEMU Virtual CPU version 2.0.0                  
x86           phenom  AMD Phenom(tm) 9550 Quad-Core Processor         
x86         core2duo  Intel(R) Core(TM)2 Duo CPU     T7700  @ 2.40GHz 
x86            kvm64  Common KVM processor                            
x86           qemu32  QEMU Virtual CPU version 2.0.0                  
x86            kvm32  Common 32-bit KVM processor                     
x86          coreduo  Genuine Intel(R) CPU           T2600  @ 2.16GHz 
x86              486                                                  
x86          pentium                                                  
x86         pentium2                                                  
x86         pentium3                                                  
x86           athlon  QEMU Virtual CPU version 2.0.0                  
x86             n270  Intel(R) Atom(TM) CPU N270   @ 1.60GHz          
x86           Conroe  Intel Celeron_4x0 (Conroe/Merom Class Core 2)   
x86           Penryn  Intel Core 2 Duo P9xxx (Penryn Class Core 2)    
x86          Nehalem  Intel Core i7 9xx (Nehalem Class Core i7)       
x86         Westmere  Westmere E56xx/L56xx/X56xx (Nehalem-C)          
x86      SandyBridge  Intel Xeon E312xx (Sandy Bridge)                
x86          Haswell  Intel Core Processor (Haswell)                  
x86       Opteron_G1  AMD Opteron 240 (Gen 1 Class Opteron)           
x86       Opteron_G2  AMD Opteron 22xx (Gen 2 Class Opteron)          
x86       Opteron_G3  AMD Opteron 23xx (Gen 3 Class Opteron)          
x86       Opteron_G4  AMD Opteron 62xx class CPU                      
x86       Opteron_G5  AMD Opteron 63xx class CPU                      
x86             host  KVM processor with all supported host features (only available in KVM mode)

Recognized CPUID flags:
  pbe ia64 tm ht ss sse2 sse fxsr mmx acpi ds clflush pn pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de vme fpu
  hypervisor rdrand f16c avx osxsave xsave aes tsc-deadline popcnt movbe x2apic sse4.2|sse4_2 sse4.1|sse4_1 dca pcid pdcm xtpr cx16 fma cid ssse3 tm2 est smx vmx ds_cpl monitor dtes64 pclmulqdq|pclmuldq pni|sse3
  smap adx rdseed rtm invpcid erms bmi2 smep avx2 hle bmi1 fsgsbase
  3dnow 3dnowext lm|i64 rdtscp pdpe1gb fxsr_opt|ffxsr mmxext nx|xd syscall
  perfctr_nb perfctr_core topoext tbm nodeid_msr tce fma4 lwp wdt skinit xop ibs osvw 3dnowprefetch misalignsse sse4a abm cr8legacy extapic svm cmp_legacy lahf_lm
  pmm-en pmm phe-en phe ace2-en ace2 xcrypt-en xcrypt xstore-en xstore
  kvm_pv_unhalt kvm_pv_eoi kvm_steal_time kvm_asyncpf kvmclock kvm_mmu kvm_nopiodelay kvmclock
  pfthreshold pause_filter decodeassists flushbyasid vmcb_clean tsc_scale nrip_save svm_lock lbrv npt

The host server will expose different instruction set to the guest server (the emulated CPU), so when you choose your host to emulate for example “qemu64” with:

qemu-system-x86_64 -enable-kvm  \
-cpu qemu64,+ssse3,+sse4.1,+sse4.2,+x2apic -smp 2,maxcpus=8 \
-daemonize -vnc 192.168.0.10:1 \
-drive file=/mnt/storage/qemu/roofs/srv_virt.qcow2,index=0,cache=none,aio=threads,if=virtio \
-cdrom /mnt/storage/images/install-amd64-minimal-20140327.iso -boot d \
-net nic,model=virtio,macaddr=$(< /sys/class/net/macvtap0/address) \
-net tap,fd=3 3<>/dev/tap$(< /sys/class/net/macvtap0/ifindex) \
-balloon virtio -m 8192 \
-monitor telnet:127.0.0.1:5801,server,nowait -writeconfig /opt/qemu/config/srv_virt.qcow2.conf

The guest server (the virtual machine) will have the following CPU and instruction set:

vendor_id       : GenuineIntel
cpu family      : 6
model           : 6
model name      : QEMU Virtual CPU version 2.0.0
stepping        : 3
microcode       : 0x1
cpu MHz         : 2133.408
cache size      : 4096 KB
fpu             : yes
fpu_exception   : yes
cpuid level     : 4
wp              : yes
flags           : fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pse36 clflush mmx fxsr sse sse2 syscall nx lm rep_good nopl pni ssse3 cx16 sse4_1 x2apic popcnt hypervisor lahf_lm
bogomips        : 4266.81
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management:

processor       : 1
vendor_id       : GenuineIntel
cpu family      : 6
model           : 6
model name      : QEMU Virtual CPU version 2.0.0
stepping        : 3
microcode       : 0x1
cpu MHz         : 2133.408
cache size      : 4096 KB
fpu             : yes
fpu_exception   : yes
cpuid level     : 4
wp              : yes
flags           : fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pse36 clflush mmx fxsr sse sse2 syscall nx lm rep_good nopl pni ssse3 cx16 sse4_1 x2apic popcnt hypervisor lahf_lm
bogomips        : 4266.81
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management:

A base set of instructions (flags) with the explicitly included by our command with

+ssse3,+sse4.1,+sse4.2,+x2apic

. The format:

-cpu qemu64,+ssse3,+sse4.1,+sse4.2,+x2apic

IF you choose the last option:

-cpu host

the host server will try to emulate and expose to the virtual machine its processor and all flags:

qemu-system-x86_64 -enable-kvm  \
-cpu host -smp 2,maxcpus=8 \
-daemonize -vnc 192.168.0.10:1 \
-drive file=/mnt/storage/qemu/roofs/srv_virt.qcow2,index=0,cache=none,aio=threads,if=virtio \
-cdrom /mnt/storage/images/install-amd64-minimal-20140327.iso -boot d \
-net nic,model=virtio,macaddr=$(< /sys/class/net/macvtap0/address) \
-net tap,fd=3 3<>/dev/tap$(< /sys/class/net/macvtap0/ifindex) \
-balloon virtio -m 8192 \
-monitor telnet:127.0.0.1:5801,server,nowait -writeconfig /opt/qemu/config/srv_virt.qcow2.conf

The virtual machine:

[root@vm0 ~]# cat /proc/cpuinfo 
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 44
model name      : Intel(R) Xeon(R) CPU           E5606  @ 2.13GHz
stepping        : 2
microcode       : 0x1
cpu MHz         : 2133.408
cache size      : 8192 KB
fpu             : yes
fpu_exception   : yes
cpuid level     : 11
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes hypervisor lahf_lm tsc_adjust
bogomips        : 4266.81
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management:

The host server:

[root@srv0 ~]# cat /proc/cpuinfo 
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 44
model name      : Intel(R) Xeon(R) CPU           E5606  @ 2.13GHz
stepping        : 2
microcode       : 0x14
cpu MHz         : 1200.000
cache size      : 8192 KB
physical id     : 0
siblings        : 4
core id         : 0
cpu cores       : 4
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 11
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid dca sse4_1 sse4_2 popcnt aes lahf_lm tpr_shadow vnmi flexpriority ept vpid dtherm arat
bogomips        : 4266.41
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management:

TIP 2) Disable certain CPU flags (instruction sets)

As you can see with the above CPU options you can hide your exact type of processor and you could disable specific CPU flags (instruction sets) to the user’s virtual machine. The purpose is up to the user and one reason for example could be not offer “avx” (or “avx2”) to discourage crypto mining with the virtual machine. Or limit the SSE2/3/4/4.2/SSSE3 and other “multimedia” instruction sets to discourage video encoding and so on. Probably you would like to be used It’s up to you what to offer to the virtual machine user.
Here is the command to emulate the host CPU with all supported flags but disable “sse4.1” and “sse4.2”:
The syntax:

-cpu host,-sse4.1,-sse4.2

And the qemu command is:

qemu-system-x86_64 -enable-kvm \
-cpu host,-sse4.1,-sse4.2 \
-smp 2,maxcpus=8 \
-daemonize -vnc 192.168.0.10:1 \
-drive file=/mnt/storage/qemu/roofs/srv_virt.qcow2,index=0,cache=none,aio=threads,if=virtio \
-cdrom /mnt/storage/images/install-amd64-minimal-20140327.iso -boot d \
-net nic,model=virtio,macaddr=$(< /sys/class/net/macvtap0/address) \
-net tap,fd=3 3<>/dev/tap$(< /sys/class/net/macvtap0/ifindex) \
-balloon virtio -m 8192 \
-monitor telnet:127.0.0.1:5801,server,nowait -writeconfig /opt/qemu/config/srv_virt.qcow2.conf

So the virtual machine lacks the disabled flags:

flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl pni pclmulqdq ssse3 cx16 pcid x2apic popcnt tsc_deadline_timer aes hypervisor lahf_lm tsc_adjust

TIP 3) Number of virtual processors in the virtual machine

The syntax

-smp 2,maxcpus=8

of the qemu command:

qemu-system-x86_64 -enable-kvm  -cpu host \
-smp 2,maxcpus=8 \
-daemonize -vnc 192.168.0.10:1 \
-drive file=/mnt/storage/qemu/roofs/srv_virt.qcow2,index=0,cache=none,aio=threads,if=virtio \
-cdrom /mnt/storage/images/install-amd64-minimal-20140327.iso -boot d \
-net nic,model=virtio,macaddr=$(< /sys/class/net/macvtap0/address) \
-net tap,fd=3 3<>/dev/tap$(< /sys/class/net/macvtap0/ifindex) \
-balloon virtio -m 8192 \
-monitor telnet:127.0.0.1:5801,server,nowait -writeconfig /opt/qemu/config/srv_virt.qcow2.conf

will start up the virtual machine with 2 processors and you can hot add a cpu up to 8 total in any time you want with the management console listening on 127.0.0.1:5801.

Howto do QEMU full virtualization with bridged networking

This howto rather continues the previous one “Howto do QEMU full virtualization with MacVTap networking” with the exception it will be showed how to use a classic setup of the networking – the use of bridge device. Because this setup requires specific configuration for every linux distro if we do not just add the bridge manually it is separated in this howto. For the clear and full howto we would repeat the two first steps just to enable this howto to be independent from the original one mentioned above.
So use full virtualization under linux you can use QEMU and no other library or manager like virt-manager. QEMU is simple enough and with couple of parameters to it you can start KVM virtual machines with near native performance. To use KVM you must enable it in the BIOS of your server (or desktop machine).

Here are the main steps:

STEP 1) Enable KVM in the BIOS

  • For Intel machine you must find option Intel Virtualization Technology (or Intel VT-x) probably in BIOS menu of Chipset, Advanced CPU Configuration or other.
  • For AMD machine the virtualization cannot be disabled so it is enabled by default, but you can check for additional virtualization features to enable like Virtualization Extensions, Vanderpool and other.
  • Enable also additional features – Intel VT-d or AMD IOMMU, if they are available.

Reboot your machine and check if the KVM is supported:

srv@local ~$ cat /proc/cpuinfo |grep -E "vmx|svm"
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti intel_pt tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid rdseed adx smap xsaveopt dtherm ida arat pln pts
...

STEP 2) Install QEMU

Under CentOS 7 you can just install couple of packets – that’s all you need:

yum install -y qemu qemu-common qemu-img qemu-kvm-common qemu-system-x86 qemu-user bridge-utils

Or under Ubuntu

apt-get install qemu-kvm bridge-utils

STEP 3) Prepare the network 1 – the bridge device

Under CentOS 7 add the following configuration file

/etc/sysconfig/network-scripts/ifcfg-br0

with the content of

DEVICE=br0
TYPE=Bridge
BOOTPROTO=none
ONBOOT=yes
IPADDR0=192.168.0.1
PREFIX0=24
#GATEWAY0=192.168.0.1
NETMASK=255.255.255.0
IPV6_FAILURE_FATAL=no
NM_CONTROLLED=no
ZONE=public

If you want to use real IP set to your virtual machine, you should set a real IP here and uncomment the GATEWAY0 with the real gateway IP. If real IP is used then you should include the main Internet network interface to the bridge with adding at the end of the configuration file /etc/sysconfig/network-scripts/ifcfg-eth0 (if eth0 is your network interface):

...
BRIDGE=br0

And restart the network

srv@local ~$ systemctl restart network

Under Ubuntu add to the file

/etc/network/interfaces

the following:

# Bridge
auto br0
iface br0 inet static
  address 192.168.0.10
  netmask 255.255.255.0
#  gateway 192.168.0.1
  bridge_ports none
  bridge_stp off
  bridge_fd 0
  bridge_maxwait 0

If you want to use real IP set to your virtual machine, you should set a real IP here and uncomment the GATEWAY0 with the real gateway IP and replace the “none” in the option “bridge_ports” with the name of your main Internet network interface. For example:

  ...
  bridge_ports eth0
  ...

And restart the network

srv@local ~$ /etc/init.d/networking restart

Or we can add the bridge device manually:

srv@local ~$ brctl addbr br0
srv@local ~$ ip link set dev br0 up
srv@local ~$ ip addr add 192.168.0.1/24 dev br0

If we use real IP we have to add the main Internet network interface to the bridge, so when you set up the network in our virtual machine with a real IP it will work with no more additional configurations, but if we use a local IPs like our setup here and we want to have Internet in our virtual machine we must enable masquerade and linux routing. You can do it with:

srv@local ~$ echo 1 > /proc/sys/net/ipv4/ip_forward
#NAT with firewalld
srv@local ~$ firewall-cmd --add-masquerade --permanent
#NAT with iptables
srv@local ~$ iptables -t nat -A POSTROUTING -o br0 -j MASQUERADE

Use either firewalld or iptables setup, depends on your system configuration, just check if firewalld is running with:

srv@local ~$ firewall-cmd --list-all

If you receive an error, saying command not found or firewalld is not running, you should use the “NAT with iptables”
So the network is ready!

STEP 4) Prepare the network 2 – the tun/tap for the virtual machine

After we have added a bridge device tun/tap device, which will be used for the QEMU virtual machine must be added:

srv@local ~$ ip tuntap add tap0 mode tap
srv@local ~$ brctl addif br0 tap0

STEP 5) Create a QEMU hard drive

Create a 100G file

srv@local ~$ cd /mnt/storage1/disks/
srv@local ~$ qemu-img create -f qcow2 vm_harddisk.qcow2 100G
Formatting 'vm_harddisk.qcow2', fmt=qcow2 size=107374182400 encryption=off cluster_size=65536 lazy_refcounts=off 

or you can enable encryption (but on every start of your virtual machine you must set the key through the qemu console to start the virtual machine):

srv@local ~$ qemu-img create -f qcow2 vm_harddisk_e.bin -o encryption 100G
Formatting 'vm_harddisk_e.bin', fmt=qcow2 size=107374182400 encryption=on cluster_size=65536 lazy_refcounts=off

STEP 6) Boot up the QEMU KVM virtual server

srv@local ~$ qemu-system-x86_64 -enable-kvm -cpu host -smp 4 -runas qemu -daemonize -vnc 127.0.0.1:1 \
-drive file=/mnt/storage1/disks/vm_harddisk.qcow2,index=0,cache=none,aio=threads,if=virtio \
-boot d -net nic,model=virtio,macaddr=00:00:00:00:00:01 -net tap,ifname=tap0 \
-balloon virtio -m 2048 -monitor telnet:127.0.0.1:5801,server,nowait

The command above will :

  • “-enable-kvm” – enable the KVM – full virtualization with near native performance
  • “-cpu host” – will expose all supported host CPU features (only supported in KVM mode)
  • “-smp 4” – sets 4 processors to the virtual machine
  • “-daemonize” – start the command in daemon mode
  • “-runas qemu” – run under user, you can run thwo whole virtual machine from a user created especially for it, no need to run it with root, even it is recommended to run it under unprivileged user
  • “-vnc 192.168.1.10:1” – start a VNC server on this IP:PORT = 192.168.1.10:5901, the IP must present on the server or you can use 0.0.0.0:1 for 0.0.0.0:5901, but in every situation limit the access by a firewall
  • “-drive file=/mnt/storage1/disks/vm_harddisk.qcow2,index=0,cache=none,aio=threads,if=virtio” – set the main hard drive of the system
  • “-boot d” – boot from the first hard drive
  • “-net nic,model=virtio,macaddr=00:00:00:00:00:01 -net tap,ifname=tap0” – set the network interface using the tap device created by STEP 3) and STEP 4)
  • “-balloon virtio” – use balloon driver to be able to hot add or hot remove RAM
  • “-m 2048” – set virtual RAM size to megs
  • “-monitor telnet:127.0.0.1:5801,server,nowait” – set the management console for the this virtual server, you can connect with:
    srv@local ~$ telnet 127.0.0.1 5801
    Trying 127.0.0.1...
    Connected to 127.0.0.1.
    Escape character is '^]'.
    QEMU 2.0.0 monitor - type 'help' for more information
    (qemu) 
    <Press "CTRL+]">
    telnet> Connection closed.
    

    When quitting the management console you must NOT exit the console with quite/exit or CTRL+d, becuause it will terminate the virtual server, you must disconnect from the console with “CTRL+]” and then quit the telnet shell. With the console you can hot add/remove CPU, RAM, network cards, pci devices, harddrives, start/stop/shutdown/reset the virtual machine and a lot more.

Boot the virtual machine from the hard drive given by “-drive” with network “-net” (couple of options), the RAM uses baloon memory and could be adjusted on-the-fly and sets the vncserver to listen for connection on port IP:port = 192.168.1.1:5901 (probably you’ll want to change this with a the real IP of your server, but be careful to set up a firewall rule for 5901 – the vnc port) and a management console listening on IP:port 127.0.0.1:5801.

* Boot the virtual server from a virtual CD/DVD

Probably the first time booting you might need to boot from an installation disk, this could be done by the following command:

srv@local ~$ qemu-system-x86_64 -enable-kvm -cpu host -smp 4 -runas qemu -daemonize -vnc 127.0.0.1:1 -cdrom /mnt/storage1/disks/isos/CentOS-7-x86_64-NetInstall-1708.iso -boot c -drive file=/mnt/storage1/disks/vm_harddisk.qcow2,index=0,cache=none,aio=threads,if=virtio -net nic,model=virtio,macaddr=00:00:00:00:00:01 -net tap,ifname=tap0 -balloon virtio -m 2048 -monitor telnet:127.0.0.1:5805,server,nowait

The changes:

  1. “-boot c” – First boot device is now CD/DVD. “c” is for CD, “d” is for disk
  2. “-cdrom /mnt/storage1/disks/isos/CentOS-7-x86_64-NetInstall-1708.iso” – added the installation disk to the virtual machine

Howto do QEMU full virtualization with MacVTap networking

To use full virtualization under linux you can use QEMU and no other library or manager like virt-manager. QEMU is simple enough and with couple of parameters to it you can start KVM virtual machines with near native performance. To use KVM you must enable it in the BIOS of your server (or desktop machine).

Here a several simple step to start a KVM virtual server:

STEP 1) Enable KVM in the BIOS

  • For Intel machine you must find option Intel Virtualization Technology (or Intel VT-x) probably in BIOS menu of Chipset, Advanced CPU Configuration or other.
  • For AMD machine the virtualization cannot be disabled so it is enabled by default, but you can check for additional virtualization features to enable like Virtualization Extensions, Vanderpool and other.
  • Enable also additional features – Intel VT-d or AMD IOMMU, if they are available.

Reboot your machine and check if the KVM is supported:

srv@local ~$ cat /proc/cpuinfo |grep -E "vmx|svm"
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti intel_pt tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid rdseed adx smap xsaveopt dtherm ida arat pln pts
...

STEP 2) Install QEMU

Under CentOS 7 you can just install couple of packets – that’s all you need:

yum install -y qemu qemu-common qemu-img qemu-kvm-common qemu-system-x86 qemu-user bridge-utils

Or under Ubuntu

apt-get install qemu-kvm bridge-utils

STEP 3) Prepare the network

srv@local ~$ ip link add link enp8s0f1 name macvtap0 type macvtap mode bridge
srv@local ~$ ip link set macvtap0 up

Here we create a macvtap0 device in bridge mode, these commands will create a tap device bridged to the network interface “enp8s0f1” (in our case, you must replace this device name with the device name you want to bridge your virtual machine network, probably the main interface of your server/desktop machine?). Only these two commands are needed, no other devices or network reload is needed.
The device will show in “ip addr”

7: macvtap0@enp8s0f1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 500
    link/ether 2e:51:7e:bb:44:ee brd ff:ff:ff:ff:ff:ff
    inet6 fe80::2c51:7eff:febb:44ee/64 scope link 
       valid_lft forever preferred_lft forever

This setup could expose the MAC address of the macvtap device to the router port connected

STEP 4) Create a QEMU hard drive

Create a 100G file

srv@local ~$ cd /mnt/storage1/disks/
srv@local ~$ qemu-img create -f qcow2 vm_harddisk.qcow2 100G
Formatting 'vm_harddisk.qcow2', fmt=qcow2 size=107374182400 encryption=off cluster_size=65536 lazy_refcounts=off 

or you can enable encryption (but on every start of your virtual machine you must set the key through the qemu console to start the virtual machine):

srv@local ~$ qemu-img create -f qcow2 vm_harddisk_e.bin -o encryption 100G
Formatting 'vm_harddisk_e.bin', fmt=qcow2 size=107374182400 encryption=on cluster_size=65536 lazy_refcounts=off

STEP 5) Boot up the QEMU KVM virtual server

srv@local ~$ qemu-system-x86_64 -enable-kvm -cpu host -smp 4 -runas qemu -daemonize -vnc 127.0.0.1:1 \
-drive file=/mnt/storage1/disks/vm_harddisk.qcow2,index=0,cache=none,aio=threads,if=virtio \
-boot d -net nic,model=virtio,macaddr=$(cat /sys/class/net/macvtap0/address) \
-net tap,fd=3 3<>/dev/tap$(cat /sys/class/net/macvtap0/ifindex) \
-balloon virtio -m 2048 -monitor telnet:127.0.0.1:5801,server,nowait

The command above will :

  • “-enable-kvm” – enable the KVM – full virtualization with near native performance
  • “-cpu host” – will expose all supported host CPU features (only supported in KVM mode)
  • “-smp 4” – sets 4 processors to the virtual machine
  • “-daemonize” – start the command in daemon mode
  • “-runas qemu” – run under user, you can run thwo whole virtual machine from a user created especially for it, no need to run it with root, even it is recommended to run it under unprivileged user
  • “-vnc 192.168.1.10:1” – start a VNC server on this IP:PORT = 192.168.1.10:5901, the IP must present on the server or you can use 0.0.0.0:1 for 0.0.0.0:5901, but in every situation limit the access by a firewall
  • “-drive file=/mnt/storage1/disks/vm_harddisk.qcow2,index=0,cache=none,aio=threads,if=virtio” – set the main hard drive of the system
  • “-boot d” – boot from the first hard drive
  • “-net nic,model=virtio,macaddr=$(cat /sys/class/net/macvtap0/address) -net tap,fd=3 3<>/dev/tap$(cat /sys/class/net/macvtap0/ifindex)” – set the network interface using the tap device created by macvtap0 device (STEP 3)
  • “-balloon virtio” – use balloon driver to be able to hot add or hot remove RAM
  • “-m 2048” – set virtual RAM size to megs
  • “-monitor telnet:127.0.0.1:5801,server,nowait” – set the management console for the this virtual server, you can connect with:
    srv@local ~$ telnet 127.0.0.1 5801
    Trying 127.0.0.1...
    Connected to 127.0.0.1.
    Escape character is '^]'.
    QEMU 2.0.0 monitor - type 'help' for more information
    (qemu) 
    <Press "CTRL+]">
    telnet> Connection closed.
    

    When quitting the management console you must NOT exit the console with quite/exit or CTRL+d, becuause it will terminate the virtual server, you must disconnect from the console with “CTRL+]” and then quit the telnet shell. With the console you can hot add/remove CPU, RAM, network cards, pci devices, harddrives, start/stop/shutdown/reset the virtual machine and a lot more.

Boot the virtual machine from the hard drive given by “-drive” with network “-net” (couple of options), the RAM uses baloon memory and could be adjusted on-the-fly and sets the vncserver to listen for connection on port IP:port = 192.168.1.1:5901 (probably you’ll want to change this with a the real IP of your server, but be careful to set up a firewall rule for 5901 – the vnc port) and a management console listening on IP:port 127.0.0.1:5801.

* Boot the virtual server from a virtual CD/DVD

Probably the first time booting you might need to boot from an installation disk, this could be done by the following command:

srv@local ~$ qemu-system-x86_64 -enable-kvm -cpu host -smp 4 -runas qemu -daemonize -vnc 127.0.0.1:1 -cdrom /mnt/storage1/disks/isos/CentOS-7-x86_64-NetInstall-1708.iso -boot c -drive file=/mnt/storage1/disks/vm_harddisk.qcow2,index=0,cache=none,aio=threads,if=virtio -net nic,model=virtio,macaddr=$(cat /sys/class/net/macvtap0/address) -net tap,fd=3 3<>/dev/tap$(cat /sys/class/net/macvtap0/ifindex) -balloon virtio -m 2048 -monitor telnet:127.0.0.1:5801,server,nowait

The changes:

  1. “-boot c” – First boot device is now CD/DVD. “c” is for CD, “d” is for disk
  2. “-cdrom /mnt/storage1/disks/isos/CentOS-7-x86_64-NetInstall-1708.iso” – added the installation disk to the virtual machine

Generate a new Groestlcoin address (wallet) and list accounts and addresses

The generation of a new Groestlcoin address is super simple, just use

groestlcoin-cli

and personally create your new address. DO NOT TRUST any online or website or any other Internet source to generate your Groestlcoin wallet address for you. DO IT YOURSELF with the official software from the official site!
And for those of you, which do not have “groestlcoin-cli” command or even do not know what is this, check out our howtos here:

  1. Install Ubuntu 16 LTS (comming soon)
  2. Running a Groestlcoin node (wallet cli) from source under Ubuntu 16 LTS

Go to your directory where is the groestlcoin-cli binary and execute the following command (the path and directories in the following examples are based on the above howto):

srv@local:~$ cd ~/groestlcoin-core/bin/
srv@local:~/groestlcoin-core/bin$ ./groestlcoin-cli getnewaddress mygroestlcoin
FeNFjh81VDJvZrdvi8EotKuJ8es8cCz7bZ
srv@local:~/groestlcoin-core/bin$ ./groestlcoin-cli encryptwallet "my secret pass"
wallet encrypted; Groestlcoin server stopping, restart to run with encrypted wallet. The keypool has been flushed and a new HD seed was generated (if you are using HD). You need to make a new backup.

The groestlcoind daemon was stopped and you need to start it again if you want to make transactions or to get your balance.
With Groestlcoin Core Wallet you can create an account, which could be a group of groestlcoin addresses (this is a groestlcoin address: “FeNFjh81VDJvZrdvi8EotKuJ8es8cCz7bZ”) or just use the default with no name of the account.
It is important to encrypt your wallet with a password, because if the wallet is unprotected with a password anyone could steal it! Then enter a password for your wallet protection is the second command above!

This sequence of numbers and alphabets

FeNFjh81VDJvZrdvi8EotKuJ8es8cCz7bZ

is your public Groestlcoin address, which could be used to receive Groestlcoins – the coins of the Groestlcoin network.

After generating the address two things must be done:

  1. Backup your Groestlcoin wallet address file (wallet.dat), which is placed in your home directory under “.groestlcoin”:
    srv@local:~/groestlcoin-core/bin$ ls -altr ~/.groestlcoin/
    srv@local:~$ ls -altr ~/.groestlcoin/
    total 476
    -rw------- 1 ubuntu ubuntu      0 Mar 27 21:41 .lock
    -rw------- 1 ubuntu ubuntu      0 Mar 27 21:41 db.log
    -rw------- 1 ubuntu ubuntu     37 Mar 27 21:41 banlist.dat
    drwx------ 3 ubuntu ubuntu   4096 Mar 27 22:18 blocks
    drwxr-xr-x 7 ubuntu ubuntu   4096 Mar 28 01:25 ..
    -rw------- 1 ubuntu ubuntu 145650 Mar 28 14:16 peers.dat
    -rw------- 1 ubuntu ubuntu     17 Mar 28 14:16 mempool.dat
    -rw------- 1 ubuntu ubuntu  16625 Mar 28 14:16 fee_estimates.dat
    -rw------- 1 ubuntu ubuntu  73728 Mar 28 14:16 wallet.dat
    -rw------- 1 ubuntu ubuntu      5 Mar 28 14:17 groestlcoin.pid
    -rw------- 1 ubuntu ubuntu     75 Mar 28 14:17 .cookie
    drwxrwxr-x 5 ubuntu ubuntu   4096 Mar 28 14:17 .
    drwx------ 2 ubuntu ubuntu   4096 Mar 28 14:18 chainstate
    drwx------ 2 ubuntu ubuntu   4096 Mar 28 14:18 database
    -rw------- 1 ubuntu ubuntu 206800 Mar 28 14:27 debug.log
    srv@local:~$ 
    

    The best practice is to backup all the files under “~/.groestlcoin/”, too!

  2. Backup your password for the private key!

Accounts

List all accounts in the wallet

srv@local:~/groestlcoin-core/bin$ ./groestlcoin-cli listaccounts
{
  "": 0.00000000,
  "mygroestlcoin": 0.00000000
}

List all Groestlcoin addresses in a given account:

srv@local:~/groestlcoin-core/bin$ ./groestlcoin-cli getaddressesbyaccount ""
[
  "FYM6aAQdmg6tziT4trPb777xNfPaaUnfqp", 
  "FamX8GYBuLFkLSAbyZ7M55vFW6AECoYKEV", 
  "Fp9PwAgfTqaF3aJ4zGGLjGKP7iEMdsrR3Z"
]
srv@local:~/groestlcoin-core/bin$ ./groestlcoin-cli getaddressesbyaccount "mygroestlcoin"
[
  "FeNFjh81VDJvZrdvi8EotKuJ8es8cCz7bZ", 
  "FrrnHESU8Utqk1ZjhQZjpWwc5cjKgHwCaS"
]

* It is absolutely necessary your crypto wallet addresses to have a password for security reasons and DO NOT FORGET IT you cannot recover the password therefore your access to the wallet! If you lose your password you lose ALL your funds in the address! It’s better to write it down somewhere on a safe physical place. You can print it on a sheet of paper and place it somewhere safe!

* All available commands with “groestlcoin-cli

groestlcoin-cli help
== Blockchain ==
getbestblockhash
getblock "hash" ( verbose )
getblockchaininfo
getblockcount
getblockhash index
getblockheader "hash" ( verbose )
getchaintips
getdifficulty
getmempoolancestors txid (verbose)
getmempooldescendants txid (verbose)
getmempoolentry txid
getmempoolinfo
getrawmempool ( verbose )
gettxout "txid" n ( includemempool )
gettxoutproof ["txid",...] ( blockhash )
gettxoutsetinfo
preciousblock "hash"
verifychain ( checklevel numblocks )
verifytxoutproof "proof"

== Control ==
getinfo
getmemoryinfo
help ( "command" )
stop

== Generating ==
generate numblocks ( maxtries )
generatetoaddress numblocks address (maxtries)

== Mining ==
getblocktemplate ( TemplateRequest )
getmininginfo
getnetworkhashps ( blocks height )
prioritisetransaction <txid> <priority delta> <fee delta>
submitblock "hexdata" ( "jsonparametersobject" )

== Network ==
addnode "node" "add|remove|onetry"
clearbanned
disconnectnode "node" 
getaddednodeinfo ( "node" )
getconnectioncount
getnettotals
getnetworkinfo
getpeerinfo
listbanned
ping
setban "ip(/netmask)" "add|remove" (bantime) (absolute)
setnetworkactive true|false

== Rawtransactions ==
createrawtransaction [{"txid":"id","vout":n},...] {"address":amount,"data":"hex",...} ( locktime )
decoderawtransaction "hexstring"
decodescript "hex"
fundrawtransaction "hexstring" ( options )
getrawtransaction "txid" ( verbose )
sendrawtransaction "hexstring" ( allowhighfees )
signrawtransaction "hexstring" ( [{"txid":"id","vout":n,"scriptPubKey":"hex","redeemScript":"hex"},...] ["privatekey1",...] sighashtype )

== Util ==
createmultisig nrequired ["key",...]
estimatefee nblocks
estimatepriority nblocks
estimatesmartfee nblocks
estimatesmartpriority nblocks
signmessagewithprivkey "privkey" "message"
validateaddress "groestlcoinaddress"
verifymessage "groestlcoinaddress" "signature" "message"

== Wallet ==
abandontransaction "txid"
addmultisigaddress nrequired ["key",...] ( "account" )
addwitnessaddress "address"
backupwallet "destination"
dumpprivkey "groestlcoinaddress"
dumpwallet "filename"
getaccount "groestlcoinaddress"
getaccountaddress "account"
getaddressesbyaccount "account"
getbalance ( "account" minconf includeWatchonly )
getnewaddress ( "account" )
getrawchangeaddress
getreceivedbyaccount "account" ( minconf )
getreceivedbyaddress "groestlcoinaddress" ( minconf )
gettransaction "txid" ( includeWatchonly )
getunconfirmedbalance
getwalletinfo
importaddress "address" ( "label" rescan p2sh )
importmulti '[<json import requests>]' '<json options>' 
importprivkey "groestlcoinprivkey" ( "label" rescan )
importprunedfunds
importpubkey "pubkey" ( "label" rescan )
importwallet "filename"
keypoolrefill ( newsize )
listaccounts ( minconf includeWatchonly)
listaddressgroupings
listlockunspent
listreceivedbyaccount ( minconf includeempty includeWatchonly)
listreceivedbyaddress ( minconf includeempty includeWatchonly)
listsinceblock ( "blockhash" target-confirmations includeWatchonly)
listtransactions ( "account" count from includeWatchonly)
listunspent ( minconf maxconf  ["address",...] )
lockunspent unlock ([{"txid":"txid","vout":n},...])
move "fromaccount" "toaccount" amount ( minconf "comment" )
removeprunedfunds "txid"
sendfrom "fromaccount" "togroestlcoinaddress" amount ( minconf "comment" "comment-to" )
sendmany "fromaccount" {"address":amount,...} ( minconf "comment" ["address",...] )
sendtoaddress "groestlcoinaddress" amount ( "comment" "comment-to" subtractfeefromamount )
setaccount "groestlcoinaddress" "account"
settxfee amount
signmessage "groestlcoinaddress" "message"
walletlock
walletpassphrase "passphrase" timeout
walletpassphrasechange "oldpassphrase" "newpassphrase"

Running an Ethereum node from source under Ubuntu 16 LTS

This howto is made to show you how to run an Ethereum node. To run an Ethereum node we need the

geth

program to start and wait for the network synchronization – our Ethereum node will receive all the blockchains of the network!
After a successful Ethereum network synchronization we can send and receive coins securely ourselves! No other online service offers us secure sending and receiving of transcations and creation of wallet, the only way a crypto user could be absolutely sure the private key is seen only from him and is generated on his server is to become part of the Ethereum network and create your wallet with “geth” manually by the user himself.
And also be warned DO NOT use insecure sources when:

  1. installing Ubuntu, install it from a cd/dvd/usb downloaded from the official Ubuntu site here.
  2. installing all the needed dependencies from official sources only, not recommended the PPA reposigories, neither!
  3. install yourself the “geth” program, which will create an Ethereum node and after network synchronization could be used to create an Ethereum node.

Three simple rules could almost eliminate leaking your private key to hackers, which in blockchain world means losing your money…
And before start the installation a performance advice do not attempt to run an Ethereum node in a hard disk –

USE SSD

If you use a hard disk even in RAID configuration it could take several days for network synchronization and probably your machine will be useless during the synchronization.

So here are the steps to create from a scratch an Ethereum node:

STEP 1) Install Ubuntu 16 – our howto will be available soon here.

STEP 2) Building from source an Ethereum node

Check out our howto“Building from source an Ethereum node under Ubuntu 16 LTS”.

STEP 3) Start the Ethereum node

if you have followed the howto in STEP 2) you probably have “geth” installed in “~/go-ethereum/build/bin”, so first running it with:

ubuntu@srv.local:~/go-ethereum/build/bin$ ./geth --rpc --fast --cache=8144 &> ./geth.log

STEP 3) Wait for the blockchain network synchronization

When you run “geth” it will check the current state of the network and the current state of your Ethereum node, so no matter it is started for the first time or not a network synchronization is needed, your node need to be synchronized with the Ethereum network to be used for all kind of actions in the network (create a wallet, transfer funds and more).
Here is the output of just started Ethereum node:

INFO [02-27|19:14:02] Maximum peer count                       ETH=25 LES=0 total=25
INFO [02-27|19:14:02] Starting peer-to-peer node               instance=Geth/v1.8.2-unstable-b574b577/linux-amd64/go1.9.4
INFO [02-27|19:14:02] Allocated cache and file handles         database=/home/ubuntu/.ethereum/geth/chaindata cache=6108 handles=512
INFO [02-27|19:14:02] Writing default main-net genesis block 
INFO [02-27|19:14:03] Persisted trie from memory database      nodes=12356 size=2.34mB time=49.406185ms gcnodes=0 gcsize=0.00B gctime=0s livenodes=1 livesize=0.00B
INFO [02-27|19:14:03] Initialised chain configuration          config="{ChainID: 1 Homestead: 1150000 DAO: 1920000 DAOSupport: true EIP150: 2463000 EIP155: 2675000 EIP158: 2675000 Byzantium: 4370000 Constantinople: <nil> Engine: ethash}"
INFO [02-27|19:14:03] Disk storage enabled for ethash caches   dir=/home/ubuntu/.ethereum/geth/ethash count=3
INFO [02-27|19:14:03] Disk storage enabled for ethash DAGs     dir=/home/ubuntu/.ethash               count=2
INFO [02-27|19:14:03] Initialising Ethereum protocol           versions="[63 62]" network=1
INFO [02-27|19:14:03] Loaded most recent local header          number=0 hash=d4e567…cb8fa3 td=17179869184
INFO [02-27|19:14:03] Loaded most recent local full block      number=0 hash=d4e567…cb8fa3 td=17179869184
INFO [02-27|19:14:03] Loaded most recent local fast block      number=0 hash=d4e567…cb8fa3 td=17179869184
INFO [02-27|19:14:03] Regenerated local transaction journal    transactions=0 accounts=0
INFO [02-27|19:14:03] Starting P2P networking 
INFO [02-27|19:14:05] UDP listener up                          self=enode://4ee1f43cc597fa829a04ec97dee38ad4f2c61f39f0f0e5ebd46e095c660cc95aab71eef55b0db9fd64d0afaeb589a8d9cb3eb86fdc07e32183648bc89dbd4aca@[::]:30303
INFO [02-27|19:14:05] RLPx listener up                         self=enode://4ee1f43cc597fa829a04ec97dee38ad4f2c61f39f0f0e5ebd46e095c660cc95aab71eef55b0db9fd64d0afaeb589a8d9cb3eb86fdc07e32183648bc89dbd4aca@[::]:30303
INFO [02-27|19:14:05] HTTP endpoint opened                     url=http://127.0.0.1:8545 cors= vhosts=localhost
INFO [02-27|19:14:05] IPC endpoint opened                      url=/home/ubuntu/.ethereum/geth.ipc
INFO [02-27|19:14:45] Block synchronisation started 
WARN [02-27|19:14:53] Synchronisation failed, retrying         err="block download canceled (requested)"
WARN [02-27|19:14:56] Node data write error                    err="state node 6aa064…378280 failed with all peers (1 tries, 1 peers)"
WARN [02-27|19:14:56] Synchronisation failed, retrying         err="state node 6aa064…378280 failed with all peers (1 tries, 1 peers)"
WARN [02-27|19:15:07] Node data write error                    err="state node 6aa064…378280 failed with all peers (3 tries, 3 peers)"
WARN [02-27|19:15:07] Synchronisation failed, retrying         err="state node 6aa064…378280 failed with all peers (3 tries, 3 peers)"
INFO [02-27|19:15:20] Imported new block headers               count=192 elapsed=1.115s number=192 hash=723899…123390 ignored=0
INFO [02-27|19:15:20] Imported new block receipts              count=2   elapsed=80.248µs number=2   hash=b495a1…4698c9 size=8.00B  ignored=0
INFO [02-27|19:15:20] Imported new block headers               count=192 elapsed=19.822ms number=384 hash=d3d5d5…c79cf3 ignored=0
INFO [02-27|19:15:21] Imported new block receipts              count=4   elapsed=117.07µs number=6   hash=1f1aed…6b326e size=1.10kB ignored=0
INFO [02-27|19:15:22] Imported new block headers               count=2048 elapsed=146.493ms number=2432 hash=78a9e6…079de3 ignored=0

As you can see the node connects to another nodes and receives blockchains and saves them to its local database. At present (late February 2017) a fully synchronized Ethereum node takes 59 Gigabytes of space, but this number will changed when you run your node.

STEP 3) Check the progress of the Ethereum network synchronization

The progress of Ethereum node synchronization could be checked with the “geth” program. Execute in the console:

ubuntu@srv.local:~/go-ethereum/build/bin$ ./geth --exec "web3.eth.syncing" attach
{
  currentBlock: 388,
  highestBlock: 5159514,
  knownStates: 0,
  pulledStates: 0,
  startingBlock: 0
}
ubuntu@srv.local:~/go-ethereum/build/bin$ ./geth --exec "web3.eth.syncing" attach
{
  currentBlock: 401,
  highestBlock: 5159514,
  knownStates: 0,
  pulledStates: 0,
  startingBlock: 0
}

As you can see we are at the very beginning here, we’ve received 401 of total 5159514 in the network.

After around 2 hours we are at 4882892 of total 5166333 in the network.

ubuntu@srv.local:~/go-ethereum/build/bin$ ./geth --exec "web3.eth.syncing" attach
{
  currentBlock: 4882892,
  highestBlock: 5166333,
  knownStates: 4806466,
  pulledStates: 4800942,
  startingBlock: 0
}

It is normal the highest block to increment, because the network is used intensively.
STEP 4) Successful full synchronization – how to check and to be sure
When you are almost then like in the last section of the STEP 3) you’ll begin to see lines in the geth output like:

INFO [02-28|01:46:28] Imported new block headers               count=0    elapsed=1.281ms   number=5168639 hash=433308…1a710e ignored=71

and when you execute geth with “web3.eth.syncing”:

ubuntu@srv.local:~/go-ethereum/build/bin$ ./geth --exec "web3.eth.syncing" attach
false

The node will keep on receiving new blocks, so synchronization is triggered again, syncing the received blocks and stops again. So when transferring funds or creating a wallet or any other action there will be triggered a synchronization and then execution of the action. There is a callback for when sync starts and stops. If you cannot see multiple times “false” after the last synchronization check with geth, but your are almost at the highest block, no need to worry everything is OK, you node is almost fully synchronized and can be used.

At present with SSD and 32G RAM on a intel i7 processor and a fast Internet connection 100Mbps the full synchronization took about 8 hours.

Install ethminer in a machine with NVIDIA video card under Ubuntu 16.04 LTS (only commands , real output and benchmark)

Here is the Part 2 of the Install ethminer in a machine with NVIDIA video card under Ubuntu 16.04 LTS. The Part 2 is just all executed commands, which could be put in a bash file to automate the installation of the machine and the compilation of the ethminer and the output for a much clear example with real life example with output. Here you’ll find no explanations, which are included in the “Part 1” (see link above).
So only three sections here, first the bash commands and then the output of executed commands, only the installation of the packets with apt-get is trimmed because of the long output! The example is executing first sudo su to get to the root user, if you do not feel good you can skip the root and adjust it to the user you like with sudo. The second is the output of the commands and the third is the benchmark and hardware information of the machine used for this howto.

1. Commands to execute

sudo su
cd
wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_9.1.85-1_amd64.deb
apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
dpkg -i /root/cuda-repo-ubuntu1604_9.1.85-1_amd64.deb
add-apt-repository -y ppa:graphics-drivers/ppa
apt-get update -y
apt-get -y install git cmake libleveldb-dev libjsoncpp-dev libboost-all-dev libgmp-dev libreadline-dev libcurl4-gnutls-dev ocl-icd-libopencl1 opencl-headers mesa-common-dev libmicrohttpd-dev build-essential cuda libcrypto++-dev libjsonrpccpp-dev
reboot
sudo su
cd
echo "termcapinfo xterm* ti@:te@" > /root/.screenrc
screen -R ethminer-mining
git clone https://github.com/ethereum-mining/ethminer
mkdir -p /root/ethminer/build
cd /root/ethminer/build
export CFLAGS="-O2 -march=native -msse3 -fomit-frame-pointer -pipe"
export CHOST="x86_64-pc-linux-gnu"
export CXXFLAGS="${CFLAGS}"
export LDFLAGS="-Wl,-O1"
cmake .. -DETHASHCUDA=ON -DETHASHCL=ON
make -j 8
cd /root/ethminer/build/ethminer/
export GPU_FORCE_64BIT_PTR=0
export GPU_MAX_HEAP_SIZE=100
export GPU_USE_SYNC_OBJECTS=1
export GPU_MAX_ALLOC_PERCENT=100
export GPU_SINGLE_ALLOC_PERCENT=100
./ethminer -U -F http://<your-pool-address>/<your-ethereum-address>

2. Here is the all real output (just the configuration of Pool address and the ethereum address are changed for security reasons, use your own)

 

ubuntu@mylocal:~$ sudo su
root@ip-172-31-3-105:~# wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_9.1.85-1_amd64.deb
--2018-02-23 09:25:04--  http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_9.1.85-1_amd64.deb
Resolving developer.download.nvidia.com (developer.download.nvidia.com)... 192.229.211.70, 2606:2800:21f:3aa:dcf:37b:1ed6:1fb
Connecting to developer.download.nvidia.com (developer.download.nvidia.com)|192.229.211.70|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2820 (2.8K) [application/x-deb]
Saving to: ‘cuda-repo-ubuntu1604_9.1.85-1_amd64.deb’

cuda-repo-ubuntu1604_9.1.85-1_amd64.deb    100%[========================================================================================>]   2.75K  --.-KB/s    in 0s       
                                                                                                                                                                            
2018-02-23 09:25:04 (332 MB/s) - ‘cuda-repo-ubuntu1604_9.1.85-1_amd64.deb’ saved [2820/2820]                                                                                
root@ip-172-31-3-105:~# sudo dpkg -i /root/cuda-repo-ubuntu1604_9.1.85-1_amd64.deb
Selecting previously unselected package cuda-repo-ubuntu1604.
(Reading database ... 51107 files and directories currently installed.)
Preparing to unpack .../cuda-repo-ubuntu1604_9.1.85-1_amd64.deb ...
Unpacking cuda-repo-ubuntu1604 (9.1.85-1) ...
Setting up cuda-repo-ubuntu1604 (9.1.85-1) ...

The public CUDA GPG key does not appear to be installed.
To install the key, run this command:
sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub

root@ip-172-31-3-105:~# sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
Executing: /tmp/tmp.Z1DJgpLxrY/gpg.1.sh --fetch-keys
http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
gpg: key 7FA2AF80: public key "cudatools <cudatools@nvidia.com>" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)
root@ip-172-31-3-105:~# sudo dpkg -i /root/cuda-repo-ubuntu1604_9.1.85-1_amd64.deb
(Reading database ... 51110 files and directories currently installed.)
Preparing to unpack .../cuda-repo-ubuntu1604_9.1.85-1_amd64.deb ...
Unpacking cuda-repo-ubuntu1604 (9.1.85-1) over (9.1.85-1) ...
Setting up cuda-repo-ubuntu1604 (9.1.85-1) ...
root@ip-172-31-3-105:~# sudo add-apt-repository -y ppa:graphics-drivers/ppa
gpg: keyring `/tmp/tmpq7st7q7i/secring.gpg' created
gpg: keyring `/tmp/tmpq7st7q7i/pubring.gpg' created
gpg: requesting key 1118213C from hkp server keyserver.ubuntu.com
gpg: /tmp/tmpq7st7q7i/trustdb.gpg: trustdb created
gpg: key 1118213C: public key "Launchpad PPA for Graphics Drivers Team" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)
OK
root@ip-172-31-3-105:~# sudo apt-get update -y
Hit:1 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial InRelease
Get:2 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates InRelease [102 kB]                 
Get:3 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-backports InRelease [102 kB]                                                                                   
Get:4 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial/main Sources [868 kB]                                                                                          
Ign:5 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64  InRelease                                  
Get:6 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64  Release [564 B]                            
Get:7 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial/restricted Sources [4,808 B]                                                  
Get:8 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial/universe Sources [7,728 kB]                                                   
Get:9 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64  Release.gpg [801 B]                                                
Get:10 http://security.ubuntu.com/ubuntu xenial-security InRelease [102 kB]                                                                         
Get:11 http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu xenial InRelease [24.3 kB]                                                      
Get:12 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial/multiverse Sources [179 kB]                                                                   
Get:13 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages [7,532 kB]                      
Get:14 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64  Packages [100 kB]                                             
Get:15 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial/universe Translation-en [4,354 kB]                                                            
Get:16 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial/multiverse amd64 Packages [144 kB]                                                    
Get:17 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial/multiverse Translation-en [106 kB]           
Get:18 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/main Sources [298 kB]                      
Get:19 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/restricted Sources [2,524 B]
Get:20 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/universe Sources [191 kB]         
Get:21 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/multiverse Sources [7,968 B]   
Get:22 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages [734 kB]      
Get:23 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/main Translation-en [305 kB]    
Get:24 http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu xenial/main amd64 Packages [11.9 kB]           
Get:25 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/restricted amd64 Packages [7,560 B]   
Get:26 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/restricted Translation-en [2,272 B]                           
Get:27 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/universe amd64 Packages [591 kB]                                    
Get:28 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/universe Translation-en [239 kB]                           
Get:29 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/multiverse amd64 Packages [16.2 kB]                              
Get:30 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/multiverse Translation-en [8,052 B]                           
Get:31 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-backports/main Sources [3,432 B]                                            
Get:32 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-backports/universe Sources [4,904 B]                                 
Get:33 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-backports/main amd64 Packages [4,836 B]                              
Get:34 http://security.ubuntu.com/ubuntu xenial-security/main Sources [116 kB]                                                     
Get:35 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-backports/main Translation-en [3,220 B]                           
Get:36 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-backports/universe amd64 Packages [6,628 B]                                          
Get:37 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-backports/universe Translation-en [3,768 B]                                     
Get:38 http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu xenial/main Translation-en [4,224 B]                                                   
Get:39 http://security.ubuntu.com/ubuntu xenial-security/restricted Sources [2,116 B]   
Get:40 http://security.ubuntu.com/ubuntu xenial-security/universe Sources [59.1 kB]
Get:41 http://security.ubuntu.com/ubuntu xenial-security/multiverse Sources [1,516 B]
Get:42 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages [458 kB]
Get:43 http://security.ubuntu.com/ubuntu xenial-security/main Translation-en [197 kB]
Get:44 http://security.ubuntu.com/ubuntu xenial-security/restricted amd64 Packages [7,224 B]
Get:45 http://security.ubuntu.com/ubuntu xenial-security/restricted Translation-en [2,152 B]
Get:46 http://security.ubuntu.com/ubuntu xenial-security/universe amd64 Packages [319 kB]
Get:47 http://security.ubuntu.com/ubuntu xenial-security/universe Translation-en [119 kB]
Get:48 http://security.ubuntu.com/ubuntu xenial-security/multiverse amd64 Packages [3,208 B]
Get:49 http://security.ubuntu.com/ubuntu xenial-security/multiverse Translation-en [1,408 B]
Fetched 25.1 MB in 3s (6,275 kB/s)                                  
Reading package lists... Done
root@ip-172-31-3-105:~# sudo apt-get install git cmake libleveldb-dev libjsoncpp-dev libboost-all-dev libgmp-dev libreadline-dev libcurl4-gnutls-dev ocl-icd-libopencl1 opencl-headers mesa-common-dev libmicrohttpd-dev build-essential cuda libcrypto++-dev libjsonrpccpp-dev -y
Reading package lists... Done
Building dependency tree       
Reading state information... Done
git is already the newest version (1:2.7.4-0ubuntu1.3).
The following additional packages will be installed:
  adwaita-icon-theme apg aptdaemon aspell aspell-en at-spi2-core autotools-dev avahi-daemon avahi-utils bbswitch-dkms binutils bluez bluez-obexd ca-certificates-java
  cheese-common cmake-data colord colord-data cpp cpp-5 cracklib-runtime crda cuda-9-1 cuda-command-line-tools-9-1 cuda-compiler-9-1 cuda-cublas-9-1 cuda-cublas-dev-9-1
  cuda-cudart-9-1 cuda-cudart-dev-9-1 cuda-cufft-9-1 cuda-cufft-dev-9-1 cuda-cuobjdump-9-1 cuda-cupti-9-1 cuda-curand-9-1 cuda-curand-dev-9-1 cuda-cusolver-9-1
  cuda-cusolver-dev-9-1 cuda-cusparse-9-1 cuda-cusparse-dev-9-1 cuda-demo-suite-9-1 cuda-documentation-9-1 cuda-driver-dev-9-1 cuda-drivers cuda-gdb-9-1
  cuda-gpu-library-advisor-9-1 cuda-libraries-9-1 cuda-libraries-dev-9-1 cuda-license-9-1 cuda-memcheck-9-1 cuda-misc-headers-9-1 cuda-npp-9-1 cuda-npp-dev-9-1
  cuda-nsight-9-1 cuda-nvcc-9-1 cuda-nvdisasm-9-1 cuda-nvgraph-9-1 cuda-nvgraph-dev-9-1 cuda-nvml-dev-9-1 cuda-nvprof-9-1 cuda-nvprune-9-1 cuda-nvrtc-9-1
  cuda-nvrtc-dev-9-1 cuda-nvtx-9-1 cuda-nvvp-9-1 cuda-runtime-9-1 cuda-samples-9-1 cuda-toolkit-9-1 cuda-tools-9-1 cuda-visual-tools-9-1 cups-pk-helper curl dbus-x11
  dconf-cli dconf-gsettings-backend dconf-service default-jre default-jre-headless desktop-file-utils dictionaries-common diffstat dkms dpkg-dev emacsen-common enchant
  evolution-data-server evolution-data-server-common evolution-data-server-online-accounts fakeroot fontconfig fontconfig-config fonts-dejavu-core fonts-dejavu-extra
  freeglut3 freeglut3-dev g++ g++-5 gcc gcc-5 gcc-5-base gcr geoclue geoclue-ubuntu-geoip gettext gir1.2-atk-1.0 gir1.2-freedesktop gir1.2-gdkpixbuf-2.0
  gir1.2-gnomekeyring-1.0 gir1.2-gtk-3.0 gir1.2-ibus-1.0 gir1.2-notify-0.7 gir1.2-packagekitglib-1.0 gir1.2-pango-1.0 gkbd-capplet glib-networking glib-networking-common
  glib-networking-services gnome-bluetooth gnome-desktop3-data gnome-keyring gnome-menus gnome-power-manager gnome-screensaver gnome-session-bin
  gnome-settings-daemon-schemas gnome-user-guide gnome-user-share gsettings-desktop-schemas gsettings-ubuntu-schemas gstreamer1.0-clutter-3.0 gstreamer1.0-plugins-base
  gstreamer1.0-plugins-good gstreamer1.0-x gvfs gvfs-backends gvfs-common gvfs-daemons gvfs-libs hardening-includes hicolor-icon-theme humanity-icon-theme hunspell-en-us
  hwdata ibus ibus-gtk ibus-gtk3 icu-devtools im-config indicator-applet indicator-application indicator-bluetooth indicator-datetime indicator-keyboard
  indicator-messages indicator-power indicator-session indicator-sound intltool-debian ippusbxd iputils-arping iw java-common lib32gcc1 libaa1 libaccount-plugin-1.0-0
  libaccount-plugin-generic-oauth libaccount-plugin-google libaccounts-glib0 libaccounts-qt5-1 libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl
  libappindicator3-1 libapt-pkg-perl libarchive-zip-perl libarchive13 libargtable2-0 libasan2 libasound2 libasound2-data libasound2-plugins libaspell15 libasprintf-dev
  libassuan0 libasyncns0 libatasmart4 libatk-bridge2.0-0 libatk1.0-0 libatk1.0-data libatomic1 libatspi2.0-0 libauthen-sasl-perl libavahi-client3 libavahi-common-data
  libavahi-common3 libavahi-core7 libavahi-glib1 libavc1394-0 libbluetooth3 libboost-atomic-dev libboost-atomic1.58-dev libboost-atomic1.58.0 libboost-chrono-dev
  libboost-chrono1.58-dev libboost-chrono1.58.0 libboost-context-dev libboost-context1.58-dev libboost-context1.58.0 libboost-coroutine-dev libboost-coroutine1.58-dev
  libboost-coroutine1.58.0 libboost-date-time-dev libboost-date-time1.58-dev libboost-date-time1.58.0 libboost-dev libboost-exception-dev libboost-exception1.58-dev
  libboost-filesystem-dev libboost-filesystem1.58-dev libboost-filesystem1.58.0 libboost-graph-dev libboost-graph-parallel-dev libboost-graph-parallel1.58-dev
  libboost-graph-parallel1.58.0 libboost-graph1.58-dev libboost-graph1.58.0 libboost-iostreams-dev libboost-iostreams1.58-dev libboost-iostreams1.58.0 libboost-locale-dev
  libboost-locale1.58-dev libboost-locale1.58.0 libboost-log-dev libboost-log1.58-dev libboost-log1.58.0 libboost-math-dev libboost-math1.58-dev libboost-math1.58.0
  libboost-mpi-dev libboost-mpi-python-dev libboost-mpi-python1.58-dev libboost-mpi-python1.58.0 libboost-mpi1.58-dev libboost-mpi1.58.0 libboost-program-options-dev
  libboost-program-options1.58-dev libboost-program-options1.58.0 libboost-python-dev libboost-python1.58-dev libboost-python1.58.0 libboost-random-dev
  libboost-random1.58-dev libboost-random1.58.0 libboost-regex-dev libboost-regex1.58-dev libboost-regex1.58.0 libboost-serialization-dev libboost-serialization1.58-dev
  libboost-serialization1.58.0 libboost-signals-dev libboost-signals1.58-dev libboost-signals1.58.0 libboost-system-dev libboost-system1.58-dev libboost-system1.58.0
  libboost-test-dev libboost-test1.58-dev libboost-test1.58.0 libboost-thread-dev libboost-thread1.58-dev libboost-thread1.58.0 libboost-timer-dev libboost-timer1.58-dev
  libboost-timer1.58.0 libboost-tools-dev libboost-wave-dev libboost-wave1.58-dev libboost-wave1.58.0 libboost1.58-dev libboost1.58-tools-dev libc-dev-bin libc6 libc6-dev
  libc6-i386 libcaca0 libcairo-gobject2 libcairo2 libcamel-1.2-54 libcanberra-gtk3-0 libcanberra-gtk3-module libcanberra-pulse libcanberra0 libcapnp-0.5.3 libcc1-0
  libcdio-cdda1 libcdio-paranoia1 libcdio13 libcdparanoia0 libcgi-fast-perl libcgi-pm-perl libcgmanager0 libcheese-gtk25 libcheese8 libcilkrts5 libclass-accessor-perl
  libclone-perl libclutter-1.0-0 libclutter-1.0-common libclutter-gst-3.0-0 libclutter-gtk-1.0-0 libcogl-common libcogl-pango20 libcogl-path20 libcogl20 libcolord2
  libcolorhug2 libcrack2 libcroco3 libcrypto++9v5 libcuda1-390 libcups2 libcurl3 libcurl3-gnutls libdaemon0 libdata-alias-perl libdatrie1 libdbusmenu-glib4
  libdbusmenu-gtk3-4 libdconf1 libdigest-hmac-perl libdouble-conversion1v5 libdpkg-perl libdrm-amdgpu1 libdrm-common libdrm-dev libdrm-intel1 libdrm-nouveau2
  libdrm-radeon1 libdrm2 libdv4 libebackend-1.2-10 libebook-1.2-16 libebook-contacts-1.2-2 libecal-1.2-19 libedata-book-1.2-25 libedata-cal-1.2-28 libedataserver-1.2-21
  libegl1-mesa libemail-valid-perl libenchant1c2a libencode-locale-perl libepoxy0 libevdev2 libexif12 libexpat1-dev libexporter-tiny-perl libfakeroot libfcgi-perl
  libfcitx-config4 libfcitx-gclient0 libfcitx-utils0 libfftw3-single3 libfile-basedir-perl libfile-fcntllock-perl libflac8 libfontconfig1 libfontenc1 libgbm1 libgcc-5-dev
  libgck-1-0 libgcr-3-common libgcr-base-3-1 libgcr-ui-3-1 libgcrypt20-dev libgd3 libgdata-common libgdata22 libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-common libgee-0.8-2
  libgeoclue0 libgeocode-glib0 libgeonames0 libgettextpo-dev libgettextpo0 libgif7 libgl1-mesa-dev libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa libglib2.0-bin
  libglu1-mesa libglu1-mesa-dev libgmpxx4ldbl libgnome-bluetooth13 libgnome-desktop-3-12 libgnome-keyring-common libgnome-keyring0 libgnome-menu-3-0 libgnomekbd-common
  libgnomekbd8 libgnutls-dev libgnutls28-dev libgnutlsxx28 libgoa-1.0-0b libgoa-1.0-common libgomp1 libgpg-error-dev libgphoto2-6 libgphoto2-l10n libgphoto2-port12
  libgraphite2-3 libgstreamer-plugins-base1.0-0 libgstreamer-plugins-good1.0-0 libgstreamer1.0-0 libgtk-3-0 libgtk-3-bin libgtk-3-common libgtk2.0-0 libgtk2.0-bin
  libgtk2.0-common libgtop-2.0-10 libgtop2-common libgudev-1.0-0 libgusb2 libgweather-3-6 libgweather-common libharfbuzz-icu0 libharfbuzz0b libhtml-parser-perl
  libhtml-tagset-perl libhttp-date-perl libhttp-message-perl libhunspell-1.3-0 libhwloc-dev libhwloc-plugins libhwloc5 libhyphen0 libibus-1.0-5 libibverbs-dev libibverbs1
  libical1a libice-dev libice6 libicu-dev libidn11-dev libido3-0.1-0 libiec61883-0 libieee1284-3 libimobiledevice6 libindicator3-7 libinput-bin libinput10 libio-html-perl
  libio-pty-perl libio-socket-inet6-perl libio-socket-ssl-perl libio-string-perl libipc-run-perl libipc-system-simple-perl libisl15 libitm1 libjack-jackd2-0 libjansson4
  libjavascriptcoregtk-4.0-18 libjbig0 libjpeg-turbo8 libjpeg8 libjson-glib-1.0-0 libjson-glib-1.0-common libjsoncpp1 libjsonrpccpp-client0 libjsonrpccpp-common0
  libjsonrpccpp-server0 libjsonrpccpp-stub0 liblcms2-2 libldb1 libleveldb1v5 liblightdm-gobject-1-0 liblist-moreutils-perl libllvm5.0 liblsan0 libltdl-dev libltdl7
  liblwp-mediatypes-perl libmailtools-perl libmbim-glib4 libmbim-proxy libmicrohttpd10 libmirclient9 libmircommon7 libmircore1 libmirprotobuf3 libmm-glib0 libmpc3 libmpx0
  libmtdev1 libmtp-common libmtp-runtime libmtp9 libnautilus-extension1a libndp0 libnet-dns-perl libnet-domain-tld-perl libnet-ip-perl libnet-libidn-perl
  libnet-smtp-ssl-perl libnet-ssleay-perl libnih-dbus1 libnl-3-200 libnl-genl-3-200 libnm-glib4 libnm-gtk-common libnm-gtk0 libnm-util2 libnm0 libnma-common libnma0
  libnotify4 libnspr4 libnss-mdns libnss3 libnss3-nssdb libnuma-dev libnuma1 liboauth0 libogg0 libopenmpi-dev libopenmpi1.10 libopus0 liborc-0.4-0 libp11-kit-dev
  libp11-kit-gnome-keyring libpackagekit-glib2-16 libpam-gnome-keyring libpanel-applet0 libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 libpangoxft-1.0-0
  libparse-debianchangelog-perl libpciaccess0 libpcre16-3 libpcsclite1 libperlio-gzip-perl libpixman-1-0 libplist3 libprotobuf-lite9v5 libproxy1v5 libpthread-stubs0-dev
  libpulse-mainloop-glib0 libpulse0 libpulsedsp libpwquality-common libpwquality1 libpython-dev libpython-stdlib libpython2.7 libpython2.7-dev libpython2.7-minimal
  libpython2.7-stdlib libqmi-glib5 libqmi-proxy libqt5core5a libqt5dbus5 libqt5gui5 libqt5network5 libqt5opengl5 libqt5printsupport5 libqt5qml5 libqt5quick5 libqt5sql5
  libqt5sql5-sqlite libqt5svg5 libqt5webkit5 libqt5widgets5 libqt5xml5 libquadmath0 libraw1394-11 libreadline6-dev librest-0.7-0 librsvg2-2 librsvg2-common libsamplerate0
  libsane libsane-common libsecret-1-0 libsecret-common libsensors4 libshout3 libsignon-extension1 libsignon-glib1 libsignon-plugins-common1 libsignon-qt5-1 libsm-dev
  libsm6 libsmbclient libsnappy1v5 libsndfile1 libsocket6-perl libsoup-gnome2.4-1 libsoup2.4-1 libspeex1 libspeexdsp1 libstdc++-5-dev libstdc++6 libsub-name-perl
  libtag1v5 libtag1v5-vanilla libtalloc2 libtasn1-6 libtasn1-6-dev libtasn1-doc libtdb1 libtevent0 libtext-levenshtein-perl libthai-data libthai0 libtheora0 libtiff5
  libtimedate-perl libtimezonemap-data libtimezonemap1 libtinfo-dev libtool libtsan0 libtxc-dxtn-s2tc0 libubsan0 libudisks2-0 libunistring0 libunity-control-center1
  libunity-settings-daemon1 libupower-glib3 liburi-perl liburl-dispatcher1 libusbmuxd4 libv4l-0 libv4lconvert0 libvdpau1 libvisual-0.4-0 libvorbis0a libvorbisenc2
  libvorbisfile3 libvpx3 libwacom-bin libwacom-common libwacom2 libwavpack1 libwayland-client0 libwayland-cursor0 libwayland-egl1-mesa libwayland-server0 libwbclient0
  libwebkit2gtk-4.0-37 libwebkit2gtk-4.0-37-gtk2 libwebp5 libwebrtc-audio-processing-0 libx11-dev libx11-doc libx11-xcb-dev libx11-xcb1 libxau-dev libxaw7 libxcb-dri2-0
  libxcb-dri2-0-dev libxcb-dri3-0 libxcb-dri3-dev libxcb-glx0 libxcb-glx0-dev libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-present-dev libxcb-present0 libxcb-randr0
  libxcb-randr0-dev libxcb-render-util0 libxcb-render0 libxcb-render0-dev libxcb-shape0 libxcb-shape0-dev libxcb-shm0 libxcb-sync-dev libxcb-sync1 libxcb-util1
  libxcb-xfixes0 libxcb-xfixes0-dev libxcb-xkb1 libxcb1-dev libxcomposite1 libxcursor1 libxdamage-dev libxdamage1 libxdmcp-dev libxext-dev libxfixes-dev libxfixes3
  libxfont1 libxft2 libxi-dev libxi6 libxinerama1 libxkbcommon-x11-0 libxkbcommon0 libxkbfile1 libxklavier16 libxmu-dev libxmu-headers libxmu6 libxnvctrl0 libxpm4
  libxrandr2 libxrender1 libxshmfence-dev libxshmfence1 libxslt1.1 libxt-dev libxt6 libxtst6 libxv1 libxxf86dga1 libxxf86vm-dev libxxf86vm1 libyaml-libyaml-perl libyelp0
  lightdm lintian linux-libc-dev make manpages-dev mesa-vdpau-drivers mobile-broadband-provider-info modemmanager mountall mousetweaks mpi-default-bin mpi-default-dev
  nautilus-data nettle-dev network-manager network-manager-gnome network-manager-pptp notification-daemon nvidia-390 nvidia-390-dev nvidia-modprobe nvidia-opencl-icd-390
  nvidia-prime nvidia-settings openjdk-8-jre openjdk-8-jre-headless openmpi-bin openmpi-common p11-kit p11-kit-modules patchutils pinentry-gnome3 pkg-config
  policykit-1-gnome ppp pptp-linux pulseaudio pulseaudio-module-x11 pulseaudio-utils python python-dev python-minimal python-talloc python2.7 python2.7-dev
  python2.7-minimal python3-aptdaemon python3-aptdaemon.pkcompat python3-bs4 python3-cairo python3-cups python3-cupshelpers python3-defer python3-html5lib python3-lxml
  python3-xdg python3-xkit qttranslations5-l10n rtkit samba-libs screen-resolution-extra session-migration signon-keyring-extension signon-plugin-oauth2
  signon-plugin-password signon-ui signon-ui-service signon-ui-x11 signond sound-theme-freedesktop system-config-printer-common system-config-printer-gnome
  system-config-printer-udev t1utils ubuntu-mono ubuntu-system-service ubuntu-touch-sounds udisks2 unity-control-center unity-control-center-faces
  unity-control-center-signon unity-greeter unity-settings-daemon upower upstart usb-modeswitch usb-modeswitch-data usbmuxd vdpau-driver-all wamerican wireless-regdb
  wpasupplicant x11-common x11-utils x11-xkb-utils x11proto-core-dev x11proto-damage-dev x11proto-dri2-dev x11proto-fixes-dev x11proto-gl-dev x11proto-input-dev
  x11proto-kb-dev x11proto-xext-dev x11proto-xf86vidmode-dev xfonts-base xfonts-encodings xfonts-utils xorg-sgml-doctools xserver-common xserver-xorg xserver-xorg-core
  xserver-xorg-input-all xserver-xorg-input-evdev xserver-xorg-input-synaptics xserver-xorg-input-vmmouse xserver-xorg-input-wacom xserver-xorg-legacy xtrans-dev yelp
  yelp-xsl zlib1g-dev
Suggested packages:
  aspell-doc spellutils avahi-autoipd bumblebee binutils-doc codeblocks eclipse ninja-build colord-sensor-argyll cpp-doc gcc-5-locales default-java-plugin debian-keyring
  evolution evolution-data-server-dbg g++-multilib g++-5-multilib gcc-5-doc libstdc++6-5-dbg gcc-multilib autoconf automake flex bison gdb gcc-doc gcc-5-multilib
  libgcc1-dbg libgomp1-dbg libitm1-dbg libatomic1-dbg libasan2-dbg liblsan0-dbg libtsan0-dbg libubsan0-dbg libcilkrts5-dbg libmpx0-dbg libquadmath0-dbg gettext-doc
  autopoint apache2-bin libapache2-mod-dnssd samba-common hunspell openoffice.org-hunspell | openoffice.org-core ibus-clutter ibus-doc ibus-qt4 click powerd
  unity-system-compositor zenity unity-greeter-session-broadcast lrzip alsa-utils libgssapi-perl libboost-doc graphviz libboost1.58-doc gccxml libmpfrc++-dev libntl-dev
  xsltproc doxygen docbook-xml docbook-xsl default-jdk fop glibc-doc libcanberra-gtk0 libgles2-mesa | libgles2 cups-common libcurl4-doc libcurl3-dbg libkrb5-dev
  libldap2-dev librtmp-dev libdv-bin oss-compat libenchant-voikko fcitx libfftw3-bin libfftw3-dev libgcrypt20-doc libgd-tools gmp-doc libgmp10-doc libmpfr-dev gnutls-doc
  gnutls-bin guile-gnutls gphoto2 libvisual-0.4-plugins gstreamer1.0-tools libdata-dump-perl libhwloc-contrib-plugins libice-doc icu-doc libusbmuxd-tools jackd2
  libjsonrpccpp-tools liblcms2-utils leveldb-doc libtool-doc avahi-autoipd | zeroconf opennmpi-doc opus-tools libhtml-template-perl libxml-simple-perl pcscd
  libqt5libqgtk2 qt5-image-formats-plugins qtwayland5 libraw1394-doc readline-doc librsvg2-bin hplip libsane-extras sane-utils lm-sensors libsm-doc speex libstdc++-5-doc
  automaken gfortran | fortran95-compiler gcj-jdk libwww-perl url-dispatcher libxcb-doc libxext-doc libxt-doc bindfs binutils-multiarch libtext-template-perl make-doc
  nautilus network-manager-openconnect-gnome network-manager-openvpn-gnome network-manager-vpnc-gnome network-manager-pptp-gnome icedtea-8-plugin fonts-ipafont-gothic
  fonts-ipafont-mincho fonts-wqy-microhei fonts-wqy-zenhei fonts-indic gfortran openmpi-checkpoint pinentry-doc pavumeter pavucontrol paman paprefs python-doc python-tk
  python2.7-doc binfmt-support python3-genshi python3-lxml-dbg python-lxml-doc python3-smbc reiserfsprogs exfat-utils libcanberra-gtk-module x11-xserver-utils
  lightdm-remote-session-freerdp lightdm-remote-session-uccsconfigure remote-login-service metacity | x-window-manager upstart-monitor comgt wvdial libvdpau-va-gl1
  nvidia-vdpau-driver nvidia-legacy-340xx-vdpau-driver wpagui libengine-pkcs11-openssl mesa-utils xfonts-100dpi | xfonts-75dpi xfonts-scalable gpointing-device-settings
  touchfreeze xinput
The following NEW packages will be installed:
  adwaita-icon-theme apg aptdaemon aspell aspell-en at-spi2-core autotools-dev avahi-daemon avahi-utils bbswitch-dkms binutils bluez bluez-obexd build-essential
  ca-certificates-java cheese-common cmake cmake-data colord colord-data cpp cpp-5 cracklib-runtime crda cuda cuda-9-1 cuda-command-line-tools-9-1 cuda-compiler-9-1
  cuda-cublas-9-1 cuda-cublas-dev-9-1 cuda-cudart-9-1 cuda-cudart-dev-9-1 cuda-cufft-9-1 cuda-cufft-dev-9-1 cuda-cuobjdump-9-1 cuda-cupti-9-1 cuda-curand-9-1
  cuda-curand-dev-9-1 cuda-cusolver-9-1 cuda-cusolver-dev-9-1 cuda-cusparse-9-1 cuda-cusparse-dev-9-1 cuda-demo-suite-9-1 cuda-documentation-9-1 cuda-driver-dev-9-1
  cuda-drivers cuda-gdb-9-1 cuda-gpu-library-advisor-9-1 cuda-libraries-9-1 cuda-libraries-dev-9-1 cuda-license-9-1 cuda-memcheck-9-1 cuda-misc-headers-9-1 cuda-npp-9-1
  cuda-npp-dev-9-1 cuda-nsight-9-1 cuda-nvcc-9-1 cuda-nvdisasm-9-1 cuda-nvgraph-9-1 cuda-nvgraph-dev-9-1 cuda-nvml-dev-9-1 cuda-nvprof-9-1 cuda-nvprune-9-1 cuda-nvrtc-9-1
  cuda-nvrtc-dev-9-1 cuda-nvtx-9-1 cuda-nvvp-9-1 cuda-runtime-9-1 cuda-samples-9-1 cuda-toolkit-9-1 cuda-tools-9-1 cuda-visual-tools-9-1 cups-pk-helper dbus-x11 dconf-cli
  dconf-gsettings-backend dconf-service default-jre default-jre-headless desktop-file-utils dictionaries-common diffstat dkms dpkg-dev emacsen-common enchant
  evolution-data-server evolution-data-server-common evolution-data-server-online-accounts fakeroot fontconfig fontconfig-config fonts-dejavu-core fonts-dejavu-extra
  freeglut3 freeglut3-dev g++ g++-5 gcc gcc-5 gcr geoclue geoclue-ubuntu-geoip gettext gir1.2-atk-1.0 gir1.2-freedesktop gir1.2-gdkpixbuf-2.0 gir1.2-gnomekeyring-1.0
  gir1.2-gtk-3.0 gir1.2-ibus-1.0 gir1.2-notify-0.7 gir1.2-packagekitglib-1.0 gir1.2-pango-1.0 gkbd-capplet glib-networking glib-networking-common glib-networking-services
  gnome-bluetooth gnome-desktop3-data gnome-keyring gnome-menus gnome-power-manager gnome-screensaver gnome-session-bin gnome-settings-daemon-schemas gnome-user-guide
  gnome-user-share gsettings-desktop-schemas gsettings-ubuntu-schemas gstreamer1.0-clutter-3.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-x gvfs
  gvfs-backends gvfs-common gvfs-daemons gvfs-libs hardening-includes hicolor-icon-theme humanity-icon-theme hunspell-en-us hwdata ibus ibus-gtk ibus-gtk3 icu-devtools
  im-config indicator-applet indicator-application indicator-bluetooth indicator-datetime indicator-keyboard indicator-messages indicator-power indicator-session
  indicator-sound intltool-debian ippusbxd iputils-arping iw java-common lib32gcc1 libaa1 libaccount-plugin-1.0-0 libaccount-plugin-generic-oauth libaccount-plugin-google
  libaccounts-glib0 libaccounts-qt5-1 libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libappindicator3-1 libapt-pkg-perl libarchive-zip-perl
  libarchive13 libargtable2-0 libasan2 libasound2 libasound2-data libasound2-plugins libaspell15 libasprintf-dev libassuan0 libasyncns0 libatasmart4 libatk-bridge2.0-0
  libatk1.0-0 libatk1.0-data libatomic1 libatspi2.0-0 libauthen-sasl-perl libavahi-client3 libavahi-common-data libavahi-common3 libavahi-core7 libavahi-glib1
  libavc1394-0 libbluetooth3 libboost-all-dev libboost-atomic-dev libboost-atomic1.58-dev libboost-atomic1.58.0 libboost-chrono-dev libboost-chrono1.58-dev
  libboost-chrono1.58.0 libboost-context-dev libboost-context1.58-dev libboost-context1.58.0 libboost-coroutine-dev libboost-coroutine1.58-dev libboost-coroutine1.58.0
  libboost-date-time-dev libboost-date-time1.58-dev libboost-date-time1.58.0 libboost-dev libboost-exception-dev libboost-exception1.58-dev libboost-filesystem-dev
  libboost-filesystem1.58-dev libboost-filesystem1.58.0 libboost-graph-dev libboost-graph-parallel-dev libboost-graph-parallel1.58-dev libboost-graph-parallel1.58.0
  libboost-graph1.58-dev libboost-graph1.58.0 libboost-iostreams-dev libboost-iostreams1.58-dev libboost-iostreams1.58.0 libboost-locale-dev libboost-locale1.58-dev
  libboost-locale1.58.0 libboost-log-dev libboost-log1.58-dev libboost-log1.58.0 libboost-math-dev libboost-math1.58-dev libboost-math1.58.0 libboost-mpi-dev
  libboost-mpi-python-dev libboost-mpi-python1.58-dev libboost-mpi-python1.58.0 libboost-mpi1.58-dev libboost-mpi1.58.0 libboost-program-options-dev
  libboost-program-options1.58-dev libboost-program-options1.58.0 libboost-python-dev libboost-python1.58-dev libboost-python1.58.0 libboost-random-dev
  libboost-random1.58-dev libboost-random1.58.0 libboost-regex-dev libboost-regex1.58-dev libboost-regex1.58.0 libboost-serialization-dev libboost-serialization1.58-dev
  libboost-serialization1.58.0 libboost-signals-dev libboost-signals1.58-dev libboost-signals1.58.0 libboost-system-dev libboost-system1.58-dev libboost-system1.58.0
  libboost-test-dev libboost-test1.58-dev libboost-test1.58.0 libboost-thread-dev libboost-thread1.58-dev libboost-thread1.58.0 libboost-timer-dev libboost-timer1.58-dev
  libboost-timer1.58.0 libboost-tools-dev libboost-wave-dev libboost-wave1.58-dev libboost-wave1.58.0 libboost1.58-dev libboost1.58-tools-dev libc-dev-bin libc6-dev
  libc6-i386 libcaca0 libcairo-gobject2 libcairo2 libcamel-1.2-54 libcanberra-gtk3-0 libcanberra-gtk3-module libcanberra-pulse libcanberra0 libcapnp-0.5.3 libcc1-0
  libcdio-cdda1 libcdio-paranoia1 libcdio13 libcdparanoia0 libcgi-fast-perl libcgi-pm-perl libcgmanager0 libcheese-gtk25 libcheese8 libcilkrts5 libclass-accessor-perl
  libclone-perl libclutter-1.0-0 libclutter-1.0-common libclutter-gst-3.0-0 libclutter-gtk-1.0-0 libcogl-common libcogl-pango20 libcogl-path20 libcogl20 libcolord2
  libcolorhug2 libcrack2 libcroco3 libcrypto++-dev libcrypto++9v5 libcuda1-390 libcups2 libcurl3 libcurl4-gnutls-dev libdaemon0 libdata-alias-perl libdatrie1
  libdbusmenu-glib4 libdbusmenu-gtk3-4 libdconf1 libdigest-hmac-perl libdouble-conversion1v5 libdpkg-perl libdrm-amdgpu1 libdrm-common libdrm-dev libdrm-intel1
  libdrm-nouveau2 libdrm-radeon1 libdv4 libebackend-1.2-10 libebook-1.2-16 libebook-contacts-1.2-2 libecal-1.2-19 libedata-book-1.2-25 libedata-cal-1.2-28
  libedataserver-1.2-21 libegl1-mesa libemail-valid-perl libenchant1c2a libencode-locale-perl libepoxy0 libevdev2 libexif12 libexpat1-dev libexporter-tiny-perl
  libfakeroot libfcgi-perl libfcitx-config4 libfcitx-gclient0 libfcitx-utils0 libfftw3-single3 libfile-basedir-perl libfile-fcntllock-perl libflac8 libfontconfig1
  libfontenc1 libgbm1 libgcc-5-dev libgck-1-0 libgcr-3-common libgcr-base-3-1 libgcr-ui-3-1 libgcrypt20-dev libgd3 libgdata-common libgdata22 libgdk-pixbuf2.0-0
  libgdk-pixbuf2.0-common libgee-0.8-2 libgeoclue0 libgeocode-glib0 libgeonames0 libgettextpo-dev libgettextpo0 libgif7 libgl1-mesa-dev libgl1-mesa-dri libgl1-mesa-glx
  libglapi-mesa libglib2.0-bin libglu1-mesa libglu1-mesa-dev libgmp-dev libgmpxx4ldbl libgnome-bluetooth13 libgnome-desktop-3-12 libgnome-keyring-common libgnome-keyring0
  libgnome-menu-3-0 libgnomekbd-common libgnomekbd8 libgnutls-dev libgnutls28-dev libgnutlsxx28 libgoa-1.0-0b libgoa-1.0-common libgomp1 libgpg-error-dev libgphoto2-6
  libgphoto2-l10n libgphoto2-port12 libgraphite2-3 libgstreamer-plugins-base1.0-0 libgstreamer-plugins-good1.0-0 libgstreamer1.0-0 libgtk-3-0 libgtk-3-bin libgtk-3-common
  libgtk2.0-0 libgtk2.0-bin libgtk2.0-common libgtop-2.0-10 libgtop2-common libgudev-1.0-0 libgusb2 libgweather-3-6 libgweather-common libharfbuzz-icu0 libharfbuzz0b
  libhtml-parser-perl libhtml-tagset-perl libhttp-date-perl libhttp-message-perl libhunspell-1.3-0 libhwloc-dev libhwloc-plugins libhwloc5 libhyphen0 libibus-1.0-5
  libibverbs-dev libibverbs1 libical1a libice-dev libice6 libicu-dev libidn11-dev libido3-0.1-0 libiec61883-0 libieee1284-3 libimobiledevice6 libindicator3-7 libinput-bin
  libinput10 libio-html-perl libio-pty-perl libio-socket-inet6-perl libio-socket-ssl-perl libio-string-perl libipc-run-perl libipc-system-simple-perl libisl15 libitm1
  libjack-jackd2-0 libjansson4 libjavascriptcoregtk-4.0-18 libjbig0 libjpeg-turbo8 libjpeg8 libjson-glib-1.0-0 libjson-glib-1.0-common libjsoncpp-dev libjsoncpp1
  libjsonrpccpp-client0 libjsonrpccpp-common0 libjsonrpccpp-dev libjsonrpccpp-server0 libjsonrpccpp-stub0 liblcms2-2 libldb1 libleveldb-dev libleveldb1v5
  liblightdm-gobject-1-0 liblist-moreutils-perl libllvm5.0 liblsan0 libltdl-dev libltdl7 liblwp-mediatypes-perl libmailtools-perl libmbim-glib4 libmbim-proxy
  libmicrohttpd-dev libmicrohttpd10 libmirclient9 libmircommon7 libmircore1 libmirprotobuf3 libmm-glib0 libmpc3 libmpx0 libmtdev1 libmtp-common libmtp-runtime libmtp9
  libnautilus-extension1a libndp0 libnet-dns-perl libnet-domain-tld-perl libnet-ip-perl libnet-libidn-perl libnet-smtp-ssl-perl libnet-ssleay-perl libnih-dbus1
  libnl-3-200 libnl-genl-3-200 libnm-glib4 libnm-gtk-common libnm-gtk0 libnm-util2 libnm0 libnma-common libnma0 libnotify4 libnspr4 libnss-mdns libnss3 libnss3-nssdb
  libnuma-dev liboauth0 libogg0 libopenmpi-dev libopenmpi1.10 libopus0 liborc-0.4-0 libp11-kit-dev libp11-kit-gnome-keyring libpackagekit-glib2-16 libpam-gnome-keyring
  libpanel-applet0 libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 libpangoxft-1.0-0 libparse-debianchangelog-perl libpciaccess0 libpcre16-3 libpcsclite1
  libperlio-gzip-perl libpixman-1-0 libplist3 libprotobuf-lite9v5 libproxy1v5 libpthread-stubs0-dev libpulse-mainloop-glib0 libpulse0 libpulsedsp libpwquality-common
  libpwquality1 libpython-dev libpython-stdlib libpython2.7 libpython2.7-dev libpython2.7-minimal libpython2.7-stdlib libqmi-glib5 libqmi-proxy libqt5core5a libqt5dbus5
  libqt5gui5 libqt5network5 libqt5opengl5 libqt5printsupport5 libqt5qml5 libqt5quick5 libqt5sql5 libqt5sql5-sqlite libqt5svg5 libqt5webkit5 libqt5widgets5 libqt5xml5
  libquadmath0 libraw1394-11 libreadline-dev libreadline6-dev librest-0.7-0 librsvg2-2 librsvg2-common libsamplerate0 libsane libsane-common libsecret-1-0
  libsecret-common libsensors4 libshout3 libsignon-extension1 libsignon-glib1 libsignon-plugins-common1 libsignon-qt5-1 libsm-dev libsm6 libsmbclient libsnappy1v5
  libsndfile1 libsocket6-perl libsoup-gnome2.4-1 libsoup2.4-1 libspeex1 libspeexdsp1 libstdc++-5-dev libsub-name-perl libtag1v5 libtag1v5-vanilla libtalloc2
  libtasn1-6-dev libtasn1-doc libtdb1 libtevent0 libtext-levenshtein-perl libthai-data libthai0 libtheora0 libtiff5 libtimedate-perl libtimezonemap-data libtimezonemap1
  libtinfo-dev libtool libtsan0 libtxc-dxtn-s2tc0 libubsan0 libudisks2-0 libunistring0 libunity-control-center1 libunity-settings-daemon1 libupower-glib3 liburi-perl
  liburl-dispatcher1 libusbmuxd4 libv4l-0 libv4lconvert0 libvdpau1 libvisual-0.4-0 libvorbis0a libvorbisenc2 libvorbisfile3 libvpx3 libwacom-bin libwacom-common libwacom2
  libwavpack1 libwayland-client0 libwayland-cursor0 libwayland-egl1-mesa libwayland-server0 libwbclient0 libwebkit2gtk-4.0-37 libwebkit2gtk-4.0-37-gtk2 libwebp5
  libwebrtc-audio-processing-0 libx11-dev libx11-doc libx11-xcb-dev libx11-xcb1 libxau-dev libxaw7 libxcb-dri2-0 libxcb-dri2-0-dev libxcb-dri3-0 libxcb-dri3-dev
  libxcb-glx0 libxcb-glx0-dev libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-present-dev libxcb-present0 libxcb-randr0 libxcb-randr0-dev libxcb-render-util0
  libxcb-render0 libxcb-render0-dev libxcb-shape0 libxcb-shape0-dev libxcb-shm0 libxcb-sync-dev libxcb-sync1 libxcb-util1 libxcb-xfixes0 libxcb-xfixes0-dev libxcb-xkb1
  libxcb1-dev libxcomposite1 libxcursor1 libxdamage-dev libxdamage1 libxdmcp-dev libxext-dev libxfixes-dev libxfixes3 libxfont1 libxft2 libxi-dev libxi6 libxinerama1
  libxkbcommon-x11-0 libxkbcommon0 libxkbfile1 libxklavier16 libxmu-dev libxmu-headers libxmu6 libxnvctrl0 libxpm4 libxrandr2 libxrender1 libxshmfence-dev libxshmfence1
  libxslt1.1 libxt-dev libxt6 libxtst6 libxv1 libxxf86dga1 libxxf86vm-dev libxxf86vm1 libyaml-libyaml-perl libyelp0 lightdm lintian linux-libc-dev make manpages-dev
  mesa-common-dev mesa-vdpau-drivers mobile-broadband-provider-info modemmanager mountall mousetweaks mpi-default-bin mpi-default-dev nautilus-data nettle-dev
  network-manager network-manager-gnome network-manager-pptp notification-daemon nvidia-390 nvidia-390-dev nvidia-modprobe nvidia-opencl-icd-390 nvidia-prime
  nvidia-settings ocl-icd-libopencl1 opencl-headers openjdk-8-jre openjdk-8-jre-headless openmpi-bin openmpi-common p11-kit p11-kit-modules patchutils pinentry-gnome3
  pkg-config policykit-1-gnome ppp pptp-linux pulseaudio pulseaudio-module-x11 pulseaudio-utils python python-dev python-minimal python-talloc python2.7 python2.7-dev
  python2.7-minimal python3-aptdaemon python3-aptdaemon.pkcompat python3-bs4 python3-cairo python3-cups python3-cupshelpers python3-defer python3-html5lib python3-lxml
  python3-xdg python3-xkit qttranslations5-l10n rtkit samba-libs screen-resolution-extra session-migration signon-keyring-extension signon-plugin-oauth2
  signon-plugin-password signon-ui signon-ui-service signon-ui-x11 signond sound-theme-freedesktop system-config-printer-common system-config-printer-gnome
  system-config-printer-udev t1utils ubuntu-mono ubuntu-system-service ubuntu-touch-sounds udisks2 unity-control-center unity-control-center-faces
  unity-control-center-signon unity-greeter unity-settings-daemon upower upstart usb-modeswitch usb-modeswitch-data usbmuxd vdpau-driver-all wamerican wireless-regdb
  wpasupplicant x11-common x11-utils x11-xkb-utils x11proto-core-dev x11proto-damage-dev x11proto-dri2-dev x11proto-fixes-dev x11proto-gl-dev x11proto-input-dev
  x11proto-kb-dev x11proto-xext-dev x11proto-xf86vidmode-dev xfonts-base xfonts-encodings xfonts-utils xorg-sgml-doctools xserver-common xserver-xorg xserver-xorg-core
  xserver-xorg-input-all xserver-xorg-input-evdev xserver-xorg-input-synaptics xserver-xorg-input-vmmouse xserver-xorg-input-wacom xserver-xorg-legacy xtrans-dev yelp
  yelp-xsl zlib1g-dev
The following packages will be upgraded:
  curl gcc-5-base libc6 libcurl3-gnutls libdrm2 libnuma1 libstdc++6 libtasn1-6
8 upgraded, 852 newly installed, 0 to remove and 92 not upgraded.
Need to get 1,502 MB of archives.
After this operation, 4,194 MB of additional disk space will be used.
Get:1 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/main amd64 cmake-data all 3.5.1-1ubuntu3 [1,121 kB]
Get:2 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/main amd64 libc6 amd64 2.23-0ubuntu10 [2,580 kB]
Get:3 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/main amd64 libarchive13 amd64 3.1.2-11ubuntu0.16.04.3 [262 kB]
Get:4 http://us-east-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/main amd64 libcurl3 amd64 7.47.0-1ubuntu2.6 [187 kB]
...
...
Setting up nvidia-390 (390.30-0ubuntu1) ...
update-alternatives: using /usr/lib/nvidia-390/ld.so.conf to provide /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf (x86_64-linux-gnu_gl_conf) in auto mode
update-alternatives: warning: skip creation of /usr/share/grub-gfxpayload-lists/blacklist/10_proprietary-graphics-drivers because associated file /usr/share/nvidia-390/nvidia-390.grub-gfxpayload (of link group x86_64-linux-gnu_gl_conf) doesn't exist
update-alternatives: using /usr/lib/nvidia-390/ld.so.conf to provide /etc/ld.so.conf.d/x86_64-linux-gnu_EGL.conf (x86_64-linux-gnu_egl_conf) in auto mode
update-alternatives: using /usr/lib/nvidia-390/alt_ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in auto mode
update-alternatives: using /usr/lib/nvidia-390/alt_ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_EGL.conf (i386-linux-gnu_egl_conf) in auto mode
update-alternatives: using /usr/share/nvidia-390/glamor.conf to provide /usr/share/X11/xorg.conf.d/glamoregl.conf (glamor_conf) in auto mode
update-initramfs: deferring update (trigger activated)

A modprobe blacklist file has been created at /etc/modprobe.d to prevent Nouveau from loading. This can be reverted by deleting /etc/modprobe.d/nvidia-graphics-drivers.conf.
A new initrd image has also been created. To revert, please replace /boot/initrd-4.4.0-1041-aws with /boot/initrd-$(uname -r)-backup.

*****************************************************************************
*** Reboot your computer and verify that the NVIDIA graphics driver can   ***
*** be loaded.                                                            ***
*****************************************************************************

Adding system user `nvidia-persistenced' (UID 115) ...
Adding new group `nvidia-persistenced' (GID 122) ...
Adding new user `nvidia-persistenced' (UID 115) with group `nvidia-persistenced' ...
Not creating home directory `/'.
Loading new nvidia-390-390.30 DKMS files...
First Installation: checking all kernels...
Building only for 4.4.0-1041-aws
Building for architecture x86_64
Building initial module for 4.4.0-1041-aws
Done.

nvidia_390:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/4.4.0-1041-aws/updates/dkms/

nvidia_390_modeset.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/4.4.0-1041-aws/updates/dkms/

nvidia_390_drm.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/4.4.0-1041-aws/updates/dkms/

nvidia_390_uvm.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/4.4.0-1041-aws/updates/dkms/

depmod....

DKMS: install completed.
Setting up nvidia-390-dev (390.30-0ubuntu1) ...
Setting up libcuda1-390 (390.30-0ubuntu1) ...
Setting up nvidia-modprobe (390.30-0ubuntu1) ...
....
....

done.
done.
root@ip-172-31-3-105:~# reboot
root@ip-172-31-3-105:~/ethminer/build# make -j 4
Scanning dependencies of target ethash
[  5%] Building C object libethash/CMakeFiles/ethash.dir/sha3.c.o
[  5%] Building C object libethash/CMakeFiles/ethash.dir/internal.c.o
[  5%] Built target BuildInfo.h
Scanning dependencies of target devcore
[  8%] Building CXX object libdevcore/CMakeFiles/devcore.dir/RLP.cpp.o
[ 10%] Building CXX object libdevcore/CMakeFiles/devcore.dir/Worker.cpp.o
[ 13%] Building CXX object libdevcore/CMakeFiles/devcore.dir/FixedHash.cpp.o
[ 16%] Linking C static library libethash.a
[ 16%] Built target ethash
[ 18%] Building CXX object libdevcore/CMakeFiles/devcore.dir/SHA3.cpp.o
[ 21%] Building CXX object libdevcore/CMakeFiles/devcore.dir/CommonData.cpp.o
[ 24%] Building CXX object libdevcore/CMakeFiles/devcore.dir/Log.cpp.o
[ 27%] Linking CXX static library libdevcore.a
[ 27%] Built target devcore
Scanning dependencies of target hwmon
[ 32%] Building CXX object libhwmon/CMakeFiles/hwmon.dir/wraphelper.cpp.o
[ 32%] Building CXX object libhwmon/CMakeFiles/hwmon.dir/wrapnvml.cpp.o
Scanning dependencies of target apicore
[ 35%] Building CXX object libhwmon/CMakeFiles/hwmon.dir/wrapadl.cpp.o
Scanning dependencies of target poolprotocols
[ 37%] Building CXX object libhwmon/CMakeFiles/hwmon.dir/wrapamdsysfs.cpp.o
[ 40%] Building CXX object libapicore/CMakeFiles/apicore.dir/Api.cpp.o
[ 43%] Building CXX object libapicore/CMakeFiles/apicore.dir/ApiServer.cpp.o
[ 45%] Building CXX object libpoolprotocols/CMakeFiles/poolprotocols.dir/PoolClient.cpp.o
[ 48%] Linking CXX static library libhwmon.a
[ 48%] Built target hwmon
[ 51%] Building CXX object libpoolprotocols/CMakeFiles/poolprotocols.dir/PoolManager.cpp.o
[ 54%] Building CXX object libpoolprotocols/CMakeFiles/poolprotocols.dir/testing/SimulateClient.cpp.o
[ 56%] Building CXX object libpoolprotocols/CMakeFiles/poolprotocols.dir/stratum/EthStratumClient.cpp.o
[ 59%] Linking CXX static library libapicore.a
[ 59%] Built target apicore
[ 62%] Building NVCC (Device) object libethash-cuda/CMakeFiles/ethash-cuda.dir/ethash-cuda_generated_ethash_cuda_miner_kernel.cu.o
/root/ethminer/libpoolprotocols/testing/SimulateClient.cpp:41:52: warning: unused parameter ‘rate’ [-Wunused-parameter]
 void SimulateClient::submitHashrate(string const & rate)
                                                    ^
[ 64%] Building CXX object libpoolprotocols/CMakeFiles/poolprotocols.dir/getwork/EthGetworkClient.cpp.o
ptxas info    : 0 bytes gmem, 264 bytes cmem[3]
ptxas info    : Compiling entry function '_Z25ethash_calculate_dag_itemj' for 'sm_30'
ptxas info    : Function properties for _Z25ethash_calculate_dag_itemj
    656 bytes stack frame, 1136 bytes spill stores, 844 bytes spill loads
ptxas info    : Used 63 registers, 324 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj8EEvPV14search_resultsm' for 'sm_30'
ptxas info    : Function properties for _Z13ethash_searchILj8EEvPV14search_resultsm
    160 bytes stack frame, 408 bytes spill stores, 420 bytes spill loads
ptxas info    : Used 63 registers, 336 bytes cmem[0], 96 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj4EEvPV14search_resultsm' for 'sm_30'
ptxas info    : Function properties for _Z13ethash_searchILj4EEvPV14search_resultsm
    104 bytes stack frame, 288 bytes spill stores, 276 bytes spill loads
ptxas info    : Used 63 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj2EEvPV14search_resultsm' for 'sm_30'
ptxas info    : Function properties for _Z13ethash_searchILj2EEvPV14search_resultsm
    72 bytes stack frame, 236 bytes spill stores, 212 bytes spill loads
ptxas info    : Used 63 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj1EEvPV14search_resultsm' for 'sm_30'
ptxas info    : Function properties for _Z13ethash_searchILj1EEvPV14search_resultsm
    72 bytes stack frame, 224 bytes spill stores, 204 bytes spill loads
ptxas info    : Used 63 registers, 336 bytes cmem[0]
ptxas info    : 0 bytes gmem, 264 bytes cmem[3]
ptxas info    : Compiling entry function '_Z25ethash_calculate_dag_itemj' for 'sm_35'
ptxas info    : Function properties for _Z25ethash_calculate_dag_itemj
    272 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 79 registers, 324 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj8EEvPV14search_resultsm' for 'sm_35'
ptxas info    : Function properties for _Z13ethash_searchILj8EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 101 registers, 336 bytes cmem[0], 96 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj4EEvPV14search_resultsm' for 'sm_35'
ptxas info    : Function properties for _Z13ethash_searchILj4EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj2EEvPV14search_resultsm' for 'sm_35'
ptxas info    : Function properties for _Z13ethash_searchILj2EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 79 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj1EEvPV14search_resultsm' for 'sm_35'
ptxas info    : Function properties for _Z13ethash_searchILj1EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 79 registers, 336 bytes cmem[0]
[ 67%] Linking CXX static library libpoolprotocols.a
[ 67%] Built target poolprotocols
ptxas info    : 0 bytes gmem, 264 bytes cmem[3]
ptxas info    : Compiling entry function '_Z25ethash_calculate_dag_itemj' for 'sm_50'
ptxas info    : Function properties for _Z25ethash_calculate_dag_itemj
    272 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 96 registers, 324 bytes cmem[0], 4 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj8EEvPV14search_resultsm' for 'sm_50'
ptxas info    : Function properties for _Z13ethash_searchILj8EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 107 registers, 336 bytes cmem[0], 96 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj4EEvPV14search_resultsm' for 'sm_50'
ptxas info    : Function properties for _Z13ethash_searchILj4EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj2EEvPV14search_resultsm' for 'sm_50'
ptxas info    : Function properties for _Z13ethash_searchILj2EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj1EEvPV14search_resultsm' for 'sm_50'
ptxas info    : Function properties for _Z13ethash_searchILj1EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : 0 bytes gmem, 264 bytes cmem[3]
ptxas info    : Compiling entry function '_Z25ethash_calculate_dag_itemj' for 'sm_52'
ptxas info    : Function properties for _Z25ethash_calculate_dag_itemj
    272 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 96 registers, 324 bytes cmem[0], 4 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj8EEvPV14search_resultsm' for 'sm_52'
ptxas info    : Function properties for _Z13ethash_searchILj8EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 107 registers, 336 bytes cmem[0], 96 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj4EEvPV14search_resultsm' for 'sm_52'
ptxas info    : Function properties for _Z13ethash_searchILj4EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj2EEvPV14search_resultsm' for 'sm_52'
ptxas info    : Function properties for _Z13ethash_searchILj2EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj1EEvPV14search_resultsm' for 'sm_52'
ptxas info    : Function properties for _Z13ethash_searchILj1EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : 0 bytes gmem, 264 bytes cmem[3]
ptxas info    : Compiling entry function '_Z25ethash_calculate_dag_itemj' for 'sm_53'
ptxas info    : Function properties for _Z25ethash_calculate_dag_itemj
    272 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 96 registers, 324 bytes cmem[0], 4 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj8EEvPV14search_resultsm' for 'sm_53'
ptxas info    : Function properties for _Z13ethash_searchILj8EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 107 registers, 336 bytes cmem[0], 96 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj4EEvPV14search_resultsm' for 'sm_53'
ptxas info    : Function properties for _Z13ethash_searchILj4EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj2EEvPV14search_resultsm' for 'sm_53'
ptxas info    : Function properties for _Z13ethash_searchILj2EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj1EEvPV14search_resultsm' for 'sm_53'
ptxas info    : Function properties for _Z13ethash_searchILj1EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : 0 bytes gmem, 264 bytes cmem[3]
ptxas info    : Compiling entry function '_Z25ethash_calculate_dag_itemj' for 'sm_60'
ptxas info    : Function properties for _Z25ethash_calculate_dag_itemj
    272 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 96 registers, 324 bytes cmem[0], 4 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj8EEvPV14search_resultsm' for 'sm_60'
ptxas info    : Function properties for _Z13ethash_searchILj8EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 107 registers, 336 bytes cmem[0], 96 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj4EEvPV14search_resultsm' for 'sm_60'
ptxas info    : Function properties for _Z13ethash_searchILj4EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj2EEvPV14search_resultsm' for 'sm_60'
ptxas info    : Function properties for _Z13ethash_searchILj2EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj1EEvPV14search_resultsm' for 'sm_60'
ptxas info    : Function properties for _Z13ethash_searchILj1EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : 0 bytes gmem, 264 bytes cmem[3]
ptxas info    : Compiling entry function '_Z25ethash_calculate_dag_itemj' for 'sm_61'
ptxas info    : Function properties for _Z25ethash_calculate_dag_itemj
    272 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 96 registers, 324 bytes cmem[0], 4 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj8EEvPV14search_resultsm' for 'sm_61'
ptxas info    : Function properties for _Z13ethash_searchILj8EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 107 registers, 336 bytes cmem[0], 96 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj4EEvPV14search_resultsm' for 'sm_61'
ptxas info    : Function properties for _Z13ethash_searchILj4EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj2EEvPV14search_resultsm' for 'sm_61'
ptxas info    : Function properties for _Z13ethash_searchILj2EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj1EEvPV14search_resultsm' for 'sm_61'
ptxas info    : Function properties for _Z13ethash_searchILj1EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : 0 bytes gmem, 264 bytes cmem[3]
ptxas info    : Compiling entry function '_Z25ethash_calculate_dag_itemj' for 'sm_62'
ptxas info    : Function properties for _Z25ethash_calculate_dag_itemj
    272 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 96 registers, 324 bytes cmem[0], 4 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj8EEvPV14search_resultsm' for 'sm_62'
ptxas info    : Function properties for _Z13ethash_searchILj8EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 107 registers, 336 bytes cmem[0], 96 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj4EEvPV14search_resultsm' for 'sm_62'
ptxas info    : Function properties for _Z13ethash_searchILj4EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj2EEvPV14search_resultsm' for 'sm_62'
ptxas info    : Function properties for _Z13ethash_searchILj2EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj1EEvPV14search_resultsm' for 'sm_62'
ptxas info    : Function properties for _Z13ethash_searchILj1EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 336 bytes cmem[0]
ptxas info    : 0 bytes gmem, 264 bytes cmem[3]
ptxas info    : Compiling entry function '_Z25ethash_calculate_dag_itemj' for 'sm_70'
ptxas info    : Function properties for _Z25ethash_calculate_dag_itemj
    272 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 82 registers, 356 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj8EEvPV14search_resultsm' for 'sm_70'
ptxas info    : Function properties for _Z13ethash_searchILj8EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 108 registers, 368 bytes cmem[0], 104 bytes cmem[2]
ptxas info    : Compiling entry function '_Z13ethash_searchILj4EEvPV14search_resultsm' for 'sm_70'
ptxas info    : Function properties for _Z13ethash_searchILj4EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 86 registers, 368 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj2EEvPV14search_resultsm' for 'sm_70'
ptxas info    : Function properties for _Z13ethash_searchILj2EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 84 registers, 368 bytes cmem[0]
ptxas info    : Compiling entry function '_Z13ethash_searchILj1EEvPV14search_resultsm' for 'sm_70'
ptxas info    : Function properties for _Z13ethash_searchILj1EEvPV14search_resultsm
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 80 registers, 368 bytes cmem[0]
Scanning dependencies of target ethash-cuda
[ 70%] Building CXX object libethash-cuda/CMakeFiles/ethash-cuda.dir/CUDAMiner.cpp.o
[ 72%] Linking CXX static library libethash-cuda.a
[ 72%] Built target ethash-cuda
[ 78%] Generating OpenCL Kernel Byte Array
[ 78%] Generating OpenCL Kernel Byte Array
Scanning dependencies of target ethash-cl
[ 81%] Building CXX object libethash-cl/CMakeFiles/ethash-cl.dir/CLMiner.cpp.o
[ 83%] Linking CXX static library libethash-cl.a
[ 83%] Built target ethash-cl
Scanning dependencies of target ethcore
[ 86%] Building CXX object libethcore/CMakeFiles/ethcore.dir/EthashAux.cpp.o
[ 89%] Building CXX object libethcore/CMakeFiles/ethcore.dir/BlockHeader.cpp.o
[ 91%] Building CXX object libethcore/CMakeFiles/ethcore.dir/Miner.cpp.o
[ 94%] Linking CXX static library libethcore.a
[ 94%] Built target ethcore
Scanning dependencies of target ethminer
[ 97%] Building CXX object ethminer/CMakeFiles/ethminer.dir/main.cpp.o
[100%] Linking CXX executable ethminer
[100%] Built target ethminer
root@ip-172-31-3-105:~/ethminer/build# cd ethminer
./ethminer -U -F http://mypoolethereum.com:80/1111111111111111111111111111111111111

3. Extra section – noting the benchmark.

This installation is done in amazon EC2 p2.xlarge instance type, which has 1 GPU with 12 GiB RAM (2496 parallel processing cores), the processor is 4vcpu of Intel Xeon E5-2686 v4 (Broadwell) processors running at 2.7 GHz, Main Memory 122 GiB. You can see the virtual server is using “NVIDIA Corporation GK210GL [Tesla K80] (rev a1)”. So the benchmark of the virutal server is total of 6.5~6.6 millions hashes per second of Ethash with highest value of 6.65 millions hashes per second.
Here is the output of the lspci:

00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 01)
00:02.0 VGA compatible controller: Cirrus Logic GD 5446
00:03.0 Ethernet controller: Device 1d0f:ec20
00:1e.0 3D controller: NVIDIA Corporation GK210GL [Tesla K80] (rev a1)
00:1f.0 Unassigned class [ff80]: XenSource, Inc. Xen Platform Device (rev 01)

And the output of the nvidia-smi:

root@ip-172-31-3-105:~# nvidia-smi 
Fri Feb 23 11:45:19 2018       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.30                 Driver Version: 390.30                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  Tesla K80           Off  | 00000000:00:1E.0 Off |                    0 |
| N/A   71C    P0   125W / 149W |   2501MiB / 11441MiB |    100%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0     11042      C   ./ethminer                                  2490MiB |
+-----------------------------------------------------------------------------+

Howto do a netinstall of CentOS 7 (7.4.1708) – minimal server installation

Minimal net install is useful when a dedicated server is installed from a IPMI KVM or Dell iDRAC, HP iLO, IBM IMM or where the initial client side download of files need to be minimal.
For amd64 CentOS 7 the net install bootable media is located here (now the current latest release is 7.4.1708, but you can check the last directory with 7. for the time you follow this howto):

http://mirror.leaseweb.com/centos/7.4.1708/isos/x86_64/CentOS-7-x86_64-NetInstall-1708.iso

Now this version is deprecated and you could have problems downloading it, so you could try the CentOS vault – http://vault.centos.org/7.4.1708/isos/x86_64/ Just follow the instructions for downloading.
Download it and put it on a cd or usb, the boot from it and follow the steps bellow:

STEP 1) Select “Install CentOS 7” and press “Enter”

main menu
Select CentOS 7 Installation

STEP 2) Wait for the installation to boot

main menu
Booting the installation

STEP 3) This is the first step, you could choose your Country and language, English is the default.

main menu
Country and language selection

STEP 4) Setup the right time and time zone of your server, this step is important, the clock of the server is really important for your software to work properly!

main menu
Date & Time

STEP 5) Often servers are set with UTC time, which is never changed (no summer saving time!). UTC is Coordinated Universal Time and first you must select “Etc” from the first dropdown menu.

main menu
Date & Time – UTC selected

STEP 6) Next let’s configure the network, because we are doing a network installation you need Internet connection to install the CentOS 7.

main menu
Network & Host Name

STEP 7) Click to configure the selected network adapter on the right.

main menu
Configure network Adapter

STEP 8) Click on the menu “IPv4 Settings”, then choose from the dropdown menu “Manual” (technically you can leave it Automattically as the default is, but this is a server howto it is not very clever your IP to be assigned by a DHCP server, but your setup could vary). Then click on “Add” and write your IP address, network mask and gateway, then in the DNS Servers write your local (and fast!) DNS server, if you have more than one separate them with comas.

main menu
IPv Settings

STEP 9) Click “General” menu and then check the “Automatically connect to this network when it is available” – this is very important, because if you do not check, when you reboot the server, it won’t start the network! Click Save.

main menu
General Adapter settings

STEP 10) You can see the network is up and connected. Set a host name to your server and click on “Apply” and that’s all for the network configuration, click on “Done”.

main menu
Host Name setup

STEP 11) Click on “Installation Source” to setup the source of your installation files, because this is network installation this step is mandatory.

main menu
Installation Destination

STEP 12) Set the URL from where the setup will download packages and installation files. Set the nearest source to your server, you can check mirrors here:

https://www.centos.org/download/mirrors/

At present the latest version of CentOS 7 is 7.4.1708, but after a while it could be other, so browse the latest version directory, then you must choose directory “/os/” (there are probably many others, but we need especially “os”) and then “/x86_64/”. And then click on “Done”. That’s all you’ve configured the installation source, so now the setup knows where to look for packages and metadata for the installation process.

main menu
URL of the OS packages.

STEP 13) Choose your software to install. Click on “Software Selection”.

main menu
Software Selection

STEP 14) Because this howto is a minimal installation you should check “Minimal Install” , but you could choose another option below, the one suited best for your future server. And then click on “Done” to save the configuration.

main menu
Minimal Install

STEP 15) Click on “Installation Destination” to set the hard drive and partitions layout configuration for your server.

main menu
Installation Destination

STEP 16) The default is to leave the how disk to the setup to manage (make sure the “Automatically configure partitioning.” is checked), it will use the how hard drive checked from the Local Standard Disks. Check all the local disks you want to use in your server if more than one. If your disk has partitions you may be prompted to acquire free space by deleting existing partitions – be careful with this option, think twice before deleting partitions! Click on “Done” to save configuration.

main menu
Device selection – hard disk and partition configuration

STEP 17) Click on “Security policy” to setup a default security policy as selinux – use it whenever it is available!

main menu
Security Policy

STEP 18) Click on the “Standard System Security Porfile”, which will enable SELINUX security in your installation and then click “Select Profile”, after clicking the button will become grayed and the selection will have a green check in the right. Then click on “Done”.

main menu
Standard System Security Profile – SELINUX

STEP 19) We are all done and it is time to start the real installation of the system. Till now we’ve just configured the installation process. So click on “Begin Installation”.

main menu
Begin Installation

STEP 20) When the installation process is running you are prompt to set the root password and to add users. For clarity we set only the root password.

main menu
Root password setup

STEP 21) Set two times your password for the root user and then click “Done”.

main menu
Enter root password

STEP 22) The installation process is still running, just wait to finish.

main menu
Starting package installation process

STEP 23) You can see how many packets are install and the current installing packet and number.

main menu
Installing packages…

STEP 24) If everything goes with no errors and probably it will be with no errors you must click on “Reboot” to reboot the server in the newly installed OS.

main menu
Installation ready. Reboot

STEP 25) Grub2 and two options to select, the default is the latest kernel installed.

main menu
Grub2, default kernel boot

STEP 26) And the server is at login. The ssh server is also installed and you can access the server via ssh on the default port 22 and root login is permitted.

main menu
Login

How to compile cpuminer-multi under Ubuntu 16.04 LTS for CPU mining cryptocurrencies

Thanks to cpuminer-multi we can have one application capable of mining many different cryptocurrencies based on different algorithms. Here are the steps you should do to install (in fact install dependencies and compile the miner) to begin mining:

STEP 1) Update your system and install the following dependencies

sudo apt-get -y update
sudo apt-get -y install gcc g++ build-essential automake linux-headers-$(uname -r) git gawk libcurl4-openssl-dev libjansson-dev libssl-dev xorg libc++-dev libgmp-dev python-dev screen

STEP 2) Compile the mining program cpuminer-multi

cd
git clone https://github.com/tpruvot/cpuminer-multi
cd cpuminer-multi/
./autogen.sh
./configure --with-crypto --with-curl
make -j 8

Execute the program to see if everything is OK. With the help output you can see how many alogrithms are supported as of version 1.3.3 of cpuminer-multi.

./cpuminer --help
** cpuminer-multi 1.3.3 by tpruvot@github **
BTC donation address: 1FhDPLPpw18X4srecguG3MxJYe4a1JsZnd (tpruvot)

Usage: cpuminer-multi [OPTIONS]
Options:
  -a, --algo=ALGO       specify the algorithm to use
                          axiom        Shabal-256 MemoHash
                          bitcore      Timetravel with 10 algos
                          blake        Blake-256 14-rounds (SFR)
                          blakecoin    Blake-256 single sha256 merkle
                          blake2s      Blake2-S (256)
                          bmw          BMW 256
                          c11/flax     C11
                          cryptolight  Cryptonight-light
                          cryptonight  Monero
                          decred       Blake-256 14-rounds 180 bytes
                          dmd-gr       Diamond-Groestl
                          drop         Dropcoin
                          fresh        Fresh
                          groestl      GroestlCoin
                          heavy        Heavy
                          jha          JHA
                          keccak       Keccak (Old and deprecated)
                          keccakc      Keccak (CreativeCoin)
                          luffa        Luffa
                          lyra2re      Lyra2RE
                          lyra2rev2    Lyra2REv2 (Vertcoin)
                          myr-gr       Myriad-Groestl
                          neoscrypt    NeoScrypt(128, 2, 1)
                          nist5        Nist5
                          pluck        Pluck:128 (Supcoin)
                          pentablake   Pentablake
                          quark        Quark
                          qubit        Qubit
                          scrypt       scrypt(1024, 1, 1) (default)
                          scrypt:N     scrypt(N, 1, 1)
                          scrypt-jane:N (with N factor from 4 to 30)
                          shavite3     Shavite3
                          sha256d      SHA-256d
                          sia          Blake2-B
                          sib          X11 + gost (SibCoin)
                          skein        Skein+Sha (Skeincoin)
                          skein2       Double Skein (Woodcoin)
                          s3           S3
                          timetravel   Timetravel (Machinecoin)
                          vanilla      Blake-256 8-rounds
                          x11evo       Permuted x11
                          x11          X11
                          x13          X13
                          x14          X14
                          x15          X15
                          x16r         X16R (Raven)
                          x17          X17
                          xevan        Xevan (BitSend)
                          yescrypt     Yescrypt
                          zr5          ZR5
  -o, --url=URL         URL of mining server
  -O, --userpass=U:P    username:password pair for mining server
  -u, --user=USERNAME   username for mining server
  -p, --pass=PASSWORD   password for mining server
      --cert=FILE       certificate for mining server using SSL
  -x, --proxy=[PROTOCOL://]HOST[:PORT]  connect through a proxy
  -t, --threads=N       number of miner threads (default: number of processors)
  -r, --retries=N       number of times to retry if a network call fails
                          (default: retry indefinitely)
  -R, --retry-pause=N   time to pause between retries, in seconds (default: 30)
      --time-limit=N    maximum time [s] to mine before exiting the program.
  -T, --timeout=N       timeout for long poll and stratum (default: 300 seconds)
  -s, --scantime=N      upper bound on time spent scanning current work when
                          long polling is unavailable, in seconds (default: 5)
      --randomize       Randomize scan range start to reduce duplicates
  -f, --diff-factor     Divide req. difficulty by this factor (std is 1.0)
  -m, --diff-multiplier Multiply difficulty by this factor (std is 1.0)
  -n, --nfactor         neoscrypt N-Factor
      --coinbase-addr=ADDR  payout address for solo mining
      --coinbase-sig=TEXT  data to insert in the coinbase when possible
      --max-log-rate    limit per-core hashrate logs (default: 5s)
      --no-longpoll     disable long polling support
      --no-getwork      disable getwork support
      --no-gbt          disable getblocktemplate support
      --no-stratum      disable X-Stratum support
      --no-extranonce   disable Stratum extranonce support
      --no-redirect     ignore requests to change the URL of the mining server
  -q, --quiet           disable per-thread hashmeter output
      --no-color        disable colored output
  -D, --debug           enable debug output
  -P, --protocol-dump   verbose dump of protocol-level activities
      --hide-diff       Hide submitted block and net difficulty
  -S, --syslog          use system log for output messages
  -B, --background      run the miner in the background
      --benchmark       run in offline benchmark mode
      --cputest         debug hashes from cpu algorithms
      --cpu-affinity    set process affinity to cpu core(s), mask 0x3 for cores 0 and 1
      --cpu-priority    set process priority (default: 0 idle, 2 normal to 5 highest)
  -b, --api-bind        IP/Port for the miner API (default: 127.0.0.1:4048)
      --api-remote      Allow remote control
      --max-temp=N      Only mine if cpu temp is less than specified value (linux)
      --max-rate=N[KMG] Only mine if net hashrate is less than specified value
      --max-diff=N      Only mine if net difficulty is less than specified value
  -c, --config=FILE     load a JSON-format configuration file
  -V, --version         display version information and exit
  -h, --help            display this help text and exit

Here is an example of mining monero or Electoneum (cryptonight algo):

./cpuminer -a cryptonight -o stratum+tcp://monero.pool:1111 -u <monero address> -p <email>

Here is the output of example installation (the apt-get update and install are trimmed):

ubuntu@srv:~$ sudo su
root@srv:/home/ubuntu# cd
root@srv:~# apt-get -y update
...
root@srv:~# apt-get -y install gcc g++ build-essential automake linux-headers-$(uname -r) git gawk libcurl4-openssl-dev libjansson-dev xorg libc++-dev libgmp-dev python-dev screen
Reading package lists... Done
Building dependency tree       
Reading state information... Done
gawk is already the newest version (1:4.1.3+dfsg-0.1).
screen is already the newest version (4.3.1-2build1).
git is already the newest version (1:2.7.4-0ubuntu1.3).
linux-headers-4.4.0-1041-aws is already the newest version (4.4.0-1041.50).
The following additional packages will be installed:
  autoconf autotools-dev binutils cpp cpp-5 dpkg-dev fakeroot fontconfig-config fonts-dejavu-core g++-5 gcc-5 gcc-5-base libalgorithm-diff-perl libalgorithm-diff-xs-perl
  libalgorithm-merge-perl libasan2 libatomic1 libboost-filesystem1.58.0 libboost-system1.58.0 libc++-helpers libc++1 libc-dev-bin libc6 libc6-dev libcapnp-0.5.3 libcc1-0
  libcilkrts5 libcurl3 libdpkg-perl libdrm-amdgpu1 libdrm-common libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libegl1-mesa libepoxy0 libevdev2 libexpat1-dev
  libfakeroot libfile-fcntllock-perl libfontconfig1 libfontenc1 libgbm1 libgcc-5-dev libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa libglu1-mesa libgmpxx4ldbl libgomp1
  libice6 libisl15 libitm1 libjansson4 libllvm5.0 liblsan0 libmirclient9 libmircommon7 libmircore1 libmirprotobuf3 libmpc3 libmpx0 libmtdev1 libpciaccess0 libpixman-1-0
  libprotobuf-lite9v5 libpython-dev libpython-stdlib libpython2.7 libpython2.7-dev libpython2.7-minimal libpython2.7-stdlib libquadmath0 libsensors4 libsm6
  libstdc++-5-dev libstdc++6 libtsan0 libtxc-dxtn-s2tc0 libubsan0 libwayland-client0 libwayland-server0 libx11-xcb1 libxatracker2 libxaw7 libxcb-dri2-0 libxcb-dri3-0
  libxcb-glx0 libxcb-present0 libxcb-shape0 libxcb-sync1 libxcb-util1 libxcb-xfixes0 libxcomposite1 libxcursor1 libxdamage1 libxfixes3 libxfont1 libxft2 libxi6
  libxinerama1 libxkbcommon0 libxkbfile1 libxmu6 libxpm4 libxrandr2 libxrender1 libxshmfence1 libxss1 libxt6 libxtst6 libxv1 libxvmc1 libxxf86dga1 libxxf86vm1
  linux-libc-dev m4 make manpages-dev python python-minimal python2.7 python2.7-dev python2.7-minimal x11-apps x11-common x11-session-utils x11-utils x11-xkb-utils
  x11-xserver-utils xbitmaps xfonts-base xfonts-encodings xfonts-scalable xfonts-utils xinit xinput xorg-docs-core xserver-common xserver-xorg xserver-xorg-core
  xserver-xorg-input-all xserver-xorg-input-evdev xserver-xorg-input-synaptics xserver-xorg-input-vmmouse xserver-xorg-input-wacom xserver-xorg-video-all
  xserver-xorg-video-amdgpu xserver-xorg-video-ati xserver-xorg-video-fbdev xserver-xorg-video-intel xserver-xorg-video-nouveau xserver-xorg-video-qxl
  xserver-xorg-video-radeon xserver-xorg-video-vesa xserver-xorg-video-vmware xterm
Suggested packages:
  autoconf-archive gnu-standards autoconf-doc libtool gettext binutils-doc cpp-doc gcc-5-locales debian-keyring g++-multilib g++-5-multilib gcc-5-doc libstdc++6-5-dbg
  gcc-multilib flex bison gdb gcc-doc gcc-5-multilib libgcc1-dbg libgomp1-dbg libitm1-dbg libatomic1-dbg libasan2-dbg liblsan0-dbg libtsan0-dbg libubsan0-dbg
  libcilkrts5-dbg libmpx0-dbg libquadmath0-dbg clang glibc-doc libcurl4-doc libcurl3-dbg libidn11-dev libkrb5-dev libldap2-dev librtmp-dev libssl-dev pkg-config
  zlib1g-dev gmp-doc libgmp10-doc libmpfr-dev lm-sensors libstdc++-5-doc make-doc python-doc python-tk python2.7-doc binfmt-support mesa-utils nickle cairo-5c xorg-docs
  xfonts-100dpi xfonts-75dpi x11-xfs-utils xfonts-100dpi | xfonts-75dpi gpointing-device-settings touchfreeze firmware-amd-graphics xserver-xorg-video-r128
  xserver-xorg-video-mach64 xfonts-cyrillic
The following NEW packages will be installed:
  autoconf automake autotools-dev binutils build-essential cpp cpp-5 dpkg-dev fakeroot fontconfig-config fonts-dejavu-core g++ g++-5 gcc gcc-5 libalgorithm-diff-perl
  libalgorithm-diff-xs-perl libalgorithm-merge-perl libasan2 libatomic1 libboost-filesystem1.58.0 libboost-system1.58.0 libc++-dev libc++-helpers libc++1 libc-dev-bin
  libc6-dev libcapnp-0.5.3 libcc1-0 libcilkrts5 libcurl3 libcurl4-openssl-dev libdpkg-perl libdrm-amdgpu1 libdrm-common libdrm-intel1 libdrm-nouveau2 libdrm-radeon1
  libegl1-mesa libepoxy0 libevdev2 libexpat1-dev libfakeroot libfile-fcntllock-perl libfontconfig1 libfontenc1 libgbm1 libgcc-5-dev libgl1-mesa-dri libgl1-mesa-glx
  libglapi-mesa libglu1-mesa libgmp-dev libgmpxx4ldbl libgomp1 libice6 libisl15 libitm1 libjansson-dev libjansson4 libllvm5.0 liblsan0 libmirclient9 libmircommon7
  libmircore1 libmirprotobuf3 libmpc3 libmpx0 libmtdev1 libpciaccess0 libpixman-1-0 libprotobuf-lite9v5 libpython-dev libpython-stdlib libpython2.7 libpython2.7-dev
  libpython2.7-minimal libpython2.7-stdlib libquadmath0 libsensors4 libsm6 libstdc++-5-dev libtsan0 libtxc-dxtn-s2tc0 libubsan0 libwayland-client0 libwayland-server0
  libx11-xcb1 libxatracker2 libxaw7 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-shape0 libxcb-sync1 libxcb-util1 libxcb-xfixes0 libxcomposite1
  libxcursor1 libxdamage1 libxfixes3 libxfont1 libxft2 libxi6 libxinerama1 libxkbcommon0 libxkbfile1 libxmu6 libxpm4 libxrandr2 libxrender1 libxshmfence1 libxss1 libxt6
  libxtst6 libxv1 libxvmc1 libxxf86dga1 libxxf86vm1 linux-libc-dev m4 make manpages-dev python python-dev python-minimal python2.7 python2.7-dev python2.7-minimal
  x11-apps x11-common x11-session-utils x11-utils x11-xkb-utils x11-xserver-utils xbitmaps xfonts-base xfonts-encodings xfonts-scalable xfonts-utils xinit xinput xorg
  xorg-docs-core xserver-common xserver-xorg xserver-xorg-core xserver-xorg-input-all xserver-xorg-input-evdev xserver-xorg-input-synaptics xserver-xorg-input-vmmouse
  xserver-xorg-input-wacom xserver-xorg-video-all xserver-xorg-video-amdgpu xserver-xorg-video-ati xserver-xorg-video-fbdev xserver-xorg-video-intel
  xserver-xorg-video-nouveau xserver-xorg-video-qxl xserver-xorg-video-radeon xserver-xorg-video-vesa xserver-xorg-video-vmware xterm
The following packages will be upgraded:
  gcc-5-base libc6 libdrm2 libstdc++6
4 upgraded, 164 newly installed, 0 to remove and 93 not upgraded.
Need to get 114 MB of archives.
After this operation, 457 MB of additional disk space will be used.
...
root@srv:~# git clone https://github.com/tpruvot/cpuminer-multi
Cloning into 'cpuminer-multi'...
remote: Counting objects: 3803, done.
remote: Total 3803 (delta 0), reused 0 (delta 0), pack-reused 3803
Receiving objects: 100% (3803/3803), 18.99 MiB | 30.51 MiB/s, done.
Resolving deltas: 100% (2589/2589), done.
Checking connectivity... done.
root@srv:~# cd /root/cpuminer-multi/
root@srv:~/cpuminer-multi# export CFLAGS="-march=native -O2 -msse3 -fomit-frame-pointer -pipe"
root@srv:~/cpuminer-multi# export CXXFLAGS="${CFLAGS}"
root@srv:~/cpuminer-multi# export CHOST="x86_64-pc-linux-gnu"
root@srv:~/cpuminer-multi# export MAKEOPTS="-j8"
root@srv:~/cpuminer-multi# ./autogen.sh
configure.ac:15: installing './compile'
configure.ac:4: installing './config.guess'
configure.ac:4: installing './config.sub'
configure.ac:9: installing './install-sh'
configure.ac:9: installing './missing'
Makefile.am: installing './depcomp'
root@srv:~/cpuminer-multi# ./configure --with-crypto --with-curl
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for style of include used by make... GNU
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for gcc option to accept ISO C99... none needed
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking whether gcc needs -traditional... no
checking dependency style of gcc... gcc3
checking for ranlib... ranlib
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking sys/endian.h usability... no
checking sys/endian.h presence... no
checking for sys/endian.h... no
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking syslog.h usability... yes
checking syslog.h presence... yes
checking for syslog.h... yes
checking for sys/sysctl.h... yes
checking whether be32dec is declared... no
checking whether le32dec is declared... no
checking whether be32enc is declared... no
checking whether le32enc is declared... no
checking whether le16dec is declared... no
checking whether le16enc is declared... no
checking for size_t... yes
checking for working alloca.h... yes
checking for alloca... yes
checking for getopt_long... yes
checking whether we can compile AVX code... yes
checking whether we can compile XOP code... yes
checking whether we can compile AVX2 code... yes
checking for json_loads in -ljansson... yes
checking for pthread_create in -lpthread... yes
checking whether __uint128_t is supported... yes
checking for gzopen in -lz... yes
checking for EVP_DigestFinal_ex in -lcrypto... yes
checking for SSL_free in -lssl... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating compat/Makefile
config.status: creating compat/jansson/Makefile
config.status: creating cpuminer-config.h
config.status: cpuminer-config.h is unchanged
config.status: executing depfiles commands
root@srv:~/cpuminer-multi# make -j 8
make  all-recursive
make[1]: Entering directory '/root/cpuminer-multi'
Making all in compat
make[2]: Entering directory '/root/cpuminer-multi/compat'
make[3]: Entering directory '/root/cpuminer-multi/compat'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/root/cpuminer-multi/compat'
make[2]: Leaving directory '/root/cpuminer-multi/compat'
make[2]: Entering directory '/root/cpuminer-multi'
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_keccak.o -MD -MP -MF sha3/.deps/cpuminer-sph_keccak.Tpo -c -o sha3/cpuminer-sph_keccak.o `test -f 'sha3/sph_keccak.c' || echo './'`sha3/sph_keccak.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_hefty1.o -MD -MP -MF sha3/.deps/cpuminer-sph_hefty1.Tpo -c -o sha3/cpuminer-sph_hefty1.o `test -f 'sha3/sph_hefty1.c' || echo './'`sha3/sph_hefty1.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_groestl.o -MD -MP -MF sha3/.deps/cpuminer-sph_groestl.Tpo -c -o sha3/cpuminer-sph_groestl.o `test -f 'sha3/sph_groestl.c' || echo './'`sha3/sph_groestl.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_skein.o -MD -MP -MF sha3/.deps/cpuminer-sph_skein.Tpo -c -o sha3/cpuminer-sph_skein.o `test -f 'sha3/sph_skein.c' || echo './'`sha3/sph_skein.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_bmw.o -MD -MP -MF sha3/.deps/cpuminer-sph_bmw.Tpo -c -o sha3/cpuminer-sph_bmw.o `test -f 'sha3/sph_bmw.c' || echo './'`sha3/sph_bmw.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_jh.o -MD -MP -MF sha3/.deps/cpuminer-sph_jh.Tpo -c -o sha3/cpuminer-sph_jh.o `test -f 'sha3/sph_jh.c' || echo './'`sha3/sph_jh.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_shavite.o -MD -MP -MF sha3/.deps/cpuminer-sph_shavite.Tpo -c -o sha3/cpuminer-sph_shavite.o `test -f 'sha3/sph_shavite.c' || echo './'`sha3/sph_shavite.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_blake.o -MD -MP -MF sha3/.deps/cpuminer-sph_blake.Tpo -c -o sha3/cpuminer-sph_blake.o `test -f 'sha3/sph_blake.c' || echo './'`sha3/sph_blake.c
mv -f sha3/.deps/cpuminer-sph_hefty1.Tpo sha3/.deps/cpuminer-sph_hefty1.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-mod_blakecoin.o -MD -MP -MF sha3/.deps/cpuminer-mod_blakecoin.Tpo -c -o sha3/cpuminer-mod_blakecoin.o `test -f 'sha3/mod_blakecoin.c' || echo './'`sha3/mod_blakecoin.c
mv -f sha3/.deps/cpuminer-mod_blakecoin.Tpo sha3/.deps/cpuminer-mod_blakecoin.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_luffa.o -MD -MP -MF sha3/.deps/cpuminer-sph_luffa.Tpo -c -o sha3/cpuminer-sph_luffa.o `test -f 'sha3/sph_luffa.c' || echo './'`sha3/sph_luffa.c
mv -f sha3/.deps/cpuminer-sph_skein.Tpo sha3/.deps/cpuminer-sph_skein.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_cubehash.o -MD -MP -MF sha3/.deps/cpuminer-sph_cubehash.Tpo -c -o sha3/cpuminer-sph_cubehash.o `test -f 'sha3/sph_cubehash.c' || echo './'`sha3/sph_cubehash.c
mv -f sha3/.deps/cpuminer-sph_keccak.Tpo sha3/.deps/cpuminer-sph_keccak.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_simd.o -MD -MP -MF sha3/.deps/cpuminer-sph_simd.Tpo -c -o sha3/cpuminer-sph_simd.o `test -f 'sha3/sph_simd.c' || echo './'`sha3/sph_simd.c
mv -f sha3/.deps/cpuminer-sph_bmw.Tpo sha3/.deps/cpuminer-sph_bmw.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_echo.o -MD -MP -MF sha3/.deps/cpuminer-sph_echo.Tpo -c -o sha3/cpuminer-sph_echo.o `test -f 'sha3/sph_echo.c' || echo './'`sha3/sph_echo.c
mv -f sha3/.deps/cpuminer-sph_blake.Tpo sha3/.deps/cpuminer-sph_blake.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_hamsi.o -MD -MP -MF sha3/.deps/cpuminer-sph_hamsi.Tpo -c -o sha3/cpuminer-sph_hamsi.o `test -f 'sha3/sph_hamsi.c' || echo './'`sha3/sph_hamsi.c
mv -f sha3/.deps/cpuminer-sph_jh.Tpo sha3/.deps/cpuminer-sph_jh.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_haval.o -MD -MP -MF sha3/.deps/cpuminer-sph_haval.Tpo -c -o sha3/cpuminer-sph_haval.o `test -f 'sha3/sph_haval.c' || echo './'`sha3/sph_haval.c
mv -f sha3/.deps/cpuminer-sph_groestl.Tpo sha3/.deps/cpuminer-sph_groestl.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_fugue.o -MD -MP -MF sha3/.deps/cpuminer-sph_fugue.Tpo -c -o sha3/cpuminer-sph_fugue.o `test -f 'sha3/sph_fugue.c' || echo './'`sha3/sph_fugue.c
mv -f sha3/.deps/cpuminer-sph_cubehash.Tpo sha3/.deps/cpuminer-sph_cubehash.Po
mv -f sha3/.deps/cpuminer-sph_luffa.Tpo sha3/.deps/cpuminer-sph_luffa.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_ripemd.o -MD -MP -MF sha3/.deps/cpuminer-sph_ripemd.Tpo -c -o sha3/cpuminer-sph_ripemd.o `test -f 'sha3/sph_ripemd.c' || echo './'`sha3/sph_ripemd.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_sha2.o -MD -MP -MF sha3/.deps/cpuminer-sph_sha2.Tpo -c -o sha3/cpuminer-sph_sha2.o `test -f 'sha3/sph_sha2.c' || echo './'`sha3/sph_sha2.c
mv -f sha3/.deps/cpuminer-sph_shavite.Tpo sha3/.deps/cpuminer-sph_shavite.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_sha2big.o -MD -MP -MF sha3/.deps/cpuminer-sph_sha2big.Tpo -c -o sha3/cpuminer-sph_sha2big.o `test -f 'sha3/sph_sha2big.c' || echo './'`sha3/sph_sha2big.c
mv -f sha3/.deps/cpuminer-sph_sha2big.Tpo sha3/.deps/cpuminer-sph_sha2big.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_shabal.o -MD -MP -MF sha3/.deps/cpuminer-sph_shabal.Tpo -c -o sha3/cpuminer-sph_shabal.o `test -f 'sha3/sph_shabal.c' || echo './'`sha3/sph_shabal.c
mv -f sha3/.deps/cpuminer-sph_echo.Tpo sha3/.deps/cpuminer-sph_echo.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-sph_whirlpool.o -MD -MP -MF sha3/.deps/cpuminer-sph_whirlpool.Tpo -c -o sha3/cpuminer-sph_whirlpool.o `test -f 'sha3/sph_whirlpool.c' || echo './'`sha3/sph_whirlpool.c
mv -f sha3/.deps/cpuminer-sph_sha2.Tpo sha3/.deps/cpuminer-sph_sha2.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT sha3/cpuminer-gost_streebog.o -MD -MP -MF sha3/.deps/cpuminer-gost_streebog.Tpo -c -o sha3/cpuminer-gost_streebog.o `test -f 'sha3/gost_streebog.c' || echo './'`sha3/gost_streebog.c
mv -f sha3/.deps/cpuminer-sph_shabal.Tpo sha3/.deps/cpuminer-sph_shabal.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT crypto/cpuminer-blake2s.o -MD -MP -MF crypto/.deps/cpuminer-blake2s.Tpo -c -o crypto/cpuminer-blake2s.o `test -f 'crypto/blake2s.c' || echo './'`crypto/blake2s.c
mv -f sha3/.deps/cpuminer-gost_streebog.Tpo sha3/.deps/cpuminer-gost_streebog.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT crypto/cpuminer-blake2b.o -MD -MP -MF crypto/.deps/cpuminer-blake2b.Tpo -c -o crypto/cpuminer-blake2b.o `test -f 'crypto/blake2b.c' || echo './'`crypto/blake2b.c
mv -f crypto/.deps/cpuminer-blake2b.Tpo crypto/.deps/cpuminer-blake2b.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT crypto/cpuminer-oaes_lib.o -MD -MP -MF crypto/.deps/cpuminer-oaes_lib.Tpo -c -o crypto/cpuminer-oaes_lib.o `test -f 'crypto/oaes_lib.c' || echo './'`crypto/oaes_lib.c
mv -f sha3/.deps/cpuminer-sph_ripemd.Tpo sha3/.deps/cpuminer-sph_ripemd.Po
mv -f sha3/.deps/cpuminer-sph_whirlpool.Tpo sha3/.deps/cpuminer-sph_whirlpool.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT crypto/cpuminer-c_keccak.o -MD -MP -MF crypto/.deps/cpuminer-c_keccak.Tpo -c -o crypto/cpuminer-c_keccak.o `test -f 'crypto/c_keccak.c' || echo './'`crypto/c_keccak.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT crypto/cpuminer-c_groestl.o -MD -MP -MF crypto/.deps/cpuminer-c_groestl.Tpo -c -o crypto/cpuminer-c_groestl.o `test -f 'crypto/c_groestl.c' || echo './'`crypto/c_groestl.c
mv -f crypto/.deps/cpuminer-c_keccak.Tpo crypto/.deps/cpuminer-c_keccak.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT crypto/cpuminer-c_blake256.o -MD -MP -MF crypto/.deps/cpuminer-c_blake256.Tpo -c -o crypto/cpuminer-c_blake256.o `test -f 'crypto/c_blake256.c' || echo './'`crypto/c_blake256.c
mv -f crypto/.deps/cpuminer-blake2s.Tpo crypto/.deps/cpuminer-blake2s.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT crypto/cpuminer-c_jh.o -MD -MP -MF crypto/.deps/cpuminer-c_jh.Tpo -c -o crypto/cpuminer-c_jh.o `test -f 'crypto/c_jh.c' || echo './'`crypto/c_jh.c
mv -f sha3/.deps/cpuminer-sph_fugue.Tpo sha3/.deps/cpuminer-sph_fugue.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT crypto/cpuminer-c_skein.o -MD -MP -MF crypto/.deps/cpuminer-c_skein.Tpo -c -o crypto/cpuminer-c_skein.o `test -f 'crypto/c_skein.c' || echo './'`crypto/c_skein.c
mv -f sha3/.deps/cpuminer-sph_simd.Tpo sha3/.deps/cpuminer-sph_simd.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT crypto/cpuminer-hash.o -MD -MP -MF crypto/.deps/cpuminer-hash.Tpo -c -o crypto/cpuminer-hash.o `test -f 'crypto/hash.c' || echo './'`crypto/hash.c
mv -f crypto/.deps/cpuminer-oaes_lib.Tpo crypto/.deps/cpuminer-oaes_lib.Po
mv -f crypto/.deps/cpuminer-c_groestl.Tpo crypto/.deps/cpuminer-c_groestl.Po
mv -f crypto/.deps/cpuminer-hash.Tpo crypto/.deps/cpuminer-hash.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT crypto/cpuminer-aesb.o -MD -MP -MF crypto/.deps/cpuminer-aesb.Tpo -c -o crypto/cpuminer-aesb.o `test -f 'crypto/aesb.c' || echo './'`crypto/aesb.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT lyra2/cpuminer-Lyra2.o -MD -MP -MF lyra2/.deps/cpuminer-Lyra2.Tpo -c -o lyra2/cpuminer-Lyra2.o `test -f 'lyra2/Lyra2.c' || echo './'`lyra2/Lyra2.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT lyra2/cpuminer-Sponge.o -MD -MP -MF lyra2/.deps/cpuminer-Sponge.Tpo -c -o lyra2/cpuminer-Sponge.o `test -f 'lyra2/Sponge.c' || echo './'`lyra2/Sponge.c
mv -f crypto/.deps/cpuminer-c_blake256.Tpo crypto/.deps/cpuminer-c_blake256.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT yescrypt/cpuminer-yescrypt-common.o -MD -MP -MF yescrypt/.deps/cpuminer-yescrypt-common.Tpo -c -o yescrypt/cpuminer-yescrypt-common.o `test -f 'yescrypt/yescrypt-common.c' || echo './'`yescrypt/yescrypt-common.c
mv -f crypto/.deps/cpuminer-c_jh.Tpo crypto/.deps/cpuminer-c_jh.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT yescrypt/cpuminer-yescrypt-best.o -MD -MP -MF yescrypt/.deps/cpuminer-yescrypt-best.Tpo -c -o yescrypt/cpuminer-yescrypt-best.o `test -f 'yescrypt/yescrypt-best.c' || echo './'`yescrypt/yescrypt-best.c
mv -f lyra2/.deps/cpuminer-Lyra2.Tpo lyra2/.deps/cpuminer-Lyra2.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT yescrypt/cpuminer-sha256_Y.o -MD -MP -MF yescrypt/.deps/cpuminer-sha256_Y.Tpo -c -o yescrypt/cpuminer-sha256_Y.o `test -f 'yescrypt/sha256_Y.c' || echo './'`yescrypt/sha256_Y.c
mv -f yescrypt/.deps/cpuminer-yescrypt-common.Tpo yescrypt/.deps/cpuminer-yescrypt-common.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-axiom.o -MD -MP -MF algo/.deps/cpuminer-axiom.Tpo -c -o algo/cpuminer-axiom.o `test -f 'algo/axiom.c' || echo './'`algo/axiom.c
mv -f crypto/.deps/cpuminer-aesb.Tpo crypto/.deps/cpuminer-aesb.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-bastion.o -MD -MP -MF algo/.deps/cpuminer-bastion.Tpo -c -o algo/cpuminer-bastion.o `test -f 'algo/bastion.c' || echo './'`algo/bastion.c
mv -f algo/.deps/cpuminer-axiom.Tpo algo/.deps/cpuminer-axiom.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-blake.o -MD -MP -MF algo/.deps/cpuminer-blake.Tpo -c -o algo/cpuminer-blake.o `test -f 'algo/blake.c' || echo './'`algo/blake.c
mv -f sha3/.deps/cpuminer-sph_hamsi.Tpo sha3/.deps/cpuminer-sph_hamsi.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-blakecoin.o -MD -MP -MF algo/.deps/cpuminer-blakecoin.Tpo -c -o algo/cpuminer-blakecoin.o `test -f 'algo/blakecoin.c' || echo './'`algo/blakecoin.c
mv -f algo/.deps/cpuminer-bastion.Tpo algo/.deps/cpuminer-bastion.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-blake2.o -MD -MP -MF algo/.deps/cpuminer-blake2.Tpo -c -o algo/cpuminer-blake2.o `test -f 'algo/blake2.c' || echo './'`algo/blake2.c
mv -f algo/.deps/cpuminer-blake.Tpo algo/.deps/cpuminer-blake.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-bmw256.o -MD -MP -MF algo/.deps/cpuminer-bmw256.Tpo -c -o algo/cpuminer-bmw256.o `test -f 'algo/bmw256.c' || echo './'`algo/bmw256.c
mv -f algo/.deps/cpuminer-blakecoin.Tpo algo/.deps/cpuminer-blakecoin.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-c11.o -MD -MP -MF algo/.deps/cpuminer-c11.Tpo -c -o algo/cpuminer-c11.o `test -f 'algo/c11.c' || echo './'`algo/c11.c
mv -f algo/.deps/cpuminer-blake2.Tpo algo/.deps/cpuminer-blake2.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-cryptonight.o -MD -MP -MF algo/.deps/cpuminer-cryptonight.Tpo -c -o algo/cpuminer-cryptonight.o `test -f 'algo/cryptonight.c' || echo './'`algo/cryptonight.c
mv -f algo/.deps/cpuminer-bmw256.Tpo algo/.deps/cpuminer-bmw256.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-cryptolight.o -MD -MP -MF algo/.deps/cpuminer-cryptolight.Tpo -c -o algo/cpuminer-cryptolight.o `test -f 'algo/cryptolight.c' || echo './'`algo/cryptolight.c
mv -f algo/.deps/cpuminer-c11.Tpo algo/.deps/cpuminer-c11.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-decred.o -MD -MP -MF algo/.deps/cpuminer-decred.Tpo -c -o algo/cpuminer-decred.o `test -f 'algo/decred.c' || echo './'`algo/decred.c
mv -f yescrypt/.deps/cpuminer-sha256_Y.Tpo yescrypt/.deps/cpuminer-sha256_Y.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-drop.o -MD -MP -MF algo/.deps/cpuminer-drop.Tpo -c -o algo/cpuminer-drop.o `test -f 'algo/drop.c' || echo './'`algo/drop.c
mv -f algo/.deps/cpuminer-decred.Tpo algo/.deps/cpuminer-decred.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-fresh.o -MD -MP -MF algo/.deps/cpuminer-fresh.Tpo -c -o algo/cpuminer-fresh.o `test -f 'algo/fresh.c' || echo './'`algo/fresh.c
mv -f crypto/.deps/cpuminer-c_skein.Tpo crypto/.deps/cpuminer-c_skein.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-groestl.o -MD -MP -MF algo/.deps/cpuminer-groestl.Tpo -c -o algo/cpuminer-groestl.o `test -f 'algo/groestl.c' || echo './'`algo/groestl.c
mv -f algo/.deps/cpuminer-cryptonight.Tpo algo/.deps/cpuminer-cryptonight.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-heavy.o -MD -MP -MF algo/.deps/cpuminer-heavy.Tpo -c -o algo/cpuminer-heavy.o `test -f 'algo/heavy.c' || echo './'`algo/heavy.c
mv -f algo/.deps/cpuminer-drop.Tpo algo/.deps/cpuminer-drop.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-ink.o -MD -MP -MF algo/.deps/cpuminer-ink.Tpo -c -o algo/cpuminer-ink.o `test -f 'algo/ink.c' || echo './'`algo/ink.c
mv -f algo/.deps/cpuminer-fresh.Tpo algo/.deps/cpuminer-fresh.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-jha.o -MD -MP -MF algo/.deps/cpuminer-jha.Tpo -c -o algo/cpuminer-jha.o `test -f 'algo/jha.c' || echo './'`algo/jha.c
mv -f algo/.deps/cpuminer-cryptolight.Tpo algo/.deps/cpuminer-cryptolight.Po
mv -f algo/.deps/cpuminer-groestl.Tpo algo/.deps/cpuminer-groestl.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-lbry.o -MD -MP -MF algo/.deps/cpuminer-lbry.Tpo -c -o algo/cpuminer-lbry.o `test -f 'algo/lbry.c' || echo './'`algo/lbry.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-luffa.o -MD -MP -MF algo/.deps/cpuminer-luffa.Tpo -c -o algo/cpuminer-luffa.o `test -f 'algo/luffa.c' || echo './'`algo/luffa.c
mv -f algo/.deps/cpuminer-heavy.Tpo algo/.deps/cpuminer-heavy.Po
mv -f algo/.deps/cpuminer-ink.Tpo algo/.deps/cpuminer-ink.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-lyra2re.o -MD -MP -MF algo/.deps/cpuminer-lyra2re.Tpo -c -o algo/cpuminer-lyra2re.o `test -f 'algo/lyra2re.c' || echo './'`algo/lyra2re.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-lyra2rev2.o -MD -MP -MF algo/.deps/cpuminer-lyra2rev2.Tpo -c -o algo/cpuminer-lyra2rev2.o `test -f 'algo/lyra2rev2.c' || echo './'`algo/lyra2rev2.c
mv -f algo/.deps/cpuminer-jha.Tpo algo/.deps/cpuminer-jha.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-myr-groestl.o -MD -MP -MF algo/.deps/cpuminer-myr-groestl.Tpo -c -o algo/cpuminer-myr-groestl.o `test -f 'algo/myr-groestl.c' || echo './'`algo/myr-groestl.c
mv -f algo/.deps/cpuminer-lbry.Tpo algo/.deps/cpuminer-lbry.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-keccak.o -MD -MP -MF algo/.deps/cpuminer-keccak.Tpo -c -o algo/cpuminer-keccak.o `test -f 'algo/keccak.c' || echo './'`algo/keccak.c
mv -f algo/.deps/cpuminer-luffa.Tpo algo/.deps/cpuminer-luffa.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-pentablake.o -MD -MP -MF algo/.deps/cpuminer-pentablake.Tpo -c -o algo/cpuminer-pentablake.o `test -f 'algo/pentablake.c' || echo './'`algo/pentablake.c
mv -f algo/.deps/cpuminer-lyra2re.Tpo algo/.deps/cpuminer-lyra2re.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-quark.o -MD -MP -MF algo/.deps/cpuminer-quark.Tpo -c -o algo/cpuminer-quark.o `test -f 'algo/quark.c' || echo './'`algo/quark.c
mv -f algo/.deps/cpuminer-lyra2rev2.Tpo algo/.deps/cpuminer-lyra2rev2.Po
mv -f lyra2/.deps/cpuminer-Sponge.Tpo lyra2/.deps/cpuminer-Sponge.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-neoscrypt.o -MD -MP -MF algo/.deps/cpuminer-neoscrypt.Tpo -c -o algo/cpuminer-neoscrypt.o `test -f 'algo/neoscrypt.c' || echo './'`algo/neoscrypt.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-nist5.o -MD -MP -MF algo/.deps/cpuminer-nist5.Tpo -c -o algo/cpuminer-nist5.o `test -f 'algo/nist5.c' || echo './'`algo/nist5.c
mv -f algo/.deps/cpuminer-myr-groestl.Tpo algo/.deps/cpuminer-myr-groestl.Po
mv -f algo/.deps/cpuminer-keccak.Tpo algo/.deps/cpuminer-keccak.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-pluck.o -MD -MP -MF algo/.deps/cpuminer-pluck.Tpo -c -o algo/cpuminer-pluck.o `test -f 'algo/pluck.c' || echo './'`algo/pluck.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-qubit.o -MD -MP -MF algo/.deps/cpuminer-qubit.Tpo -c -o algo/cpuminer-qubit.o `test -f 'algo/qubit.c' || echo './'`algo/qubit.c
mv -f algo/.deps/cpuminer-pentablake.Tpo algo/.deps/cpuminer-pentablake.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-scrypt.o -MD -MP -MF algo/.deps/cpuminer-scrypt.Tpo -c -o algo/cpuminer-scrypt.o `test -f 'algo/scrypt.c' || echo './'`algo/scrypt.c
mv -f algo/.deps/cpuminer-nist5.Tpo algo/.deps/cpuminer-nist5.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-scrypt-jane.o -MD -MP -MF algo/.deps/cpuminer-scrypt-jane.Tpo -c -o algo/cpuminer-scrypt-jane.o `test -f 'algo/scrypt-jane.c' || echo './'`algo/scrypt-jane.c
mv -f algo/.deps/cpuminer-quark.Tpo algo/.deps/cpuminer-quark.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-sha2.o -MD -MP -MF algo/.deps/cpuminer-sha2.Tpo -c -o algo/cpuminer-sha2.o `test -f 'algo/sha2.c' || echo './'`algo/sha2.c
mv -f algo/.deps/cpuminer-qubit.Tpo algo/.deps/cpuminer-qubit.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-sia.o -MD -MP -MF algo/.deps/cpuminer-sia.Tpo -c -o algo/cpuminer-sia.o `test -f 'algo/sia.c' || echo './'`algo/sia.c
mv -f algo/.deps/cpuminer-sia.Tpo algo/.deps/cpuminer-sia.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-sibcoin.o -MD -MP -MF algo/.deps/cpuminer-sibcoin.Tpo -c -o algo/cpuminer-sibcoin.o `test -f 'algo/sibcoin.c' || echo './'`algo/sibcoin.c
mv -f algo/.deps/cpuminer-sibcoin.Tpo algo/.deps/cpuminer-sibcoin.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-skein.o -MD -MP -MF algo/.deps/cpuminer-skein.Tpo -c -o algo/cpuminer-skein.o `test -f 'algo/skein.c' || echo './'`algo/skein.c
mv -f algo/.deps/cpuminer-skein.Tpo algo/.deps/cpuminer-skein.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-skein2.o -MD -MP -MF algo/.deps/cpuminer-skein2.Tpo -c -o algo/cpuminer-skein2.o `test -f 'algo/skein2.c' || echo './'`algo/skein2.c
mv -f algo/.deps/cpuminer-skein2.Tpo algo/.deps/cpuminer-skein2.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-s3.o -MD -MP -MF algo/.deps/cpuminer-s3.Tpo -c -o algo/cpuminer-s3.o `test -f 'algo/s3.c' || echo './'`algo/s3.c
mv -f algo/.deps/cpuminer-neoscrypt.Tpo algo/.deps/cpuminer-neoscrypt.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-bitcore.o -MD -MP -MF algo/.deps/cpuminer-bitcore.Tpo -c -o algo/cpuminer-bitcore.o `test -f 'algo/bitcore.c' || echo './'`algo/bitcore.c
mv -f algo/.deps/cpuminer-scrypt-jane.Tpo algo/.deps/cpuminer-scrypt-jane.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-timetravel.o -MD -MP -MF algo/.deps/cpuminer-timetravel.Tpo -c -o algo/cpuminer-timetravel.o `test -f 'algo/timetravel.c' || echo './'`algo/timetravel.c
mv -f algo/.deps/cpuminer-s3.Tpo algo/.deps/cpuminer-s3.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-tribus.o -MD -MP -MF algo/.deps/cpuminer-tribus.Tpo -c -o algo/cpuminer-tribus.o `test -f 'algo/tribus.c' || echo './'`algo/tribus.c
mv -f yescrypt/.deps/cpuminer-yescrypt-best.Tpo yescrypt/.deps/cpuminer-yescrypt-best.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-veltor.o -MD -MP -MF algo/.deps/cpuminer-veltor.Tpo -c -o algo/cpuminer-veltor.o `test -f 'algo/veltor.c' || echo './'`algo/veltor.c
mv -f algo/.deps/cpuminer-bitcore.Tpo algo/.deps/cpuminer-bitcore.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-x11evo.o -MD -MP -MF algo/.deps/cpuminer-x11evo.Tpo -c -o algo/cpuminer-x11evo.o `test -f 'algo/x11evo.c' || echo './'`algo/x11evo.c
mv -f algo/.deps/cpuminer-tribus.Tpo algo/.deps/cpuminer-tribus.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-x11.o -MD -MP -MF algo/.deps/cpuminer-x11.Tpo -c -o algo/cpuminer-x11.o `test -f 'algo/x11.c' || echo './'`algo/x11.c
mv -f algo/.deps/cpuminer-timetravel.Tpo algo/.deps/cpuminer-timetravel.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-x13.o -MD -MP -MF algo/.deps/cpuminer-x13.Tpo -c -o algo/cpuminer-x13.o `test -f 'algo/x13.c' || echo './'`algo/x13.c
mv -f algo/.deps/cpuminer-veltor.Tpo algo/.deps/cpuminer-veltor.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-x14.o -MD -MP -MF algo/.deps/cpuminer-x14.Tpo -c -o algo/cpuminer-x14.o `test -f 'algo/x14.c' || echo './'`algo/x14.c
mv -f algo/.deps/cpuminer-pluck.Tpo algo/.deps/cpuminer-pluck.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-x15.o -MD -MP -MF algo/.deps/cpuminer-x15.Tpo -c -o algo/cpuminer-x15.o `test -f 'algo/x15.c' || echo './'`algo/x15.c
mv -f algo/.deps/cpuminer-x11.Tpo algo/.deps/cpuminer-x11.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-x16r.o -MD -MP -MF algo/.deps/cpuminer-x16r.Tpo -c -o algo/cpuminer-x16r.o `test -f 'algo/x16r.c' || echo './'`algo/x16r.c
mv -f algo/.deps/cpuminer-scrypt.Tpo algo/.deps/cpuminer-scrypt.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-x17.o -MD -MP -MF algo/.deps/cpuminer-x17.Tpo -c -o algo/cpuminer-x17.o `test -f 'algo/x17.c' || echo './'`algo/x17.c
mv -f algo/.deps/cpuminer-x13.Tpo algo/.deps/cpuminer-x13.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-xevan.o -MD -MP -MF algo/.deps/cpuminer-xevan.Tpo -c -o algo/cpuminer-xevan.o `test -f 'algo/xevan.c' || echo './'`algo/xevan.c
mv -f algo/.deps/cpuminer-x14.Tpo algo/.deps/cpuminer-x14.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-yescrypt.o -MD -MP -MF algo/.deps/cpuminer-yescrypt.Tpo -c -o algo/cpuminer-yescrypt.o `test -f 'algo/yescrypt.c' || echo './'`algo/yescrypt.c
mv -f algo/.deps/cpuminer-x11evo.Tpo algo/.deps/cpuminer-x11evo.Po
mv -f algo/.deps/cpuminer-x15.Tpo algo/.deps/cpuminer-x15.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT algo/cpuminer-zr5.o -MD -MP -MF algo/.deps/cpuminer-zr5.Tpo -c -o algo/cpuminer-zr5.o `test -f 'algo/zr5.c' || echo './'`algo/zr5.c
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include  -march=native -O2 -msse3 -fomit-frame-pointer -pipe -MT asm/cpuminer-neoscrypt_asm.o -MD -MP -MF asm/.deps/cpuminer-neoscrypt_asm.Tpo -c -o asm/cpuminer-neoscrypt_asm.o `test -f 'asm/neoscrypt_asm.S' || echo './'`asm/neoscrypt_asm.S
mv -f asm/.deps/cpuminer-neoscrypt_asm.Tpo asm/.deps/cpuminer-neoscrypt_asm.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include  -march=native -O2 -msse3 -fomit-frame-pointer -pipe -MT asm/cpuminer-sha2-x64.o -MD -MP -MF asm/.deps/cpuminer-sha2-x64.Tpo -c -o asm/cpuminer-sha2-x64.o `test -f 'asm/sha2-x64.S' || echo './'`asm/sha2-x64.S
mv -f algo/.deps/cpuminer-yescrypt.Tpo algo/.deps/cpuminer-yescrypt.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include  -march=native -O2 -msse3 -fomit-frame-pointer -pipe -MT asm/cpuminer-scrypt-x64.o -MD -MP -MF asm/.deps/cpuminer-scrypt-x64.Tpo -c -o asm/cpuminer-scrypt-x64.o `test -f 'asm/scrypt-x64.S' || echo './'`asm/scrypt-x64.S
mv -f algo/.deps/cpuminer-x16r.Tpo algo/.deps/cpuminer-x16r.Po
mv -f algo/.deps/cpuminer-x17.Tpo algo/.deps/cpuminer-x17.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include  -march=native -O2 -msse3 -fomit-frame-pointer -pipe -MT asm/cpuminer-aesb-x64.o -MD -MP -MF asm/.deps/cpuminer-aesb-x64.Tpo -c -o asm/cpuminer-aesb-x64.o `test -f 'asm/aesb-x64.S' || echo './'`asm/aesb-x64.S
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT cpuminer-cpu-miner.o -MD -MP -MF .deps/cpuminer-cpu-miner.Tpo -c -o cpuminer-cpu-miner.o `test -f 'cpu-miner.c' || echo './'`cpu-miner.c
mv -f asm/.deps/cpuminer-aesb-x64.Tpo asm/.deps/cpuminer-aesb-x64.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT cpuminer-util.o -MD -MP -MF .deps/cpuminer-util.Tpo -c -o cpuminer-util.o `test -f 'util.c' || echo './'`util.c
mv -f algo/.deps/cpuminer-xevan.Tpo algo/.deps/cpuminer-xevan.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT cpuminer-api.o -MD -MP -MF .deps/cpuminer-api.Tpo -c -o cpuminer-api.o `test -f 'api.c' || echo './'`api.c
mv -f algo/.deps/cpuminer-zr5.Tpo algo/.deps/cpuminer-zr5.Po
gcc -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast   -march=native -O2 -msse3 -fomit-frame-pointer -pipe  -Iyes/include -Iyes/include -MT cpuminer-sysinfos.o -MD -MP -MF .deps/cpuminer-sysinfos.Tpo -c -o cpuminer-sysinfos.o `test -f 'sysinfos.c' || echo './'`sysinfos.c
mv -f asm/.deps/cpuminer-sha2-x64.Tpo asm/.deps/cpuminer-sha2-x64.Po
g++ -DHAVE_CONFIG_H -I.  -Iyes/include -Iyes/include -fno-strict-aliasing  -I. -Iyes/include -Iyes/include  -march=native -O2 -msse3 -fomit-frame-pointer -pipe -MT cpuminer-uint256.o -MD -MP -MF .deps/cpuminer-uint256.Tpo -c -o cpuminer-uint256.o `test -f 'uint256.cpp' || echo './'`uint256.cpp
mv -f asm/.deps/cpuminer-scrypt-x64.Tpo asm/.deps/cpuminer-scrypt-x64.Po
mv -f .deps/cpuminer-sysinfos.Tpo .deps/cpuminer-sysinfos.Po
mv -f .deps/cpuminer-uint256.Tpo .deps/cpuminer-uint256.Po
mv -f .deps/cpuminer-api.Tpo .deps/cpuminer-api.Po
mv -f algo/.deps/cpuminer-sha2.Tpo algo/.deps/cpuminer-sha2.Po
mv -f .deps/cpuminer-util.Tpo .deps/cpuminer-util.Po
mv -f .deps/cpuminer-cpu-miner.Tpo .deps/cpuminer-cpu-miner.Po
mv -f sha3/.deps/cpuminer-sph_haval.Tpo sha3/.deps/cpuminer-sph_haval.Po
g++  -march=native -O2 -msse3 -fomit-frame-pointer -pipe -Lyes/lib -Lyes/lib  -Lyes/lib -Lyes/lib  -o cpuminer cpuminer-cpu-miner.o cpuminer-util.o cpuminer-api.o cpuminer-sysinfos.o cpuminer-uint256.o sha3/cpuminer-sph_keccak.o sha3/cpuminer-sph_hefty1.o sha3/cpuminer-sph_groestl.o sha3/cpuminer-sph_skein.o sha3/cpuminer-sph_bmw.o sha3/cpuminer-sph_jh.o sha3/cpuminer-sph_shavite.o sha3/cpuminer-sph_blake.o sha3/cpuminer-mod_blakecoin.o sha3/cpuminer-sph_luffa.o sha3/cpuminer-sph_cubehash.o sha3/cpuminer-sph_simd.o sha3/cpuminer-sph_echo.o sha3/cpuminer-sph_hamsi.o sha3/cpuminer-sph_haval.o sha3/cpuminer-sph_fugue.o sha3/cpuminer-sph_ripemd.o sha3/cpuminer-sph_sha2.o sha3/cpuminer-sph_sha2big.o sha3/cpuminer-sph_shabal.o sha3/cpuminer-sph_whirlpool.o sha3/cpuminer-gost_streebog.o crypto/cpuminer-blake2s.o crypto/cpuminer-blake2b.o crypto/cpuminer-oaes_lib.o crypto/cpuminer-c_keccak.o crypto/cpuminer-c_groestl.o crypto/cpuminer-c_blake256.o crypto/cpuminer-c_jh.o crypto/cpuminer-c_skein.o crypto/cpuminer-hash.o crypto/cpuminer-aesb.o lyra2/cpuminer-Lyra2.o lyra2/cpuminer-Sponge.o yescrypt/cpuminer-yescrypt-common.o yescrypt/cpuminer-yescrypt-best.o yescrypt/cpuminer-sha256_Y.o algo/cpuminer-axiom.o algo/cpuminer-bastion.o algo/cpuminer-blake.o algo/cpuminer-blakecoin.o algo/cpuminer-blake2.o algo/cpuminer-bmw256.o algo/cpuminer-c11.o algo/cpuminer-cryptonight.o algo/cpuminer-cryptolight.o algo/cpuminer-decred.o algo/cpuminer-drop.o algo/cpuminer-fresh.o algo/cpuminer-groestl.o algo/cpuminer-heavy.o algo/cpuminer-ink.o algo/cpuminer-jha.o algo/cpuminer-lbry.o algo/cpuminer-luffa.o algo/cpuminer-lyra2re.o algo/cpuminer-lyra2rev2.o algo/cpuminer-myr-groestl.o algo/cpuminer-keccak.o algo/cpuminer-pentablake.o algo/cpuminer-quark.o algo/cpuminer-neoscrypt.o algo/cpuminer-nist5.o algo/cpuminer-pluck.o algo/cpuminer-qubit.o algo/cpuminer-scrypt.o algo/cpuminer-scrypt-jane.o algo/cpuminer-sha2.o algo/cpuminer-sia.o algo/cpuminer-sibcoin.o algo/cpuminer-skein.o algo/cpuminer-skein2.o algo/cpuminer-s3.o algo/cpuminer-bitcore.o algo/cpuminer-timetravel.o algo/cpuminer-tribus.o algo/cpuminer-veltor.o algo/cpuminer-x11evo.o algo/cpuminer-x11.o algo/cpuminer-x13.o algo/cpuminer-x14.o algo/cpuminer-x15.o algo/cpuminer-x16r.o algo/cpuminer-x17.o algo/cpuminer-xevan.o algo/cpuminer-yescrypt.o algo/cpuminer-zr5.o asm/cpuminer-neoscrypt_asm.o  asm/cpuminer-sha2-x64.o asm/cpuminer-scrypt-x64.o asm/cpuminer-aesb-x64.o   -lcurl -lz -lssl -lcrypto -ljansson -lpthread  -lz 
make[2]: Leaving directory '/root/cpuminer-multi'
make[1]: Leaving directory '/root/cpuminer-multi'