mirror of
https://github.com/hashcat/hashcat.git
synced 2025-01-03 04:11:06 +00:00
Update for BUILD.md
Make the build documentation like hashcat
This commit is contained in:
parent
586441fa25
commit
01ebce3618
163
docs/BUILD.md
163
docs/BUILD.md
@ -1,7 +1,7 @@
|
|||||||
oclHashcat build documentation
|
oclHashcat build documentation
|
||||||
=
|
=
|
||||||
# Revision:
|
# Revision:
|
||||||
* 1.0
|
* 1.1
|
||||||
|
|
||||||
# Authors:
|
# Authors:
|
||||||
* Gabriele Gristina <<matrix@hashcat.net>>
|
* Gabriele Gristina <<matrix@hashcat.net>>
|
||||||
@ -11,12 +11,12 @@ oclHashcat build documentation
|
|||||||
|
|
||||||
To compile **oclHashcat** the following third party libraries are required:
|
To compile **oclHashcat** the following third party libraries are required:
|
||||||
|
|
||||||
ADL_SDK v8.0 - http://developer.amd.com/tools-and-sdks/graphics-development/display-library-adl-sdk/
|
- ADL_SDK v8.0 ( http://developer.amd.com/tools-and-sdks/graphics-development/display-library-adl-sdk/ )
|
||||||
cuda v7.5 - https://developer.nvidia.com/cuda-downloads
|
- cuda v7.5 ( https://developer.nvidia.com/cuda-downloads )
|
||||||
GDK v352_55 - https://developer.nvidia.com/gpu-deployment-kit
|
- GDK v352_55 ( https://developer.nvidia.com/gpu-deployment-kit )
|
||||||
NVIDIA Driver v352.21 - https://www.nvidia.com/download/driverResults.aspx/86390/en-us
|
- NVIDIA Driver v352.21 ( https://www.nvidia.com/download/driverResults.aspx/86390/en-us )
|
||||||
NVAPI R352 - https://developer.nvidia.com/nvapi
|
- NVAPI R352 ( https://developer.nvidia.com/nvapi )
|
||||||
AMD-APP-SDK v3.0 - http://developer.amd.com/tools-and-sdks/opencl-zone/amd-accelerated-parallel-processing-app-sdk/
|
- AMD-APP-SDK v3.0 ( http://developer.amd.com/tools-and-sdks/opencl-zone/amd-accelerated-parallel-processing-app-sdk/ )
|
||||||
|
|
||||||
To be able to compile the ocl binaries, it is required to have the latest stable driver from AMD installed.
|
To be able to compile the ocl binaries, it is required to have the latest stable driver from AMD installed.
|
||||||
(fglxr must be installed and initialized)
|
(fglxr must be installed and initialized)
|
||||||
@ -34,157 +34,22 @@ The following files are needed inside the *deps/tmp* directory:
|
|||||||
gdk_linux_amd64_352_55_release.run
|
gdk_linux_amd64_352_55_release.run
|
||||||
AMD-APP-SDKInstaller-v3.0.130.135-GA-linux64.tar.bz2
|
AMD-APP-SDKInstaller-v3.0.130.135-GA-linux64.tar.bz2
|
||||||
|
|
||||||
Now just execute the following script to complete the installation of dependencies (check for an updated version in **tools/deps.sh**):
|
|
||||||
|
|
||||||
#!/bin/bash
|
|
||||||
# Author: Gabriele Gristina <matrix@hashcat.net>
|
|
||||||
# Revision: 1.02
|
|
||||||
|
|
||||||
## global vars
|
|
||||||
DEPS="make gcc g++ gcc-multilib g++-multilib libc6-dev-i386 mingw-w64 build-essential unzip"
|
|
||||||
DOWNLOAD_DEPS="ADL_SDK8.zip R352-developer.zip cuda_7.5.18_linux.run NVIDIA-Linux-x86_64-352.21.run gdk_linux_amd64_352_55_release.run AMD-APP-SDKInstaller-v3.0.130.135-GA-linux64.tar.bz2"
|
|
||||||
|
|
||||||
## enter the deps directory
|
|
||||||
cur_directory=$(dirname ${0})
|
|
||||||
script_directory=$(cd ${cur_directory} && pwd -P)
|
|
||||||
deps_dir=${script_directory}/../deps
|
|
||||||
|
|
||||||
mkdir -p ${deps_dir} # but it should already exist (is part of the repository)
|
|
||||||
cd ${deps_dir}
|
|
||||||
|
|
||||||
## cleanup the directories under the 'deps' folder
|
|
||||||
rm -rf {adl-sdk,cuda-7.5,NVIDIA-Linux-x86_64-352.21,nvidia-gdk,amd-app-sdk} && \
|
|
||||||
mkdir -p {tmp,adl-sdk,cuda-7.5,NVIDIA-Linux-x86_64-352.21,nvidia-gdk,amd-app-sdk} && \
|
|
||||||
cd tmp/
|
|
||||||
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "! Cannot create deps directories."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
## check dependencies
|
|
||||||
i=0
|
|
||||||
for d in ${DOWNLOAD_DEPS}; do
|
|
||||||
if [ ! -f "${d}" ]; then
|
|
||||||
echo "! ${d} not found."
|
|
||||||
((i++))
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ ${i} -gt 0 ]; then
|
|
||||||
echo "! Please manually download all the above dependencies to the deps/tmp/ directory"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
## installing needed packages
|
|
||||||
for pkg in ${DEPS}; do
|
|
||||||
|
|
||||||
# check if the package is already installed
|
|
||||||
dpkg -s ${pkg} &>/dev/null
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
## root check
|
|
||||||
if [ $(id -u) -ne 0 ]; then
|
|
||||||
echo "! Must be root to install the required package '${pkg}' with apt-get"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
apt-get -y install ${pkg}
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "! failed to install ${pkg}"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
## extract ADL SDK
|
|
||||||
unzip ADL_SDK8.zip -d ${deps_dir}/adl-sdk-8
|
|
||||||
ret=$?
|
|
||||||
|
|
||||||
if [[ ${ret} -ne 0 ]] && [[ ${ret} -ne 1 ]]; then
|
|
||||||
echo "! failed to extract ADL SDK"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
rm -rf ${deps_dir}/adl-sdk && ln -s ${deps_dir}/adl-sdk-8 ${deps_dir}/adl-sdk
|
|
||||||
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "! failed to setup ADL SDK link"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
## extract NVAPI
|
|
||||||
unzip R352-developer.zip -d ${deps_dir}
|
|
||||||
ret=$?
|
|
||||||
|
|
||||||
if [[ ${ret} -ne 0 ]] && [[ ${ret} -ne 1 ]]; then
|
|
||||||
echo "! failed to extract NVAPI"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
## install CUDA SDK
|
|
||||||
chmod +x cuda_7.5.18_linux.run && \
|
|
||||||
./cuda_7.5.18_linux.run -toolkit -silent -override --toolkitpath=${deps_dir}/cuda-7.5
|
|
||||||
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "! failed to install CUDA SDK"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
## install NVIDIA Driver
|
|
||||||
chmod +x NVIDIA-Linux-x86_64-352.21.run && \
|
|
||||||
./NVIDIA-Linux-x86_64-352.21.run -x && \
|
|
||||||
mv NVIDIA-Linux-x86_64-352.21 ${deps_dir}/ && \
|
|
||||||
cd ${deps_dir}/NVIDIA-Linux-x86_64-352.21 && \
|
|
||||||
ln -s libnvidia-ml.so.352.21 libnvidia-ml.so && \
|
|
||||||
ln -s libcuda.so.352.21 libcuda.so && \
|
|
||||||
cd 32 && \
|
|
||||||
ln -s libnvidia-ml.so.352.21 libnvidia-ml.so && \
|
|
||||||
ln -s libcuda.so.352.21 libcuda.so && \
|
|
||||||
cd ${deps_dir}/tmp
|
|
||||||
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "! failed to install NVIDIA Driver"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
## install NVIDIA GPU Deployment Kit
|
|
||||||
chmod +x gdk_linux_amd64_352_55_release.run && \
|
|
||||||
./gdk_linux_amd64_352_55_release.run --silent --installdir=${deps_dir}/nvidia-gdk
|
|
||||||
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "! failed to install NVIDIA GPU Deployment Kit"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
## extract AMD APP SDK
|
|
||||||
tar xjf AMD-APP-SDKInstaller-v3.0.130.135-GA-linux64.tar.bz2 && \
|
|
||||||
./AMD-APP-SDK-v3.0.130.135-GA-linux64.sh --noexec --target ${deps_dir}/amd-app-sdk-v3.0.130.135
|
|
||||||
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "! failed to extract AMD APP SDK"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
rm -rf ${deps_dir}/amd-app-sdk && ln -s ${deps_dir}/amd-app-sdk-v3.0.130.135 ${deps_dir}/amd-app-sdk
|
|
||||||
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "! failed to setup ADL SDK link"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "> oclHashcat dependencies have been resolved."
|
|
||||||
|
|
||||||
# Building oclHashcat
|
# Building oclHashcat
|
||||||
First get a copy of **oclHashcat** repository
|
First get a copy of **oclHashcat** repository
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
$ git clone https://github.com/hashcat/oclHashcat.git
|
$ git clone https://github.com/hashcat/oclHashcat.git
|
||||||
```
|
```
|
||||||
|
Install the dependencies
|
||||||
Now simply jump in and type "make all"
|
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
$ cd oclHashcat
|
$ cd oclHashcat
|
||||||
|
$ sudo ./tools/deps.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
Run "make all"
|
||||||
|
|
||||||
|
```sh
|
||||||
$ make all
|
$ make all
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user