Skip to content

notation-fun/powertabeditor

 
 

Repository files navigation

Power Tab Editor

Build Status

Translation status

Get it from the Snap Store Download on Flathub

Users

Developers

  • Development help is very welcome! If you're interested in contributing, the issue tracker has a list of good first issues that are easier to dive into!
  • Feel free to ask development-related questions on the discussions page or on Discord
  • See below for instructions on how to compile and run the project:

Dependencies:

  • CMake >= 3.12
  • Boost >= 1.65
    • algorithm
    • date_time
    • endian
    • functional
    • iostreams
    • operators
    • range
    • rational
    • signals2
    • stacktrace
  • Qt >= 5.10 version or greater
  • nlohmann-json >= 3.7.3
  • RtMidi
  • pugixml
  • minizip
  • doctest
  • (Linux only) - ALSA library (e.g. libasound2-dev)
  • (Linux only) - MIDI sequencer (e.g. timidity-daemon)
  • A compiler with C++17 support.

Windows:

  • Install Git - see https://help.github.com/articles/set-up-git
  • Install vcpkg and run vcpkg install --triplet x64-windows boost-algorithm boost-date-time boost-endian boost-functional boost-iostreams boost-range boost-rational boost-signals2 boost-stacktrace doctest minizip nlohmann-json pugixml to install dependencies.
  • Install Qt by running vcpkg install --triplet x64-windows qt5-base qt5-tools (this may take a while), or install a binary release from the Qt website or https://github.com/miurahr/aqtinstall.
  • Open the project folder in Visual Studio and build.
    • If running CMake manually, set CMAKE_TOOLCHAIN_FILE to [vcpkg root]\scripts\buildsystems\vcpkg.cmake).

Linux:

  • These instructions assume a recent Ubuntu/Debian-based system, but the package names should be similar for other package managers.
  • Install dependencies:
    • sudo apt update
    • sudo apt install cmake qtbase5-dev qttools5-dev libboost-dev libboost-date-time-dev libboost-iostreams-dev nlohmann-json3-dev libasound2-dev librtmidi-dev libpugixml-dev libminizip-dev doctest-dev
    • sudo apt-get install timidity-daemon - timidity is not required for building, but is a good sequencer for MIDI playback.
    • Optionally, use Ninja instead of make (sudo apt install ninja-build)
  • Build:
    • mkdir build && cd build
    • cmake ..
      • Add -DCMAKE_INSTALL_PREFIX=/some/path to customize the install directory.
      • Add -DCMAKE_BUILD_TYPE=Debug for a debug build instead of a Release build.
      • Add -DCMAKE_CXX_COMPILER=clang++ to compile with Clang.
      • Add -G Ninja to generate Ninja build files.
    • make -j8 or ninja
  • Run:
    • ./bin/powertabeditor
    • ./bin/pte_tests to run the unit tests.
  • Install:
    • make install or ninja install

OS X:

  • Install Xcode along with its Command Line Tools.
  • Install dependencies:
    • brew install boost cmake doctest minizip ninja nlohmann-json pugixml qt5 pugixml rtmidi
  • Build:
    • mkdir build && cd build
    • cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug -DCMAKE_PREFIX_PATH=/usr/local/opt/qt5/lib/cmake ..
      • To generate an Xcode project, switch to -G Xcode and then open and build build/powertabeditor.xcodeproj
    • ninja
  • Run:
    • open ./bin/Power\ Tab\ Editor.app
    • ./bin/pte_tests to run the unit tests.
    • For Xcode, select Product/Scheme/powertabeditor and then Product/Run.

About

View and edit guitar tablature.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 94.2%
  • HTML 1.8%
  • CMake 1.6%
  • Inno Setup 1.6%
  • Other 0.8%