Co-authored-by: Moritz Martinius <mm@cloudprinters.de> Reviewed-on: #11
ptprnt
This is a rewrite of ptouch-print as a toy project for my personal amusement. The currently available solutions are good enough for generating labels, but i wanted to explore libusb and maybe improve the functionality of my label printer. All credits for reverse engineering the USB commands to Dominic Rademacher.
Dependencies
This project requires:
- spdlog
- libusb
- pango
- cairo
- meson
- gtest (optional, for testing, will be installed by meson)
- gcov (optional, for coverage reports)
Install dependencies on Arch Linux
pacman -S libusb spdlog pango cairo meson gcovr
Install dependencies on Debian/Ubuntu
apt-get install libusb-1.0-0-dev libspdlog-dev libfmt-dev libpango1.0-dev libcairo2-dev meson gcovr
Build
Clone the repository and simply let meson do the heavy lifting.
meson setup builddir
If you want to generate coverage reports, enable them via the command line switch
meson setup builddir -Db_coverage=true
Rebuild by simply invoking ninja
ninja -C builddir
Run
Run the binary from your builddir
builddir/ptprnt
Test
Testing is done via gtest. To run your test simply invoke ninja with the "test" target.
ninja -C builddir test
Coverage reports can be generated via gcov if you enabled them (see Build section) by building the coverage-text
target.
License
GPLv3, see LICENSE
Author
Moritz Martinius moritz@admiralackbar.de