mirror of
https://github.com/GOSTSec/sgminer
synced 2025-01-11 07:17:58 +00:00
Add Cygwin build instructions.
This commit is contained in:
parent
bf8e37ce19
commit
2c53b8a34e
131
doc/cygwin-build.txt
Normal file
131
doc/cygwin-build.txt
Normal file
@ -0,0 +1,131 @@
|
|||||||
|
################################################################################
|
||||||
|
# #
|
||||||
|
# Cygwin setup and build instructions (on Windows): #
|
||||||
|
# #
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
********************************************************************************
|
||||||
|
* Introduction *
|
||||||
|
********************************************************************************
|
||||||
|
The following instructions have been tested on Windows 7.
|
||||||
|
|
||||||
|
********************************************************************************
|
||||||
|
* Install Cygwin *
|
||||||
|
********************************************************************************
|
||||||
|
Download the Cygwin installer from http://cygwin.com/ . You should download the
|
||||||
|
x86 installer (I am unsure if the amd64 installer will work for you).
|
||||||
|
|
||||||
|
Run the installer as administrator, and select at least these packages (this
|
||||||
|
may be incomplete).
|
||||||
|
- Archive/unzip
|
||||||
|
- Devel/autoconf* (all of them)
|
||||||
|
- Devel/automake* (all of them)
|
||||||
|
- Devel/gcc-core
|
||||||
|
- Devel/git (if fetching source directly from the repository)
|
||||||
|
- Devel/libtool
|
||||||
|
- Devel/make
|
||||||
|
- Devel/pkg-config
|
||||||
|
- Libs/libcurl-devel
|
||||||
|
- Libs/libcurl4
|
||||||
|
- Libs/libncurses-devel
|
||||||
|
- Libs/libncurses10
|
||||||
|
Make sure to install the shortcut(s).
|
||||||
|
|
||||||
|
After installing, you'll want to run 'Cygwin Terminal' in the Start Menu.
|
||||||
|
|
||||||
|
********************************************************************************
|
||||||
|
* Install AMD APP SDK, latest version (only if you want GPU mining) *
|
||||||
|
********************************************************************************
|
||||||
|
Note: You do not need to install the AMD APP SDK if you are only using Nvidia
|
||||||
|
GPUs. Go to this URL for the latest x86 AMD APP SDK:
|
||||||
|
http://developer.amd.com/tools-and-sdks/heterogeneous-computing/amd-accelerated-parallel-processing-app-sdk/downloads/
|
||||||
|
Go to this URL for legacy AMD APP SDK's:
|
||||||
|
http://developer.amd.com/tools-and-sdks/heterogeneous-computing/amd-accelerated-parallel-processing-app-sdk/downloads/download-archive/
|
||||||
|
|
||||||
|
Only the x86 version includes the OpenCL implementation for some reason. Then
|
||||||
|
copy the headers and libraries into the Cygwin directory tree:
|
||||||
|
$ cp -R '/cygdrive/c/Program Files (x86)/AMD APP SDK'/*/include/CL /usr/include
|
||||||
|
$ cp '/cygdrive/c/Program Files (x86)/AMD APP SDK'/*/lib/x86/*.a /usr/lib
|
||||||
|
|
||||||
|
Note: If you are on an x86 version of Windows, 'Program Files (x86)' will be
|
||||||
|
'Program Files'.
|
||||||
|
Note2: If you update your APP SDK later, you will want to re-copy the above
|
||||||
|
files.
|
||||||
|
|
||||||
|
********************************************************************************
|
||||||
|
* Fetch the sgminer source *
|
||||||
|
********************************************************************************
|
||||||
|
You've probably already done this, but this can be done with git or with a zip
|
||||||
|
file. With git:
|
||||||
|
$ cd
|
||||||
|
$ git clone git@github.com:veox/sgminer.git
|
||||||
|
|
||||||
|
With a zip file:
|
||||||
|
$ cd
|
||||||
|
$ unzip /cygdrive/c/Users/'YOURNAME'/Downloads/sgminer-master.zip
|
||||||
|
$ mv sgminer-master sgminer
|
||||||
|
(I only rename it to make the directions below uniform.)
|
||||||
|
|
||||||
|
********************************************************************************
|
||||||
|
* Install AMD ADL SDK, latest version (only if you want GPU monitoring) *
|
||||||
|
********************************************************************************
|
||||||
|
Note: You do not need to install the AMD ADL SDK if you are only using Nvidia
|
||||||
|
GPUs. Go to this URL:
|
||||||
|
http://developer.amd.com/tools-and-sdks/graphics-development/display-library-adl-sdk/
|
||||||
|
Download and unzip the file you downloaded:
|
||||||
|
$ cd ~/sgminer
|
||||||
|
$ unzip /cygdrive/c/Users/'YOURNAME'/Downloads/ADL_SDK*.zip 'include/*'
|
||||||
|
|
||||||
|
********************************************************************************
|
||||||
|
* Build sgminer.exe *
|
||||||
|
********************************************************************************
|
||||||
|
There's no reason to use -O3 in your CFLAGS as sgminer isn't CPU-intensive.
|
||||||
|
$ cd ~/sgminer
|
||||||
|
$ ./autogen.sh
|
||||||
|
$ AMDAPPSDKROOT= CFLAGS='-O2 -march=native' \
|
||||||
|
CPPFLAGS=-I/usr/include/ncurses ./configure
|
||||||
|
$ make -j8
|
||||||
|
See below for options to send to configure, but you won't want any of them if
|
||||||
|
you've been following the directions so far.
|
||||||
|
|
||||||
|
You may strip the binary if you are not compiling for debugging. It only makes
|
||||||
|
the file smaller by removing symbols not needed for running.
|
||||||
|
|
||||||
|
********************************************************************************
|
||||||
|
* Installing *
|
||||||
|
********************************************************************************
|
||||||
|
Don't use `make install` as it copies a lot of things you don't want, and it's
|
||||||
|
harder to run. First:
|
||||||
|
$ cp sgminer.exe /usr/bin/__sgminer.exe
|
||||||
|
$ cp -R kernel /usr/share/sgminer
|
||||||
|
|
||||||
|
And create the wrapper /usr/bin/sgminer:
|
||||||
|
#!/bin/sh
|
||||||
|
export GPU_MAX_ALLOC_PERCENT=100
|
||||||
|
export GPU_USE_SYNC_OBJECTS=1
|
||||||
|
if [[ -f $HOME/.sgminer.json ]]; then
|
||||||
|
exec __sgminer --config "$HOME"/.sgminer.json \
|
||||||
|
--kernel-path /usr/share/sgminer "$@"
|
||||||
|
fi
|
||||||
|
exec __sgminer --kernel-path /usr/share/sgminer "$@"
|
||||||
|
|
||||||
|
Use the .json extension above if you want syntax highlighting when you edit it.
|
||||||
|
Make the wrapper executable:
|
||||||
|
$ chmod +x /usr/bin/sgminer
|
||||||
|
|
||||||
|
And write your config based on sgminer/example.conf. Remember not to overwrite
|
||||||
|
/usr/bin/sgminer if/when you update sgminer!
|
||||||
|
|
||||||
|
********************************************************************************
|
||||||
|
* Running *
|
||||||
|
********************************************************************************
|
||||||
|
If you've configured it with ~/.sgminer.json, you don't need any options!
|
||||||
|
$ sgminer [OPTIONS]
|
||||||
|
|
||||||
|
********************************************************************************
|
||||||
|
* Some ./configure options *
|
||||||
|
********************************************************************************
|
||||||
|
--disable-adl Override detection and disable building with ADL
|
||||||
|
--disable-adl-checks Override detection and assume ADL is present
|
||||||
|
--disable-libcurl Disable building with libcurl for getwork and GBT support
|
||||||
|
--without-curses Compile support for curses TUI (default enabled)
|
Loading…
Reference in New Issue
Block a user