- Qt 5.15.2 (includes Qt, QtCreator, QtChooser, and Qt Maintenance Tool)
- Git or Github Desktop for Windows and MacOS
- Compiler - MSVC 2022, gcc, and g++ are included with QtCreator, and you can add or update them using the Qt Maintenance Tool (Maintenance.exe).
- Pdftops (from XpdfReader or poppler) - Required to create PS or EPS layout files.
- Check the sections below for your operating system to find additional installation requirements.
- GitHub Flow workflow
- Gibhub commit message style guide
- Github issue description style guide
- Read more about code styles and developer items of interest on our Developer wiki.
- Review our GitHub Action CI script.
- Codesee, autogenerated maps of code base and PRs. SeamlyTeam contributors can access our map here
- Google Blocks, drill-down tool to visually organize and analyze the code base.
- What the Diff, an AI-powered assistant that adds expanded comments to commits.
These instructions apply in general
- Install Qt 5.15.2, eg via Qt unified installer or https://github.com/miurahr/aqtinstall
- Install QtCreator https://wiki.qt.io/VendorPackages
- Install Additional libraries
- gnu compiler
- poppler (pdftops)
- Example for Ubuntu 22.04:
$ sudo apt install -y build-essential git poppler-tools
- Build and install:
Note: The default prefix for command
$ qmake $ make -j$(nproc) $ sudo make install
make install
is/usr
. To define another prefix, install with an INSTALL_ROOT specified. This example sets/usr/local
as the new prefix for Seamly's installation binary files:$ sudo make INSTALL_ROOT=/usr/local install
- Copy pdftops to Seamly build directory if you need to create post script (.ps and .eps) pattern piece layouts.
-
MacOS only:
- Read about Qt for macOS here
- Install Xcode 11
- Setup/validate build environment. Read more here.
- Switch to Xcode:
sudo xcode-select --switch /Applications/Xcode.app
- Validate clang compiler points to Xcode:
xcrun -sdk macosx -find clang
- Validate SDK version (macOS 10.15):
xcrun -sdk macosx --show-sdk-path
- Switch to Xcode:
- Install Xpdf:
sudo port install xpdf
-
Both MacOS and Windows:
- Download & run the Qt unified installer. Create a Qt account for open source Community Edition if you don't have one.
- Select:
- Custom Installation
- Qt - Minimize your options, otherwise your download size could be in Gs
- Qt 5.15.2
- MSVC 2019
- Qt Debug Information Files
- Developer and Designer Tools
- Qt Creator
- Qt Creator CDB Debugger Support
- Debugging Tools for Windows
- Qt Creator Debug Symbols (Qt Maintenance Tool is always installed with Developer & Designer Tools - this will be highlighted)
- Qt 5.15.2
- Select:
- Download & run the Qt unified installer. Create a Qt account for open source Community Edition if you don't have one.
-
Windows only:
- Download XpdfReader for Windows. Extract to
C:/Program Files
. Rename folder toC:/Program Files/Xpdf
. - Read about Qt for Windows here.
- Add Qt and QtCreator directories to the Windows PATH environment variable through Control Panel:
[Control Panel | System And Security | System | Advanced Tab | Environment Variables button]
- Download XpdfReader for Windows. Extract to
-
Mac only for signing and notarizing:
- Enable signing and notarizing at qmake step:
qmake Seamly2D.pro CONFIG+=macSign
- Enable signing and notarizing at qmake step:
-
Both MacOS and Windows:
- Build the Seamly2D project
- To build with Qt's QtCreator IDE:
- Create your compiler kit. Read more about adding compilers on the Qt website.
- Complete your build settings. Read more about build settings here.
- Open the Seamly2D project with 'File > Open File or Project'. Navigate to the 'seamly2d/src' directory and select 'Seamly2D.pro'.
- Open the Configure Project tab and select your compiler kit. Read more here.
- Build with the 'Build and Run Kit Selector' icon, or use 'Build' and 'Run' from the Tools menu. Read more here.
- To build with Qt's qmake from a terminal window:
- Copy the
C:\Program Files\Xpdf\bin64\pdftops.exe
(or bin32) file to the Seamly build directory to enable creation of post script (.ps and .eps) pattern piece layouts.
- To build with Qt's QtCreator IDE:
- Build the Seamly2D project