Skip to content
crypto cpuminer (linux + windows)
C Assembly C++ NSIS M4 PHP Other
Branch: linux
Clone or download
#42 Compare This branch is 260 commits ahead, 3 commits behind lucasjones:master.
Type Name Latest commit message Commit time
Failed to load latest commit information.
algo phi2: avoid possible memory overflow May 17, 2019
api api: add support for websocket calls Dec 18, 2014
asm fix os x build with asm (#14) Mar 16, 2019
compat lyra2v3 algo for incoming VTC fork Jan 30, 2019
crypto blake2b component algo for later use, not enough for sia Jul 29, 2016
lyra2 vstudio: fix typo Jan 30, 2019
m4 add cryptonight-light algo Aug 6, 2015
res lyra2v3 algo for incoming VTC fork Jan 30, 2019
scryptjane fix for ARM support (#24) Feb 27, 2018
sha3 x20r algo with saphir panama and radiogatun (#33) Dec 3, 2018
yescrypt yescrypt: disable some extra/cleanup memset Dec 7, 2015
.gitattributes Add skein support Apr 23, 2014
.gitignore Allow a default json config in user folder Feb 8, 2015
.travis.yml switch application prefix from minerd to cpuminer Dec 7, 2014
AUTHORS Update README for the v1.0.5 Aug 26, 2014 release v1.3 Nov 3, 2016
COPYING Initial commit Apr 23, 2014
ChangeLog Initial commit Apr 23, 2014
Dockerfile Update docker file Nov 19, 2016
LICENSE Initial commit Apr 23, 2014 Force __arm__ define on aarch64 Aug 8, 2019
NEWS Add geek algo (#35) Mar 16, 2019 fix os x build with asm (#14) Mar 16, 2019
api.c diff: show share diff and solved blocs + api Dec 28, 2015 windows: fix build with mingw64 Oct 30, 2014 build: add a build file for linux on ARM boards Mar 14, 2019 restore code Mar 16, 2019
compat.h small changes in --version output May 22, 2016 lyra2v3 algo for incoming VTC fork Jan 30, 2019
cpu-miner.c Add geek algo (#35) Mar 16, 2019
cpuminer-conf.json update sample config, default to decred on yiimp May 21, 2016
cpuminer.1 switch application prefix from minerd to cpuminer Dec 7, 2014
cpuminer.nsi cleanup: remove extern, sort cputest + lowercase Mar 11, 2015
cpuminer.sln Add support for windows (VC2013) Oct 29, 2014
cpuminer.vcxproj Add geek algo (#35) Mar 16, 2019
cpuminer.vcxproj.filters Add geek algo (#35) Mar 16, 2019
elist.h debug: add -f option to test with reduced diff Oct 31, 2014
miner.h Add geek algo (#35) Mar 16, 2019 mingw: build statically for msys/mingw compat Dec 7, 2015 clang: fix path and chmod Nov 21, 2015
sysinfos.c cpuid: fix for intel compiler (#31) Nov 4, 2018
uint256.cpp yescrypt algo (basic and simd) Dec 5, 2015
uint256.h Add sib algo and start the work on diff (part 1) Oct 1, 2015
util.c Add geek algo (#35) Mar 16, 2019


Build Status

This is a multi-threaded CPU miner, fork of pooler's cpuminer (see AUTHORS for list of contributors).

Table of contents


Currently supported

  • scrypt (Litecoin, Dogecoin, Feathercoin, ...)
  • scrypt:N
  • scrypt-jane:N
  • sha256d (Bitcoin, Freicoin, Peercoin/PPCoin, Terracoin, ...)
  • allium (Garlicoin, Tuxcoin)
  • axiom (Axiom Shabal-256 based MemoHash)
  • bastion (Joincoin [J])
  • bitcore Permuted serie of 10 algos (BitCore)
  • blake (Saffron [SFR] Blake-256)
  • blake2s (NevaCoin Blake2-S 256)
  • blake2b (Not SIA one)
  • bmw (Midnight [MDT] BMW-256)
  • cryptonight (Bytecoin [BCN], Monero [XMR])
  • cryptonight-light (Aeon)
  • decred (Blake256-14 [DCR])
  • dmd-gr (Diamond-Groestl)
  • fresh (FreshCoin)
  • geek (GeekCash [GEEK])
  • groestl (Groestlcoin)
  • jha (JackpotCoin, SweepStake)
  • lbry (LBRY Credits [LBC])
  • lyra2RE (Cryptocoin)
  • lyra2REv2
  • lyra2REv3 (VertCoin [VTC])
  • myr-gr Myriad-Groestl (MyriadCoin [MYR])
  • neoscrypt (Feathercoin)
  • nist5 (MistCoin [MIC], TalkCoin [TAC], ...)
  • pentablake (Joincoin)
  • pluck (Supcoin [SUP])
  • quark (Quarkcoin)
  • qubit (GeoCoin)
  • skein (Skeincoin, Myriadcoin, Xedoscoin, ...)
  • skein2 (Woodcoin)
  • s3 (OneCoin)
  • sia (Reversed Blake2B for SIA [SC])
  • sib X11 + gost streebog (SibCoin)
  • timetravel Permuted serie of 8 algos (MachineCoin [MAC])
  • tribus 3 of the top NIST5 algos (Denarius [DNR])
  • vanilla (Blake-256 8-rounds - double sha256 [VNL])
  • veltor (Veltor [VLT])
  • xevan x17 x 2 on bigger header (BitSend [BSD])
  • x11evo (Revolver [XRE])
  • x11 (Darkcoin [DRK], Hirocoin, Limecoin, ...)
  • x12 (GalaxyCash [GCH])
  • x13 (Sherlockcoin, [ACE], [B2B], [GRC], [XHC], ...)
  • x14 (X14, Webcoin [WEB])
  • x15 (RadianceCoin [RCE])
  • x16r (Ravencoin [RVN])
  • x16s (Pigeoncoin [PGN])
  • x17 (Verge [XVG])
  • x20r
  • yescrypt (GlobalBoostY [BSTY], Unitus [UIS], MyriadCoin [MYR])
  • zr5 (Ziftrcoin [ZRC])

Implemented, but untested

  • ? hefty1 (Heavycoin)
  • ? keccak (Maxcoin HelixCoin, CryptoMeth, Galleon, 365coin, Slothcoin, BitcointalkCoin)
  • ? keccakc (Creativecoin)
  • ? luffa (Joincoin, Doomcoin)
  • ? rainforest
  • ? shavite3 (INKcoin)

Planned support for

  • scrypt-jane (YaCoin, CopperBars, Pennies, Tickets, etc..)




Basic *nix build instructions:

  • just use ./ OR
 ./	# only needed if building from git repo
 ./	# only needed if building on Mac OS X or with Clang
 ./configure CFLAGS="*-march=native*" --with-crypto --with-curl
 # Use -march=native if building for a single machine

Note for Debian/Ubuntu users:

 apt-get install automake autoconf pkg-config libcurl4-openssl-dev libjansson-dev libssl-dev libgmp-dev make g++

Note for OS X users:

 brew install openssl curl
 ./ # if curl was installed to /usr/local/opt, else update paths in darwin section

Note for pi64 users:

 ./configure --disable-assembly CFLAGS="-Ofast -march=native" --with-crypto --with-curl

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 with Visual Studio 2013

  • All the required .lib files are now included in tree (windows only)
  • AVX enabled by default for x64 platform (AVX2 and XOP could also be used)

Basic Windows build instructions, using MinGW64:

  • Install MinGW64 and the MSYS Developer Tool Kit (
    • Make sure you have mstcpip.h in MinGW\include
  • install pthreads-w64
  • Install libcurl devel (
    • Make sure you have libcurl.m4 in MinGW\share\aclocal
    • Make sure you have curl-config in MinGW\bin
  • Install openssl devel (
  • In the MSYS shell, run:
    • for 64bit, you can use ./ else : ./ # only needed if building from git repo
    LIBCURL="-lcurldll" ./configure CFLAGS="*-march=native*"
    # Use -march=native if building for a single machine

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.
  • 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.

Usage instructions

Run "cpuminer --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.


Donations for the work done in this fork are accepted :

Tanguy Pruvot :

  • BTC: 1FhDPLPpw18X4srecguG3MxJYe4a1JsZnd

Lucas Jones :

  • MRO: 472haywQKoxFzf7asaQ4XKBc2foAY4ezk8HiN63ifW4iAbJiLnfmJfhHSR9XmVKw2WYPnszJV9MEHj9Z5WMK9VCNHaGLDmJ
  • BTC: 139QWoktddChHsZMWZFxmBva4FM96X2dhE


CPUMiner-multi was forked from pooler's CPUMiner, and has been started by Lucas Jones.

  • tpruvot added all the recent features and newer algorythmns
  • Wolf9466 helped with Intel AES-NI support for CryptoNight


GPLv2. See COPYING for details.

You can’t perform that action at this time.