Compiling dia for windows suggestions

-1

Currently it seems like an undoable project. I tried to compile the dia diagramming software from Gnome. I use Windows and the version I am able to get an installer for looks pretty outdated on Windows as far as graphics (look and feel?) are concerned. Unfortunately, for building with nmake from Visual Studio, there are a bunch of .msc files missing in order to be able to follow the compilation tutorial on https://dia-installer.de. The thing is: on Ubuntu (tried it on a VM), dia looks great, but on Windows it's just pixelated.

Furthermore I tried meson build system. But there are just too many Linux dependencies (libraries), where it's always difficult to find the binaries for windows.

I tried with MSYS as well, but I don't want it to use up disk space. It didn't work any way. I couldn't find the binaries after I installed some mingw-package. I didn't know where they go after being installed, so...

Any advice on how to compile it? Is it really such a huge thing, or am I just missing a huge step? I tried for several days on my own, but it gives me almost depression (not ment in a sarcastic way, I feel kinda sad and out of energy from all those compile error messages).

Edit

I did some things that let me proceed further but not yet to the end: I went with MSYS2 and built on MinGW64, as it is recommended by the BUILDING.md file. I downloaded the dependencies there, which was of benefit, because I didn't have to write my own pkg-config files, which always turned out to be incorrect. I just downloaded the dependencies necessary, not the optional ones.

Now I'm at the stage where I built the .exe with ninja, it just doesn't do anything, it simply returns the error 0xc000007b. I'm wondering if it needs the optional dependencies as well. I'm not quite sure.

Here is the log, when I run meson build in mingw64.

The Meson build system
Version: 0.54.1
Source dir: C:/msys64/home/fabio_n4clj3p/dia
Build dir: C:/msys64/home/fabio_n4clj3p/dia/build
Build type: native build
Using 'PKG_CONFIG_PATH' from environment with value: 'C:\\msys64\\mingw64\\lib\\pkgconfig;C:\\msys64\\mingw64\\share\\pkgconfig'
Using 'PKG_CONFIG_PATH' from environment with value: 'C:\\msys64\\mingw64\\lib\\pkgconfig;C:\\msys64\\mingw64\\share\\pkgconfig'
Project name: dia
Project version: 0.97.3
C compiler for the host machine: cc (gcc 9.3.0 "cc (Rev2, Built by MSYS2 project) 9.3.0")
C linker for the host machine: cc ld.bfd 2.34
C++ compiler for the host machine: c++ (gcc 9.3.0 "c++ (Rev2, Built by MSYS2 project) 9.3.0")
C++ linker for the host machine: c++ ld.bfd 2.34
Host machine cpu family: x86_64
Host machine cpu: x86_64
Found pkg-config: C:\msys64\mingw64\bin/pkg-config.EXE (0.29.2)
Using 'PKG_CONFIG_PATH' from environment with value: 'C:\\msys64\\mingw64\\lib\\pkgconfig;C:\\msys64\\mingw64\\share\\pkgconfig'
Run-time dependency glib-2.0 found: YES 2.64.2
Using 'PKG_CONFIG_PATH' from environment with value: 'C:\\msys64\\mingw64\\lib\\pkgconfig;C:\\msys64\\mingw64\\share\\pkgconfig'
Run-time dependency gtk+-2.0 found: YES 2.24.32
Using 'PKG_CONFIG_PATH' from environment with value: 'C:\\msys64\\mingw64\\lib\\pkgconfig;C:\\msys64\\mingw64\\share\\pkgconfig'
Run-time dependency libxml-2.0 found: YES 2.9.10
Using 'PKG_CONFIG_PATH' from environment with value: 'C:\\msys64\\mingw64\\lib\\pkgconfig;C:\\msys64\\mingw64\\share\\pkgconfig'
Run-time dependency gmodule-2.0 found: YES 2.64.2
Using 'PKG_CONFIG_PATH' from environment with value: 'C:\\msys64\\mingw64\\lib\\pkgconfig;C:\\msys64\\mingw64\\share\\pkgconfig'
Run-time dependency zlib found: YES 1.2.11
Using 'PKG_CONFIG_PATH' from environment with value: 'C:\\msys64\\mingw64\\lib\\pkgconfig;C:\\msys64\\mingw64\\share\\pkgconfig'
Run-time dependency cairo found: YES 1.16.0
Library m found: YES
Library c found: NO
Using 'PKG_CONFIG_PATH' from environment with value: 'C:\\msys64\\mingw64\\lib\\pkgconfig;C:\\msys64\\mingw64\\share\\pkgconfig'
Run-time dependency poppler found: YES 0.87.0
Library emf found: NO
Library ogdf found: NO
Did not find CMake 'cmake'
Found CMake: NO
Run-time dependency libxslt found: NO (tried pkgconfig and cmake)
Using 'PKG_CONFIG_PATH' from environment with value: 'C:\\msys64\\mingw64\\lib\\pkgconfig;C:\\msys64\\mingw64\\share\\pkgconfig'
Run-time dependency gdk-2.0 found: YES 2.24.32
Has header "stddef.h" : YES
Has header "fcntl.h" : YES
Has header "unistd.h" : YES
Has header "utime.h" : YES
Checking for function "select" : NO
Checking for function "strcspn" : YES
Checking for function "strdup" : YES
Checking for function "strtol" : YES
Configuring config.h.in using configuration
Compiler for C supports arguments -Wdeclaration-after-statement: YES
Compiler for C supports arguments -Werror=format-security -Werror=format=2: YES
Compiler for C supports arguments -Werror=missing-declarations: YES
Compiler for C supports arguments -Wformat-nonliteral: YES
Compiler for C supports arguments -Wformat-security: YES
Compiler for C supports arguments -Winit-self: YES
Compiler for C supports arguments -Wmaybe-uninitialized: YES
Compiler for C supports arguments -Wno-strict-aliasing -Wstrict-aliasing: YES
Compiler for C supports arguments -Wno-unused-parameter -Wunused-parameter: YES
Compiler for C supports arguments -Wold-style-definition: YES
Compiler for C supports arguments -Wshadow: YES
Compiler for C supports arguments -Wswitch-default: YES
Compiler for C supports arguments -Wswitch-enum: YES
Compiler for C supports arguments -Wunused-function: YES
Found pkg-config: C:\msys64\mingw64\bin/pkg-config.EXE (0.29.2)
Using 'PKG_CONFIG_PATH' from environment with value: 'C:\\msys64\\mingw64\\lib\\pkgconfig;C:\\msys64\\mingw64\\share\\pkgconfig'
Program pkg-config found: YES (C:\msys64\mingw64\bin/pkg-config.EXE)
Program desktop-file-validate found: NO
Program appstream-util found: NO
Library winspool found: YES
Program python2 found: YES (C:\msys64\mingw64\bin/python2.EXE)
Dependency python found: YES (pkgconfig)
Message: cairo_filter
Message: cgm_filter
Message: drs_filter
Message: dxf_filter
Message: hpgl_filter
Message: shape_filter
Message: pixbuf_filter
Message: metapost_filter
Message: pdf_filter
Message: pgf_filter
Message: postscript_filter
Message: pstricks_filter
Message: stress_filter
Message: svg_filter
Message: vdx_filter
Message: wpg_filter
Message: xfig_filter
Program dblatex found: NO
Program xsltproc found: YES (C:\msys64\usr\bin/xsltproc.EXE)
Program generate_run_with_dia_env.sh found: YES (sh C:/msys64/home/fabio_n4clj3p/dia/generate_run_with_dia_env.sh)
Program build-aux/post-install.py found: YES (C:/msys64/mingw64/bin/python.exe C:/msys64/home/fabio_n4clj3p/dia/build-aux/post-install.py)
Build targets in project: 115

Found ninja.EXE-1.10.0 at C:\msys64\mingw64\bin/ninja.EXE

Edit 2

I now managed to do it!!!

I had to very strictly follow the rules by BUILDING.md. I had to define the -Dprefix to be /home/fabio/dia/build/install

The result is rather amusing: It just looks the same as with the installer from 2011! I think I then have to live with it or start developing on my own ;)

windows
compilation
gnome
asked on Stack Overflow Apr 26, 2020 by F. Leuthold • edited May 17, 2020 by F. Leuthold

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0