Update installation documentation

This commit is contained in:
Christian Hohnstädt 2021-11-23 20:39:30 +01:00
parent da8efa4381
commit 72ab898db7
3 changed files with 96 additions and 75 deletions

74
INSTALL
View File

@ -15,76 +15,10 @@ OpenSSL >= 1.1.0 from https://www.openssl.org
C++11 compiler, e.g. GNU gcc >= 5
GNU make
INSTALL_DIR=/Users/chris/src/xca-dir/install
cmake -DCMAKE_LIBRARY_PATH="$INSTALL_DIR"/lib \
-DCMAKE_INCLUDE_PATH="$INSTALL_DIR"/include \
-DCMAKE_PREFIX_PATH=/usr/local/Cellar/qt\@5/5.15.2/ \
-DCMAKE_BUILD_TYPE=Debug \
../xca
Installation:
=============
Configuration:
--------------
When cloning the git sources the autoconf configure
script must be assembled by calling
$ ./bootstrap
The officially published sources already come with
a configure script.
To build, just do the following steps:
$ ./configure; make -j6; make install
You can build in a different subdirectory:
- cd into the build directory and
- call configure by its full path.
For example, if you are in the freshly unpacked xca-1.1.0 directory:
$ mkdir Build && cd Build && ../configure && make -j10
To clean all built files: rm -rf Build
If you have a special setup, you can predefine the following
variables: CC, LD, STRIP, CFLAGS, prefix. e.g.:
$ CC="ccache gcc" STRIP=: CFLAGS="-Wall -g" prefix=/opt/xca ./configure
to have a cached build and to not strip xca when installing it.
XCA expects the translationfiles in /opt/xca/share/xca/
and installs itself to /opt/xca/bin/
configure allows to set the openssl and QT installation dir.
$ ./configure --help
shows all options. It writes all found settings to
"Local.mak" and "local.h"
Building:
-----------
The Makefiles do support parallel builds (-j)
targets:
all, xca : builds the app
install : installs the app
headers : UICs the headers in ui/ needed by other files.
clean : deletes all builded files
distclean: deletes also Local.mak
xca.exe : W32 executable (see INSTALL.w32)
snapshot : Creates a current snapshot from the local git repository
xca.app : Creates the MacOSX xca.app
xca.dmg : Creates the MacOSX Disk image
Installing:
------------
make DESTDIR=/my/virtual/root
provides /my/virtual/root/ as root-directory for installation
to be mounted by others as root or as installdir for
package builders.
Running/invoking:
=================
a detailed manual can be found in docs/
mkdir build && cd build
cmake ..
cmake --build . -j4
sudo make install
----------------------------------------------------------

View File

@ -1,17 +1,21 @@
Since the switch to CMAKE a native compilation on Windows
Since the switch to CMAKE a native compilation of XCA on Windows
is possible.
Required:
QT via Maintainance tool:
QT via Maintenance tool:
Qt -> 5.15.2 -> MingW-64bit
-> Qt Creator
-> QtCreator (optional)
-> MingW
-> Cmake
-> Ninja
OpenSSL: Win64OpenSSL_1_1_1k.msi
Optional for the remote database connections:
MySQL: qsqlmysql.dll_Qt_SQL_driver_5.15.2_MinGW_8.1.0_64-bit.zip
https://github.com/thecodemonkey86/qt_mysql_driver
PostgreSQL: postgresql-14.1-1-windows-x64.exe
Optional for the documentation
Python3.9 via Microsoft Store
Inside Python console run "pip install sphinx"
@ -19,4 +23,12 @@ Optional for the documentation
Add the C:\Qt\5.15.2\mingw81_64\bin and the path shown by pip
to your %PATH% environment
Open XCA in the Qt Creator and GO
Currently only MinGW is supported.
Take your favorite path:
- Open XCA in the Qt Creator and GO
- Open in VS-Code and GO
- On the console in the xca directory build in a subdir:
cmake -G "MinGW Makefiles" ../xca
cmake --build . -j5
cpack

View File

@ -24,3 +24,78 @@ A detailled changelog can be found here:
This application is documented in the *Help* menu and here:
<https://www.hohnstaedt.de/xca/index.php/documentation/manual>
## __Build from Source__
### Dependencies
To build XCA you need:
- a toolchain
- cmake: https://cmake.org
- Qt5: https://www.qt.io
- OpenSSL: https://www.openssl.org
- Sphinx-Build: https://www.sphinx-doc.org
### Linux / Unix
- Install the dependencies
```
sudo apt install build-essential libssl-dev pkg-config qtbase5-dev qttools5-dev-tools libqt5sql5 libqt5help5 python3-sphinxcontrib.qthelp
```
- Clone: `git clone https://github.com/chris2511/xca.git`
- Configure: `cmake -B build xca`
- Make: `cmake --build build -j5`
- Install: `sudo cmake --install build`
- Or install local and copy later as root: `DESTDIR=DEST cmake --install build --prefix /usr`
### Apple macos
- Install the dependencies
```
xcode-select --install
brew install openssl qt5 python3 cmake
pip3 install sphinx
```
- Clone: `git clone https://github.com/chris2511/xca.git`
- Configure: `cmake -B build xca`
- Make: `cmake --build build -j5`
- Build the DMG: `cd build && cpack`
- Build the PKG: `cd build && cpack -G productbuild`
#### Xcode
- Install dependencies and clone xca as above
and additionally install the xcode app
- `cmake -G Xcode
### Windows
- Install the dependencies
- Install Python for windows from the store or https://www.python.org/downloads/windows/
- Install OpenSSL from here: https://slproweb.com/download/Win64OpenSSL-1_1_1m.msi and verify the sha256 from https://github.com/slproweb/opensslhashes/blob/master/win32_openssl_hashes.json
- To install the Qt libraries, cmake and the MinGW compiler [aqtinstall](https://github.com/miurahr/aqtinstall) is used.
```
pip3 install sphinx aqtinstall
```
Add the PATH shown by pip to your PATH
```
aqt install-qt windows desktop 5.15.2 win64_mingw81
aqt install-tool windows desktop tool_cmake qt.tools.cmake.win64
aqt install-tool windows desktop tool_mingw qt.tools.win64_mingw810
```
If 7z is missing, install it from the store.
- Clone: `git clone https://github.com/chris2511/xca.git`
- Configure: `cmake -B build -G "MinGW Makefiles" xca`
- Make: `cmake --build build -j5`
- Build the MSI installer: `cd build && cpack`
Of course VSCode may be used, too. The MSVC toolchain, however
is no supported, yet.
#### SQL Drivers
Optional for the remote database connections:
- MySQL: https://github.com/thecodemonkey86/qt_mysql_driver/files/5575769/qsqlmysql.dll_Qt_SQL_driver_5.15.2_MinGW_8.1.0_64-bit.zip
- PostgreSQL: postgresql-14.1-1-windows-x64.exe