Updated Compiling from source (markdown)

JayDDee
2025-01-07 01:49:52 -05:00
parent c4a35817cd
commit f65e239070

@@ -39,11 +39,11 @@ Update packages and install the mingw toolchain but leave the MSYS2 MSYS window
Install additional packages required for compiling cpuminer-opt.
On x86_64:
#### x86_64 packages
`$ pacman -S autotools libcurl-devel mingw-w64-x86_64-curl gmp-devel jansson-devel zlib-devel`
On ARM64:
#### ARM64 packages
`$ pacman -S mingw-w64-clang-aarch64-clang mingw-w64-clang-aarch64-autotools mingw-w64-clang-aarch64-curl mingw-w64-clang-aarch64-gmp mingw-w64-clang-aarch64-jansson mingw-w64-clang-aarch64-zlib`
@@ -86,7 +86,7 @@ Install Homebrew from https://brew.sh/. Use Homebrew to install missing packages
Homebrew may compile some packages from source which can take a long time.
#### ARM64:
#### ARM64 packages
Install these packages on newer Apple computers with M series ARM64 architecture CPU. Clang is installed by default. Compiling with GCC doesn't work on Apple ARM64.
@@ -94,7 +94,7 @@ Install these packages on newer Apple computers with M series ARM64 architecture
cpuminer-opt can now be compiled on MacOS ARM64 with the default Clang compiler. See Compiling cpuminer-opt below.
#### x86_64:
#### x86_64 packages
Install these packages on older Apple computers with Intel x86_64 architecture CPU. x86_64 CPUs must be compiled using GCC, Clang doesn't work.
@@ -172,36 +172,29 @@ It is not intended for users and is not supported. It is documented primarily fo
These instructions were written specifically for Ubuntu-20.04.
A new user is created specifically for cross compiling.
It keeps all mingw stuff contained and isolated from the rest of the system.
A new user is created specifically for cross compiling. It keeps all mingw stuff contained and isolated from the rest of the system.
Step by step...
#### Install packages
Install necessary packages from the distribution's repositories.
Refer to Linux compile instructions and install required packages.
Install necessary packages from the distribution's repositories. Refer to Linux compile instructions and install required packages.
Additionally, install mingw-w64.
`$ sudo apt-get install mingw-w64 libz-mingw-w64-dev`
#### Create a local library
Create a directory for libraries that need to be compiled in the next stept step.
The Suggested location is $HOME/usr/lib/
Create a directory for libraries that need to be compiled in the next stept step. The Suggested location is $HOME/usr/lib/
`$ mkdir $HOME/usr/lib`
#### Build libraries
The following procedure assumes Ubuntu-20.04 as the host and is the only configuration guaranteed to work.
Download and build other packages for mingw that don't have a mingw64 version available in the repositories.
The following procedure assumes Ubuntu-20.04 as the host and is the only configuration guaranteed to work. Download and build other packages for mingw that don't have a mingw64 version available in the repositories.
Download the following source code packages from their respective and respected download locations,
copy them to $HOME/usr/lib/ and uncompress them.
Download the following source code packages from their respective and respected download locations,copy them to $HOME/usr/lib/ and uncompress them.
curl v7.68.0: https://github.com/curl/curl/releases
@@ -209,8 +202,7 @@ gmp v6.2.0: https://gmplib.org/download/gmp/
Download the same versions as currently installed on the host. The versions listed above are for Ubuntu 20.04.
Run the following commands or follow the supplied instructions.
Do not run "make install" unless using /usr/lib, which isn't recommended.
Run the following commands or follow the supplied instructions. Do not run "make install" unless using /usr/lib, which isn't recommended.
Some instructions insist on running "make check". If make check fails it may still work, YMMV.
@@ -228,13 +220,9 @@ gmp:
#### Tweak the environment.
Many of the following steps are performed automatically by winbuild-cross.sh.
This script is used to build the Windows release package. Although it was not written
for users it can help simplify compiling. If necessary edit winbuild-cross.sh to correct
any directory paths to match your environment.
Many of the following steps are performed automatically by winbuild-cross.sh. This script is used to build the Windows release package. Although it was not written for users it can help simplify compiling. If necessary edit winbuild-cross.sh to correct any directory paths to match your environment.
This step is required everytime user logs in or the commands can be added to
.bashrc.
This step is required everytime user logs in or the commands can be added to .bashrc.
Define some local variables to point to the local library.