Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fails to build #144

Open
guiodic opened this issue Jan 28, 2025 · 5 comments
Open

Fails to build #144

guiodic opened this issue Jan 28, 2025 · 5 comments

Comments

@guiodic
Copy link

guiodic commented Jan 28, 2025

+ exec meson setup --prefix /usr --libexecdir lib --sbindir bin --buildtype plain --auto-features enabled --wrap-mode nodownload -D b_pie=true -D python.bytecompile=1 --prefix /usr builddir resynthesizer
The Meson build system
Version: 1.7.0
Source dir: /home/guido/tmp/gimp3-plugin-resynthesizer-git/src/resynthesizer
Build dir: /home/guido/tmp/gimp3-plugin-resynthesizer-git/src/builddir
Build type: native build
Project name: resynthesizer
Project version: 3.0.0
C compiler for the host machine: ccache cc (gcc 14.2.1 "cc (GCC) 14.2.1 20240910")
C linker for the host machine: cc ld.bfd 2.43.1
Host machine cpu family: x86_64
Host machine cpu: x86_64
Configuring resynth-config.h using configuration
Library m found: YES
Found pkg-config: YES (/usr/bin/pkg-config) 2.3.0
Run-time dependency glib-2.0 found: YES 2.82.4
Run-time dependency gimp-3.0 found: YES 3.0.0-RC2+git
Program msgfmt found: YES (/usr/bin/msgfmt)
Program msginit found: YES (/usr/bin/msginit)
Program msgmerge found: YES (/usr/bin/msgmerge)
Program xgettext found: YES (/usr/bin/xgettext)
resynthesizer/po/meson.build:43: WARNING: Failed to generate .mo files.

resynthesizer/po/meson.build:74:4: ERROR: File /home/guido/tmp/gimp3-plugin-resynthesizer-git/src/builddir/po/es/LC_MESSAGES/resynthesizer3.mo does not exist.

A full log can be found at /home/guido/tmp/gimp3-plugin-resynthesizer-git/src/builddir/meson-logs/meson-log.txt

meson-log.txt attached

meson-log.txt

@bootchk
Copy link
Owner

bootchk commented Jan 28, 2025

Thanks. Yes, I just committed a fix. Please let me know if it is NOT a fix.

Sorry about that, I suppose I did not build from scratch before the prior commit, and it was a bad commit.
I don't intend to commit when the build is broken.

From now on, every commit should build and some plugins work (Heal Selection and a few others.)
However, there is still work in progress and some plugins have not been ported yet.

@guiodic
Copy link
Author

guiodic commented Jan 28, 2025

maybe you hardcoded some paths?

ninja: Entering directory `/run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/src/builddir'
ninja: no work to do.
Installing enginePlugin/resynthesizer to /run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/pkg/gimp3-plugin-resynthesizer-git/usr/lib/gimp/3.0/plug-ins/resynthesizer
Installing po/es.mo to /run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/pkg/gimp3-plugin-resynthesizer-git/usr/lib/gimp/3.0/plug-ins/resynthesizer3/locale/es/LC_MESSAGES
Installing po/fr.mo to /run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/pkg/gimp3-plugin-resynthesizer-git/usr/lib/gimp/3.0/plug-ins/resynthesizer3/locale/fr/LC_MESSAGES
Installing po/ru.mo to /run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/pkg/gimp3-plugin-resynthesizer-git/usr/lib/gimp/3.0/plug-ins/resynthesizer3/locale/ru/LC_MESSAGES
Installing po/pt_BR.mo to /run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/pkg/gimp3-plugin-resynthesizer-git/usr/lib/gimp/3.0/plug-ins/resynthesizer3/locale/pt_BR/LC_MESSAGES
Installing /run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/src/resynthesizer/outerPlugins/plugin-heal-selection.scm to /run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/pkg/gimp3-plugin-resynthesizer-git/usr/lib/gimp/3.0/plug-ins/plugin-heal-selection
Installing /run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/src/resynthesizer/outerPlugins/plugin-heal-transparency.scm to /run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/pkg/gimp3-plugin-resynthesizer-git/usr/lib/gimp/3.0/plug-ins/plugin-heal-transparency
Installing /run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/src/resynthesizer/outerPlugins/plugin-resynth-controls.scm to /run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/pkg/gimp3-plugin-resynthesizer-git/usr/lib/gimp/3.0/plug-ins/plugin-resynth-controls
Installing /run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/src/resynthesizer/test/testResynth.py to /run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/pkg/gimp3-plugin-resynthesizer-git/usr/lib/gimp/3.0/plug-ins/testResynth
Running custom install script '/usr/bin/sh -c mkdir -p "/usr/lib/gimp/3.0/plug-ins/plugin-heal-selection/locale/es/LC_MESSAGES" && cp -f "/run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/src/builddir/po/es.mo" "/usr/lib/gimp/3.0/plug-ins/plugin-heal-selection/locale/es/LC_MESSAGES/plugin-heal-selection.mo"'
mkdir: impossibile creare la directory «/usr/lib/gimp/3.0/plug-ins/plugin-heal-selection/locale»: Permesso negato
FAILED: install script '/usr/bin/sh -c mkdir -p "/usr/lib/gimp/3.0/plug-ins/plugin-heal-selection/locale/es/LC_MESSAGES" && cp -f "/run/media/guido/nvme1/linux/gimp3-plugin-resynthesizer-git/src/builddir/po/es.mo" "/usr/lib/gimp/3.0/plug-ins/plugin-heal-selection/locale/es/LC_MESSAGES/plugin-heal-selection.mo"' failed with exit code 1.
==> ERRORE: Si è verificato un errore in package().
    L'operazione sta per essere interrotta..

@bootchk
Copy link
Owner

bootchk commented Jan 28, 2025

I did not intend to. Meson is hard, a meson script should not know where the build, source, and install directory is.

The relevant file is po/meson.build.
It intends to make a directory in the install file at foo/plug-ins/plugin-heal-selection/locale
where foo is the install directory.
The meson.build thinks /usr/lib/gimp is the install directory,
but earlier things were installed to /run/media...

I will look into, but probably no tonight.

Ciao

@bootchk
Copy link
Owner

bootchk commented Jan 29, 2025

If it is urgent, a workaround is to hack the meson.build not to build the po dir.

I am thinking about making the build of that dir a meson option.

Meanwhile, I am modifying ScriptFu so that a script can call (script-fu-register-i18n "resynthesizer3" "relative path")
so that all the resynthesizer plugins can share one .mo file and the meson.build does not need to copy it into many places.

@guiodic
Copy link
Author

guiodic commented Jan 29, 2025

Not urgent! Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants