windows-build.txt 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272
  1. *******************
  2. ** Install MinGW **
  3. *******************
  4. 1. Go to https://sourceforge.net/downloads/mingw
  5. 2. Download and execute mingw-get-setup.exe
  6. 3. Complete the installation wizard leaving default values
  7. *********************
  8. ** Configure MinGW **
  9. *********************
  10. 1. Launch the MinGW Installation Manager
  11. 2. Select Basic Setup on the left
  12. 3. Mark the following packages for installation: mingw-developer-toolkit, mingw32-base, mingw-gcc-g++, and msys-base
  13. 4. Select All Packages on the left
  14. 5. Mark the following packages for installation: mingw32-pthreads-w32 (dev), mingw32-libpdcurses (dev), mingw32-pdcurses (bin), msys-libopenssl (dev)
  15. 6. Click Installation > Apply Changes
  16. 7. Click Apply
  17. 8. Wait...
  18. 9. Click Close
  19. 10. Close MinGW Installation Manager
  20. ************************
  21. ** MinGW Post-Install **
  22. ************************
  23. 1. Check your Start menu for “MinGW Shell”
  24. 2. If the shortcut exists, continue to the next section, otherwise:
  25. 3. Navigate to C:\MinGW\msys\1.0\postinstall
  26. 4. Run pi.bat & answer the questions
  27. 5. Navigate to C:\MinGW\msys\1.0
  28. 6. Right-click msys.bat and click Copy
  29. 7. Click the Start button
  30. 8. Right-click All Programs and click Open
  31. 9. Right-click on the opened folder and click “Paste shortcut”
  32. 10. Right-click the new shortcut and click Properties
  33. 11. On the General tab, rename the shortcut to “MinGW Shell”
  34. 12. On the Shortcut tab, change Start in to C:\MinGW\msys\1.0\bin
  35. 13. Click OK
  36. ******************************************
  37. ** Install YASM (optional - CPU mining) **
  38. ******************************************
  39. 1. Visit http://yasm.tortall.net/Download.html
  40. 2. Download the Win32 or Win64 .exe, depending on your version of Windows
  41. 3. Rename the downloaded executable to yasm.exe
  42. 4. Copy the executable to C:\MinGW\bin
  43. ********************
  44. ** Install uthash **
  45. ********************
  46. 1. Visit http://troydhanson.github.io/uthash/
  47. 2. Download the uthash-master.zip file
  48. 3. Extract the contents of the uthash-master/src folder into C:\MinGW\include
  49. ******************************
  50. ** Install GTK+ for Windows **
  51. ******************************
  52. 1. Visit http://sourceforge.net/projects/gtk-win/
  53. 2. Download and execute the gtk2-runtime installer
  54. 3. Complete the installation wizard leaving default values
  55. 4. Copy libglib-2.0-0.dll from C:\Program Files\GTK2-Runtime\bin to C:\MinGW\bin
  56. ************************
  57. ** Install pkg-config **
  58. ************************
  59. 1. Visit http://www.gtk.org/download/win32.php
  60. 2. Search for a version of pkg-config that includes both the Tool and Dev downloads
  61. 3. Click and download both the Tool link and the Dev link
  62. 4. Open the pkg-config zip file and extract the bin folder to C:\MinGW
  63. 5. Open the pkg-config-dev zip file and extract the share folder to C:\MinGW
  64. *********************
  65. ** Install libcurl **
  66. *********************
  67. 1. Visit http://curl.haxx.se/download.html#Win32
  68. 2. Look for the Win32 - Generic heading
  69. 3. Download the link that indicates both *libcurl* (not just binary) and *SSL*
  70. 4. Open the zip file and extract the lib, include, and bin folders to C:\MinGW
  71. 5. Edit C:\MinGW\lib\pkgconfig\libcurl.pc
  72. 6. Change "-lcurl" to "-lcurl -lcurldll"
  73. ************************
  74. ** Install libjansson **
  75. ************************
  76. 1. Visit http://www.digip.org/jansson/releases/
  77. 2. Download the latest .tar.gz file (not doc.tar.gz)
  78. 3. Open the .tar.gz file and extract the jansson folder to C:\MinGW\msys\1.0\home\USER (where USER is your user name)
  79. 4. Click Start and launch MinGW Shell
  80. 5. Type the following (replace X.X with actual version):
  81. cd ~/jansson-X.X
  82. ./configure --prefix=/MinGW
  83. make
  84. make check
  85. make install
  86. ********************
  87. ** Install libusb **
  88. ********************
  89. 1. Visit http://git.libusb.org/?p=libusb.git;a=snapshot;h=master;sf=zip
  90. 2. Download and open the resulting zip file
  91. 3. Extract the libusb-master folder to C:\MinGW\msys\1.0\home\USER
  92. 4. Return to the MinGW Shell
  93. 5. Type the following (replace XYZ with actual identifier):
  94. cd ~/libusb-master-XYZ
  95. ./autogen.sh --disable-debug-log --prefix=/MinGW
  96. make
  97. make install
  98. ******************************************************
  99. ** Install libmicrohttpd (optional - Stratum Proxy) **
  100. ******************************************************
  101. 1. Visit http://ftp.gnu.org/gnu/libmicrohttpd/
  102. 2. Download the latest w32.zip file
  103. 3. Open the zip file and extract the share, lib, include, and bin folders to C:\MinGW
  104. *************************************************
  105. ** Install libevent (optional - Stratum Proxy) **
  106. *************************************************
  107. 1. Visit http://libevent.org/
  108. 2. Download the latest stable.tar.gz file
  109. 3. Open the .tar.gz file and extract the libevent-X.Y.Z-stable folder to C:\MinGW\msys\1.0\home\USER
  110. 4. Return to the MinGW Shell
  111. 5. Type the following (replace X.Y.Z with actual version):
  112. cd ~/libevent-X.Y.Z-stable
  113. ./configure --disable-openssl --prefix=/MinGW
  114. make
  115. make install
  116. *******************************************************
  117. ** Install HIDAPI (optional - Hashbuster & Nanofury) **
  118. *******************************************************
  119. 1. Visit https://github.com/signal11/hidapi
  120. 2. Click Releases and download the latest zip file
  121. 3. Open the zip file and extract the hidapi-hidapi folder to C:\MinGW\msys\1.0\home\USER
  122. 4. Return to the MinGW Shell
  123. 5. Type the following (replace X.Y.Z with actual version):
  124. cd ~/hidapi-hidapi-X.Y.Z
  125. ./bootstrap
  126. ./configure --prefix=/MinGW
  127. make
  128. make install
  129. *****************
  130. ** Install Git **
  131. *****************
  132. 1. Visit http://git-scm.com/downloads
  133. 2. Click the Download for Windows
  134. 3. Run the resulting installer once downloaded
  135. 4. Complete the installation wizard leaving default values
  136. ****************************
  137. ** Configure Git in MinGW **
  138. ****************************
  139. 1. Navigate to C:\MinGW\msys\1.0\home\USER
  140. 2. Create a new text file with Notepad called profile.txt with the contents:
  141. PATH=$PATH:/c/Program\ Files/Git/bin
  142. 3. Return to the MinGW Shell
  143. 4. Type the following:
  144. mv ~/profile.txt ~/.profile
  145. 5. Restart the MinGW Shell
  146. ******************
  147. ** OS Header(s) **
  148. ******************
  149. 1. Navigate to C:\MinGW\include
  150. 2. Use Notepad to create a new file called mstcpip.h (not .txt) with the contents:
  151. struct tcp_keepalive
  152. {
  153. u_long onoff;
  154. u_long keepalivetime;
  155. u_long keepaliveinterval;
  156. };
  157. #ifndef USE_WS_PREFIX
  158. #define SIO_KEEPALIVE_VALS _WSAIOW(IOC_VENDOR, 4)
  159. #else
  160. #define WS_SIO_KEEPALIVE_VALS _WSAIOW(WS_IOC_VENDOR, 4)
  161. #endif
  162. **********************
  163. ** Compile bfgminer **
  164. **********************
  165. 1. Return to the MinGW Shell
  166. 2. Type the following:
  167. cd ~/
  168. git clone git://github.com/luke-jr/bfgminer.git
  169. cd bfgminer/
  170. ./autogen.sh
  171. ./configure
  172. make
  173. * Note: see the README for bfgminer ./configure options
  174. **********************
  175. ** Package Binaries **
  176. **********************
  177. Create a new folder anywhere and copy the following items there:
  178. C:\MinGW\msys\1.0\home\USER\bfgminer
  179. bfgminer.exe
  180. bfgminer-rpc.exe
  181. COPYING
  182. LICENSE
  183. README*
  184. C:\MinGW\msys\1.0\home\USER\bfgminer\opencl
  185. *.cl
  186. C:\MinGW\msys\1.0\home\USER\bfgminer\libbase58\.libs
  187. libbase58-0.dll
  188. C:\MinGW\msys\1.0\home\USER\bfgminer\libblkmaker\.libs
  189. libblkmaker-0.1-6.dll
  190. libblkmaker_jansson-0.1-6.dll
  191. C:\MinGW\bin
  192. libcurl.dll
  193. libjansson-4.dll
  194. libmicrohttpd-10.dll
  195. libpdcursesw.dll
  196. pthreadGC2.dll
  197. libusb-1.0.dll
  198. libidn-11.dll
  199. libeay32.dll
  200. ssleay32.dll
  201. libgcc_s_dw2-1.dll
  202. libgnutls-28.dll
  203. libgcrypt-11.dll
  204. libplibc-1.dll
  205. libgmp.dll
  206. libintl-8.dll
  207. libgpg-error-0.dll
  208. libiconv-2.dll
  209. libevent-2-0-5.dll
  210. zlib1.dll