Skip to content

developer doc: meson commands could be more helpful #3433

Description

@bhaller

OK, next in my saga. Here's what I just did:

bhaller@glass % meson setup build                                                                                          
The Meson build system
Version: 1.10.1
Source dir: /Users/bhaller/Documents/Research/MesserLab/other software/tskit/c
Build dir: /Users/bhaller/Documents/Research/MesserLab/other software/tskit/c/build
Build type: native build
Project name: tskit
Project version: 1.3.1
C compiler for the host machine: cc (clang 16.0.0 "Apple clang version 16.0.0 (clang-1600.0.26.6)")
C linker for the host machine: cc ld64 1115.7.3
C++ compiler for the host machine: c++ (clang 16.0.0 "Apple clang version 16.0.0 (clang-1600.0.26.6)")
C++ linker for the host machine: c++ ld64 1115.7.3
Host machine cpu family: aarch64
Host machine cpu: aarch64

Executing subproject kastore 

kastore| Project name: kastore
kastore| Project version: 2.1.2
kastore| C compiler for the host machine: cc (clang 16.0.0 "Apple clang version 16.0.0 (clang-1600.0.26.6)")
kastore| C linker for the host machine: cc ld64 1115.7.3
kastore| C++ compiler for the host machine: c++ (clang 16.0.0 "Apple clang version 16.0.0 (clang-1600.0.26.6)")
kastore| C++ linker for the host machine: c++ ld64 1115.7.3
kastore| Build targets in project: 1
kastore| Subproject kastore finished.

Library m found: YES
Found pkg-config: YES (/opt/local/bin/pkg-config) 0.29.2
Run-time dependency cunit found: YES 2.1-3
Run-time dependency threads found: YES
Build targets in project: 22

tskit 1.3.1

  Subprojects
    kastore: YES

Found ninja-1.13.2 at /opt/local/bin/ninja

So, great, I've got meson working, apparently! Next I read:

To setup a debug build add --buildtype=debug to the above command.

Oh, OK – I'd like to have a debug build. So I do this:

bhaller@glass % meson setup build --buildtype=debug
Directory already configured.

Just run your build command (e.g. ninja) and Meson will regenerate as necessary.
Run "meson setup --reconfigure" to force Meson to regenerate.

If build failures persist, run "meson setup --wipe" to rebuild from scratch
using the same options as passed when configuring the build.

Hmm. Sort of sounds ok ("Just run your build command (e.g. ninja) and Meson will regenerate as necessary"), but also sounds like an error ("Directory already configured", and the suggestion that I might want to run meson setup --reconfigure). No doubt I'll make it through this confusion :->, but the issue here is that it would be helpful for the doc to instead say "If you want a non-debug build, do XXXXX, or if you want a debug build, do YYYYY". Phrased in that way, you'd avoid sending the user down the path of making a non-debug build first, then trying (and failing?) to make a debug build because of the previous configuration.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions