Skip to content

chris2511/xca

Folders and files

NameName
Last commit message
Last commit date

Latest commit

29f8d7d · Nov 2, 2024
Aug 21, 2024
Sep 29, 2024
Oct 3, 2024
Sep 7, 2024
Nov 2, 2024
Oct 6, 2024
Oct 13, 2024
Oct 13, 2024
Sep 13, 2024
Sep 30, 2024
Sep 30, 2024
Jan 21, 2020
Jun 1, 2021
Aug 11, 2015
Oct 4, 2024
Feb 14, 2024
Feb 22, 2024
Feb 22, 2024
Oct 13, 2024
Oct 13, 2024
Oct 13, 2024
Aug 24, 2024

Repository files navigation

XCA - X Certificate and Key Management

CMake

Release Notes

  • The latest release is 2.8.0
  • Most notable new features:
    • Support for SHA3
    • Name the MS CryptographicServiceProvider in the comment
    • OpenSSL PURPOSE and validation results in the certificate details
    • Support UniveralPrincipalName (UPN) and NameConstraints
    • Support JSON Web Key (JWK) export format
    • Hide unusable (expired / revoked) certificates
  • Please report issues on github https://github.com/chris2511/xca/issues

Changelog:

A detailled changelog can be found here:

https://hohnstaedt.de/xca/index.php/software/changelog

Documentation

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:

Linux / Unix

  • Install the dependencies
    # Bookworm
    sudo apt install build-essential libssl-dev pkg-config cmake qttools5-dev python3-sphinxcontrib.qthelp
    # Bullseye
    sudo apt install build-essential libssl-dev pkg-config cmake qttools5-dev python3-sphinx
    # Either Qt5
    sudo apt install qtbase5-dev qttools5-dev-tools libqt5sql5 libqt5help5 qttools5-dev
    # Or Qt6
    sudo apt install qt6-base-dev qt6-tools-dev
    
  • 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@3 qt6 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

XCA can be used with Xcode after initializing the directory with: cmake -G Xcode -B .

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-3_1_5.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 is used. Sphinx is used to generate the documentation
      pip3 install sphinx aqtinstall
      
    • Add the PATH shown by pip to your PATH
    • Install Qt, cmake and the MinGW toolchain
      aqt install-qt windows desktop 6.6.3 win64_mingw
      aqt install-tool windows desktop tools_mingw90 qt.tools.win64_mingw900
      aqt install-tool windows desktop tools_vcredist qt.tools.vcredist_64
      
    • If 7z is missing, install it from the store. 7-Zip File Manager (unofficial) or from 7-zip.org
    • Install the "vcredist\vcredist_64.exe"
    • Add cmake, MinGW, OpenSSL and Qt6 to your Path
      %USERPROFILE%\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\Scripts;
      %USERPROFILE%\AppData\Local\Microsoft\WindowsApps;
      %USERPROFILE%\Tools\CMake_64\bin;
      %USERPROFILE%\Tools\mingw_64\bin;
      %USERPROFILE%\6.6.3\mingw_64\bin;
      
    • Create CMAKE_PREFIX_PATH environment variable:
      %USERPROFILE%\6.6.3\mingw_64\lib\cmake
      
    • Install https://wixtoolset.org/releases/ if you want to create the MSI installer
  • Clone: git clone https://github.com/chris2511/xca.git

  • Configure: cmake -B build -G "MinGW Makefiles" xca

  • Make: cmake --build build -j5

  • Create the Portable App: cmake --build build -t install

  • Build the MSI installer (and the Portable App): cd build ; cpack

SQL Remote Database Drivers

MySQL plugins are not shipped with QT anymore because of license issues.

Linux

  • Debian: libqt6sql6-psql libqt6sql6-mysql or libqt6sql6-odbc.
  • RPM: libqt6-database-plugin-pgsql libqt6-database-plugin-mysql libqt6-database-plugin-odbc

They should pull in all necessary dependencies.

Apple macos

  • PostgreSQL: Install the https://postgresapp.com/
  • ODBC: It requires the /usr/local/opt/libiodbc/lib/libiodbc.2.dylib. When installing unixodbc via brew the library must be symlinked from /opt/homebrew/Cellar/libiodbc/3.52.16/lib/libiodbc.2.dylib
  • MariaDB: Driver included since XCA 2.8.0

Windows