Kjell Ahlstedt (32fd4ebe) at 18 Mar 13:11
3.24.4
Kjell Ahlstedt (f61bf41e) at 18 Mar 13:11
3.24.4
Kjell Ahlstedt (68ca8b55) at 18 Mar 11:41
4.10.1
Kjell Ahlstedt (fa880322) at 18 Mar 11:41
4.10.1
Kjell Ahlstedt (b8fc46f7) at 11 Dec 14:32
meson.build: Don't fail if warning_level=everything
Kjell Ahlstedt (3a4b0dc5) at 11 Dec 14:28
meson.build: Don't fail if warning_level=everything
I was thinking of making this use the new overload of measure()
I just added to gtkmm, but it's probably not worth requiring gtkmm 4.14 for the relatively small gain we'll get from that. However, this other tidying I found while testing that out does seem worth doing.
dummy_*_baseline
to point of use, renamed to ignore
.height_per_child
; just divide for_size
in-place.Orientation
.std::max()
, instead of reinventing it.Kjell Ahlstedt (1e846edb) at 09 Nov 13:38
Merge branch 'dboles/mycontainer-tidy-measure' into 'master'
... and 1 more commit
Please merge.
I was thinking of making this use the new overload of measure()
I just added to gtkmm, but it's probably not worth requiring gtkmm 4.14 for the relatively small gain we'll get from that. However, this other tidying I found while testing that out does seem worth doing.
dummy_*_baseline
to point of use, renamed to ignore
.height_per_child
; just divide for_size
in-place.Orientation
.std::max()
, instead of reinventing it.Daniel Boles (f7889b44) at 01 Nov 19:44
custom_container/mycontainer.cc: Tidy up measure()
Kjell Ahlstedt (c058fb1e) at 30 Oct 14:45
Add the PrintDialog section, show the PrintDialog example
Kjell Ahlstedt (9af89eec) at 26 Oct 07:31
Add printing/print_dialog example
Kjell Ahlstedt (6bbcfb8e) at 11 Oct 13:45
printing/advanced example: Don't use deprecated API
I'm attaching the generated PDF files here if someone needs them:
I'm on MX Linux 23 (Debian 12) with almost every dependency installed.
GTK 4.10 is not available for Debian Stable, only sid
.
I don't even know what xmllint does not support Relax NG schemas and DocBook V5.0.
means and I have tried searing in Google but I have found nothing.
What I really want is the PDF. Only the PDF. It is impossible to find it on the website and I have been rejected in StackOverflow about this topic
I'm desperate now.
datalot@mx:~/git-clones/gtkmm-documentation/build-dir
$ ninja
[0/1] Regenerating build files.
The Meson build system
Version: 1.0.1
Source dir: /home/datalot/git-clones/gtkmm-documentation
Build dir: /home/datalot/git-clones/gtkmm-documentation/build-dir
Build type: native build
Project name: gtkmm-documentation
Project version: 4.10.0
C compiler for the host machine: ccache cc (gcc 12.2.0 "cc (Debian 12.2.0-14) 12.2.0")
C linker for the host machine: cc ld.bfd 2.40
C++ compiler for the host machine: ccache c++ (gcc 12.2.0 "c++ (Debian 12.2.0-14) 12.2.0")
C++ linker for the host machine: c++ ld.bfd 2.40
Host machine cpu family: x86_64
Host machine cpu: x86_64
Program python3 found: YES 3.11.2 (/usr/bin/python3)
Found pkg-config: /usr/bin/pkg-config (1.8.1)
Dependency gtkmm-4.0 found: NO found 4.8.0 but need: '>= 4.10.0'
Found CMake: /usr/bin/cmake (3.25.1)
Run-time dependency gtkmm-4.0 found: NO (tried pkgconfig and cmake)
Dependency giomm-2.68 found: YES 2.74.0 (cached)
Compiler for C supports arguments -Wno-overlength-strings: YES (cached)
Program xsltproc found: YES (/usr/bin/xsltproc)
Program xmllint found: YES (/usr/bin/xmllint)
../docs/tutorial/meson.build:29: WARNING: Can't validate XML file.
xmllint does not support Relax NG schemas and DocBook V5.0.
DocBook V5.0 support may require docbook5-xml, docbook5-schemas or a similar package.
Program msgfmt found: YES (/usr/bin/msgfmt)
Program itstool found: YES (/usr/bin/itstool)
Program dblatex found: YES (/usr/bin/dblatex)
Message:
------
gtkmm-documentation 4.10.0
Build examples: false (requires gtkmm-4.0 >= 4.10.0 and giomm-2.68 >= 2.68.0)
Compiler warnings: min (warning_level: 1, werror: false)
XML validation: false (requires xmllint with Relax NG and DocBook V5.0 support)
Allow network access: false
Build translations: false
Build PDF: true
Directories:
prefix: /usr/local
datadir: /usr/local/share
tutorialdir: /usr/local/share/doc/gtkmm-4.0/tutorial
------
Build targets in project: 4
gtkmm-documentation 4.10.0
User defined options
allow-network-access: false
build-pdf : true
build-translations : false
Found ninja-1.11.1 at /usr/bin/ninja
[1/2] Generating docs/tutorial/html_index.html with a custom command
FAILED: docs/tutorial/html
/usr/bin/python3 /home/datalot/git-clones/gtkmm-documentation/tools/meson_aux/tutorial-custom-cmd.py html false docs/tutorial/index.docbook docs/tutorial/html
I/O error : Attempt to load network entity http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl
warning: failed to load external entity "http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl"
cannot parse http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl
[2/2] Generating docs/tutorial/C-pdf with a custom command
Build the book set list...
Build the listings...
XSLT stylesheets DocBook - LaTeX 2e (0.3.12)
===================================================
Stripping NS from DocBook 5/NG document.
Processing stripped document.
application: default template used in programlisting or screen
application: default template used in programlisting or screen
function: default template used in programlisting or screen
function: default template used in programlisting or screen
Build index.docbook.pdf
'programming-with-gtkmm.pdf' successfully built
ninja: build stopped: subcommand failed.
datalot@mx:~/git-clones/gtkmm-documentation/build-dir
$ ninja
[1/1] Generating docs/tutorial/html_index.html with a custom command
FAILED: docs/tutorial/html
/usr/bin/python3 /home/datalot/git-clones/gtkmm-documentation/tools/meson_aux/tutorial-custom-cmd.py html false docs/tutorial/index.docbook docs/tutorial/html
I/O error : Attempt to load network entity http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl
warning: failed to load external entity "http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl"
cannot parse http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl
ninja: build stopped: subcommand failed.
Oh, I just installed the libs you mention and it works like a charm on master... Also, I have noticed that I misunderstood the concept of "build examples", so thank you for all the insights!
Closing as solved.
datalot@mx:~/git-clones/gtkmm-documentation/build-dir
$ ninja
[2/12] Generating docs/tutorial/C-xmllint with a custom command
docs/tutorial/index.docbook validates
[9/12] Generating docs/tutorial/html_index.html with a custom command
Note: namesp. cut : stripped namespace before processing Programming with gtkmm 4
[12/12] Generating docs/tutorial/C-pdf with a custom command
Build the book set list...
Build the listings...
XSLT stylesheets DocBook - LaTeX 2e (0.3.12)
===================================================
Stripping NS from DocBook 5/NG document.
Processing stripped document.
application: default template used in programlisting or screen
application: default template used in programlisting or screen
function: default template used in programlisting or screen
function: default template used in programlisting or screen
Build index.docbook.pdf
'programming-with-gtkmm.pdf' successfully built
I would like if we could generate the 4.10 examples with warnings instead of just directly prohibiting them.
If they were generated, I didn't know. I checkout-ed the 4.0.3 tag and I get a completely different output. This time, I got a PDF file with examples, fortunately. The compiler made it noticeable, which I liked.
Below is the new output:
datalot@mx:~/git-clones/gtkmm-documentation/build-dir
$ ninja
[0/1] Regenerating build files.
The Meson build system
Version: 1.0.1
Source dir: /home/datalot/git-clones/gtkmm-documentation
Build dir: /home/datalot/git-clones/gtkmm-documentation/build-dir
Build type: native build
Project name: gtkmm-documentation
Project version: 4.0.3
C compiler for the host machine: ccache cc (gcc 12.2.0 "cc (Debian 12.2.0-14) 12.2.0")
C linker for the host machine: cc ld.bfd 2.40
C++ compiler for the host machine: ccache c++ (gcc 12.2.0 "c++ (Debian 12.2.0-14) 12.2.0")
C++ linker for the host machine: c++ ld.bfd 2.40
Host machine cpu family: x86_64
Host machine cpu: x86_64
Program python3 found: YES (/usr/bin/python3)
Dependency gtkmm-4.0 found: YES 4.8.0 (cached)
Dependency giomm-2.68 found: YES 2.74.0 (cached)
Compiler for C supports arguments -Wno-overlength-strings: YES (cached)
Program xsltproc found: YES (/usr/bin/xsltproc)
Program xmllint found: YES (/usr/bin/xmllint)
../docs/tutorial/meson.build:29: WARNING: Can't validate XML file.
xmllint does not support Relax NG schemas and DocBook V5.0.
DocBook V5.0 support may require docbook5-xml, docbook5-schemas or a similar package.
Program msgfmt found: YES (/usr/bin/msgfmt)
Program itstool found: YES (/usr/bin/itstool)
Program dblatex found: YES (/usr/bin/dblatex)
Checking for function "mkfifo" : YES (cached)
Program ninja found: YES (/usr/bin/ninja)
Program glib-compile-schemas found: YES (/usr/bin/glib-compile-schemas)
Found pkg-config: /usr/bin/pkg-config (1.8.1)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Dependency threads found: YES unknown (cached)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Message:
------
gtkmm-documentation 4.0.3
Build examples: false
Compiler warnings: min (warning_level: 1, werror: false)
XML validation: false (requires xmllint with Relax NG and DocBook V5.0 support)
Allow network access: true
Build translations: true
Build PDF: true
Directories:
prefix: /usr/local
datadir: /usr/local/share
tutorialdir: /usr/local/share/doc/gtkmm-4.0/tutorial
------
Build targets in project: 281
gtkmm-documentation 4.0.3
User defined options
build-pdf: true
Found ninja-1.11.1 at /usr/bin/ninja
[32/33] Generating docs/tutorial/html_index.html with a custom command
FAILED: docs/tutorial/html
/usr/bin/python3 /home/datalot/git-clones/gtkmm-documentation/tools/meson_aux/tutorial-custom-cmd.py html true docs/tutorial/index.docbook docs/tutorial/html
error : Unknown IO error
warning: failed to load external entity "http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl"
cannot parse http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl
[33/33] Generating docs/tutorial/C-pdf with a custom command
Build the book set list...
Build the listings...
XSLT stylesheets DocBook - LaTeX 2e (0.3.12)
===================================================
Stripping NS from DocBook 5/NG document.
Processing stripped document.
application: default template used in programlisting or screen
application: default template used in programlisting or screen
function: default template used in programlisting or screen
function: default template used in programlisting or screen
Build index.docbook.pdf
'programming-with-gtkmm.pdf' successfully built
ninja: build stopped: subcommand failed.
Html files, but not the PDF file, are stored at https://gnome.pages.gitlab.gnome.org/gtkmm-documentation. And PDF files are usually not included in tarballs.
From your ninja
output, it looks like you've got your PDF ('programming-with-gtkmm.pdf'
successfully built), but the generation of html files has failed.
Doesn't ninja keep the generated PDF when another command has failed?
You can try letting ninja accept a failure (ninja -k 2
).
The generation of html probably fails because you haven't installed the docbook5-xml and docbook-xsl packages, mentioned in the README.md file. (Those are the package names in Ubuntu. The names in Debian are probably the same or very similar.)