Giter VIP home page Giter VIP logo

qtcreator-meson-plugin's Introduction

About

This is some basic Meson build system integration for Qt Creator.

Currently implemented features:

  • Create new projects
  • Show files in project:
    • Explicitly marked file lists
    • Other files
    • Subdirectories
    • Subprojects
    • Automatically shows corresponding header files (.h, .hpp, .hh, _p variants)
  • Add/Remove/Rename files in explicitly marked file lists
  • Basic build integration (ninja backend only)
  • Extract C++ code completion information from build directory
  • Group files by target
  • Edit build directory configuration

Not yet implemented:

  • Automatically detect (or create) build directory for existing projects
  • Kit support
  • meson.build syntax highlighting/code completion
  • Asynchronous meson introspection / project parsing

How to create editable file groups

To enable editing a file list directly from the project explorer it needs to be marked with a marker comment. It looks like this: #ide:editable-filelist. Usage example:

#ide:editable-filelist
sources = [
  'bar.cpp',
  'foo.cpp',
]

Building from source

Please note that the build was only tested with Qt Creator 4.10.0 and other versions most likely won't work as the Qt Creator APIs tend to change even between minor version.

To build the plugin you need the qtcreator sources and libraries. So the safest way is to also build qtcreator from source.

Rough steps:

# Optional:
#export LLVM_INSTALL_DIR=/path/to/llvm
# useful on debian's stock qt
export QT_SELECT=5

wget https://download.qt.io/official_releases/qtcreator/4.10/4.10.0/qt-creator-opensource-src-4.10.0.tar.xz
tar -xf qt-creator-opensource-src-4.10.0.tar.xz
mkdir qt-creator-opensource-src-4.10.0-build
cd qt-creator-opensource-src-4.10.0-build

qmake -r ../qt-creator-opensource-src-4.10.0
make -j 6
IDE_SOURCE_TREE=$(realpath ../qt-creator-opensource-src-4.10.0)
IDE_BUILD_TREE=$(realpath .)

cd /path/to/qtcreator-meson-plugin
qmake mesonprojectmanager.pro IDE_SOURCE_TREE="$IDE_SOURCE_TREE" IDE_BUILD_TREE="$IDE_BUILD_TREE"
make

Snapshots

You can find automatically built snapshots on Azure Pipelines.

qtcreator-meson-plugin's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.