CPU miner for BitZeny and Litecoin and Bitcoin
Clone or download
Pull request Compare This branch is 22 commits ahead of pooler:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
compat Build on Windows using mingw32. Nov 26, 2010
depend Fix url Dec 14, 2017
.gitignore Ignore .exe Jan 26, 2018
AUTHORS Version 2.0 Jan 16, 2012
COPYING Convert over to autotools. Release version 0.1. Nov 25, 2010
ChangeLog Convert over to autotools. Release version 0.1. Nov 25, 2010
Dockerfile Modified Dockerfile to reduce the Virtual Memory footprint and total … Sep 19, 2015
Dockerfile.alpine Update Dockerfile.alpine Jan 30, 2018
LICENSE Copyright Mar 21, 2018
Makefile.am support yescrypt Dec 13, 2017
NEWS Version 2.5.0 Jun 22, 2017
README Come back README! Jan 26, 2018
README.md Add macOS build instructions Jan 30, 2018
autogen.sh Convert over to autotools. Release version 0.1. Nov 25, 2010
compat.h Define sleep() as a macro on Windows Oct 4, 2013
configure.ac Add --cpu-affinity Option Jan 25, 2018
cpu-miner.c Fix compile for Windows issue Jan 26, 2018
elist.h Do not use the non-standard typeof operator May 16, 2014
example-cfg.json Version 2.0 Jan 16, 2012
miner.h support yescrypt Dec 13, 2017
minerd.1 Version 2.5.0 Jun 22, 2017
nomacro.pl Modify nomacro.pl to expand assembler macros Feb 25, 2015
scrypt-arm.S Rollback orig file Jan 25, 2018
scrypt-ppc.S Rollback orig file Jan 25, 2018
scrypt-x64.S Rollback orig file Jan 25, 2018
scrypt-x86.S Rollback orig file Jan 25, 2018
scrypt.c Add optimized PowerPC code Feb 25, 2015
sha2-arm.S Rollback orig file Jan 25, 2018
sha2-ppc.S Rollback orig file Jan 25, 2018
sha2-x64.S Rollback orig file Jan 25, 2018
sha2-x86.S Rollback orig file Jan 25, 2018
sha2.c Add support for VIA PadLock Hash Engine on x86-64 May 17, 2015
sha256.c support yescrypt Dec 13, 2017
sha256.h support yescrypt Dec 13, 2017
sysendian.h support yescrypt Dec 13, 2017
util.c Add basic Segwit support Apr 28, 2017
yescrypt-best.c fixed neon could work with aarch64 Jan 13, 2018
yescrypt-neon.c add ARM NEON version for yescrypt Jan 13, 2018
yescrypt-opt.c support yescrypt Dec 13, 2017
yescrypt-platform.c support yescrypt Dec 13, 2017
yescrypt-ref.c support yescrypt Dec 13, 2017
yescrypt-sse.c add ARM NEON version for yescrypt Jan 13, 2018
yescrypt.c support yescrypt Dec 13, 2017
yescrypt.h support yescrypt Dec 13, 2017

README.md

This is a multi-threaded CPU miner for Litecoin and Bitcoin and BitZeny, fork of Jeff Garzik's reference cpuminer.

License: GPLv2. See COPYING for details.

Downloads: https://sourceforge.net/projects/cpuminer/files/
Git tree: https://github.com/pooler/cpuminer

Build Instruction

Dependencies

libcurl http://curl.haxx.se/libcurl/
jansson http://www.digip.org/jansson/ (jansson is included in-tree)

Install Build Dependencies on Debian, Ubuntu and other APT-based distros:

sudo apt-get install build-essential libcurl4-openssl-dev

Install Build Dependencies on Fedora, RHEL, CentOS and other yum-based distros:

sudo yum install gcc make curl-devel

Install Build Dependencies on OpenSUSE and other ZYpp-based distros:

sudo zypper in gcc make libcurl-devel

Basic *nix build instructions

./autogen.sh	# only needed if building from git repo
./nomacro.pl	# in case the assembler doesn't support macros
./configure CFLAGS="-O3" # Make sure -O3 is an O and not a zero!
make

macOS build instructions

brew install curl
mkdir m4
cp /usr/local/Cellar/curl/7.58.0/share/aclocal/libcurl.m4 m4/

Add one line to Makefile.am

ACLOCAL_AMFLAGS = -I m4

Edit autogen.sh

# aclocal
aclocal -I m4

Finaly same as *nix build

./autogen.sh
./nomacro.pl
./configure CFLAGS="-O3"
make

Notes for AIX users

  • To build a 64-bit binary, export OBJECT_MODE=64
  • GNU-style long options are not supported, but are accessible via configuration file

Basic Windows build instructions, using MinGW

Install MinGW and the MSYS Developer Tool Kit (http://www.mingw.org/)

  • Make sure you have mstcpip.h in MinGW\include

If using MinGW-w64, install pthreads-w64 Install libcurl devel (http://curl.haxx.se/download.html)

  • Make sure you have libcurl.m4 in MinGW\share\aclocal
  • Make sure you have curl-config in MinGW\bin

In the MSYS shell, run:

./autogen.sh	# only needed if building from git repo
LIBCURL="-lcurldll" ./configure CFLAGS="-O3"
make

On Ubnutu or other Linux:

./autogen.sh
LDFLAGS="-L depend/curl-7.38.0-devel-mingw64/lib64 -static" LIBCURL="-lcurldll" ./configure CFLAGS="-O3" --host=x86_64-w64-mingw32 --with-libcurl=depend/curl-7.38.0-devel-mingw64
make

Architecture-specific notes

ARM:	No runtime CPU detection. The miner can take advantage
	of some instructions specific to ARMv5E and later processors,
	but the decision whether to use them is made at compile time,
	based on compiler-defined macros.
	To use NEON instructions, add "-mfpu=neon" to CFLAGS.
PowerPC: No runtime CPU detection.
	To use AltiVec instructions, add "-maltivec" to CFLAGS.
x86:	The miner checks for SSE2 instructions support at runtime,
	and uses them if they are available.
x86-64:	The miner can take advantage of AVX, AVX2 and XOP instructions,
	but only if both the CPU and the operating system support them.
	    * Linux supports AVX starting from kernel version 2.6.30.
	    * FreeBSD supports AVX starting with 9.1-RELEASE.
	    * Mac OS X added AVX support in the 10.6.8 update.
	    * Windows supports AVX starting from Windows 7 SP1 and
	      Windows Server 2008 R2 SP1.
	The configure script outputs a warning if the assembler
	doesn't support some instruction sets. In that case, the miner
	can still be built, but unavailable optimizations are left off.
	The miner uses the VIA Padlock Hash Engine where available.

Usage instructions: Run "minerd --help" to see options.

Connecting through a proxy: Use the --proxy option. To use a SOCKS proxy, add a socks4:// or socks5:// prefix to the proxy host. Protocols socks4a and socks5h, allowing remote name resolving, are also available since libcurl 7.18.0. If no protocol is specified, the proxy is assumed to be a HTTP proxy. When the --proxy option is not used, the program honors the http_proxy and all_proxy environment variables.

Also many issues and FAQs are covered in the forum thread dedicated to this program, https://bitcointalk.org/index.php?topic=55038.0

Donations

BitZeny : Zq83XMtc9gShkgi4bNNHWA4FDbMe8dFQmD

Happy mining!