You are not logged in.
Hi, I use i3 and wanted to install fsv3 using yay. https://aur.archlinux.org/packages/fsv3
I already tryed reinstalling the dependencies.
However I get the following error message:
meson.build:3:0: ERROR: Value "." (of type "string") for option "buildtype" is not one of the choices. Possible choices are (as string): "plain", "debug", "debugoptimized", "release", "minsize", "custom".
A full log can be found at /home/tim/.cache/yay/fsv3/src/fsv-fsv-3.0/builddir/meson-logs/meson-log.txt
==> ERROR: An error occurred in build().
Aborting...
-> Error building: fsv3-exit status 4
-> The following packages could not be installed. Manual intervention is required:
fsv3 – Exit status 4
The full Log from /home/tim/.cache/yay/fsv3/src/fsv-fsv-3.0/builddir/meson-logs/meson-log.txt:
Build started at 2024-12-10T20:14:18.225124
Main binary: /usr/bin/python
Build Options: -Dbuildtype= '-Dc_args=-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions
-Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security
-fstack-clash-protection -fcf-protection
-fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -ffile-prefix-map=/home/tim/.cache/yay/fsv3/src=/usr/src/debug/fsv3
-flto=auto -Wno-maybe-uninitialized' -Ddefault_library=both -Dprefix=/usr
Python system: Linux
The Meson build system
Version: 1.6.0
Source dir: /home/tim/.cache/yay/fsv3/src/fsv-fsv-3.0
Build dir: /home/tim/.cache/yay/fsv3/src/fsv-fsv-3.0/builddir
Build type: native build
meson.build:3:0: ERROR: Value "." (of type "string") for option "buildtype" is not one of the choices.
Possible choices are (as string): "plain", "debug", "debugoptimized", "release", "minsize", "custom".
Does someone has an idea and can help?
Last edited by ToedlichesAuge (2024-12-11 15:23:12)
Offline
Mod note: moving to AUR Issues.
Sakura:-
Mobo: MSI MAG X570S TORPEDO MAX // Processor: AMD Ryzen 9 5950X @4.9GHz // GFX: AMD Radeon RX 5700 XT // RAM: 32GB (4x 8GB) Corsair DDR4 (@ 3000MHz) // Storage: 1x 3TB HDD, 6x 1TB SSD, 2x 120GB SSD, 1x 275GB M2 SSD
Making lemonade from lemons since 2015.
Offline
The PKGBUILD tries to be too clever and fails to set Dbuildtype correctly. Just set that to plain instead of calling the bad function, and point the maintainer to the meson packaging guidelines in the wiki.
Online
The PKGBUILD tries to be too clever and fails to set Dbuildtype correctly. Just set that to plain instead of calling the bad function, and point the maintainer to the meson packaging guidelines in the wiki.
Thanks, could you please tell me how to do that.
I was there:
https://wiki.archlinux.org/title/Meson_ … guidelines
But unfortunately I didn't really understand it.
Offline
Did you try replacing the existing `meson setup` call with:
meson setup --prefix=/usr --buildtype=plain . builddir
Offline
Did you try replacing the existing `meson setup` call with:
meson setup --prefix=/usr --buildtype=plain . builddir
No, I tryed it now.
I guess I have to execute it in the console, right?
When I do this I get the following error warning:
Neither Source directory '.' nor build directory 'builddir' contain a build file meson.build.
Offline
I mean, we're talking about a PKGBUILD here. Have you read it?
Online
I mean, we're talking about a PKGBUILD here. Have you read it?
Oh, sorry, I misunderstood you,
Now I have read it.
Thats its content:
Maintainer: Fredrick R. Brennan <copypaste@kittens.ph>
_pkgname=fsv
pkgname=fsv3
pkgver=3.0
pkgrel=2
pkgdesc="A 3D file system explorer (GTK3 port)"
arch=('x86_64')
url="https://github.com/jabl/fsv"
license=('LGPL2.1')
depends=(cglm gtk3 glu libepoxy gdk-pixbuf2 zlib glibc gettext glib2)
makedepends=(meson ninja)
provides=(fsv2)
conflicts=(fsv2)
replaces=(fsv2 fsv)
source=("$_pkgname-$pkgver-$pkgrel.tar.gz::$url/archive/refs/tags/$_pkgname-$pkgver.tar.gz"
disable_assertions.patch
disable_ogl_abort.patch
non-fatal-assertions.h)
b2sums=('44d6f202b50581b193e15c2a9252e6a2db6b579f0fd2716d48f5d1de256443a5fcb366e27d8f4f31dc7fabb0ffd71868908e5950a66c7b8bed3f87dc6a85c99b'
'6d826eb41536fc95811c9ccf48d4f6dc1a65995992ac39bc9f9e48bb2bd088ce14a1db0fd44d74bb5148b6cb66b41948b5f2b4f0abeb99932cd2bf6dfb97c59f'
'415071f6f8cf6afd01fd01fcf122474ae2ffbf35d2cf4bf40aabe8742c0ef711e320a7a1fda64e94c0891e5e9e38ee25c75b44e3f075fbe9447f8b0ea6598f0e'
'710db356167d187b85e6ae71aa20c83fd5c83946130912bba6a691f0b4dbe3c82a69147346f868f4844b363a9728ca4c21e4fbc6ae638b64ebfa296c06e9b037')
function _check_debug() {
. /etc/makepkg.conf
for option in "${OPTIONS[@]}"; do
if [[ $option == "debug" ]]; then
echo "debugoptimized"
return
elif [[ $option == "!debug" ]]; then
echo "release"
return
fi
done
echo "release"
return
}
prepare() {
cd "$srcdir/$_pkgname-$_pkgname-$pkgver"
patch -p1 src/common.h ../disable_assertions.patch
patch -p1 src/ogl.c ../disable_ogl_abort.patch
cp ../non-fatal-assertions.h src
[ ! -f po/LINGUAS ] && touch po/LINGUAS || true
}
build() {
cd "$srcdir/$_pkgname-$_pkgname-$pkgver"
RECONFIGURE=$([ -d builddir ] && cat <<< --reconfigure || true)
export CFLAGS="$CFLAGS -Wno-maybe-uninitialized"
meson setup $RECONFIGURE -Dbuildtype=`_check_debug` -Dc_args="$CFLAGS" -Ddefault_library=both -Dprefix=/usr builddir
cd builddir
ninja
}
package() {
cd "$srcdir/$_pkgname-$_pkgname-$pkgver"
cd builddir
install -Dm755 src/fsv "$pkgdir/usr/bin/fsv"
ln -s fsv "$pkgdir/usr/bin/fsv3"
cd ..
mkdir -p "$pkgdir/usr/share/doc/fsv3/"
cp -v doc/* "$pkgdir/usr/share/doc/fsv3/"
mkdir -p "$pkgdir/usr/share/licenses/fsv3/"
cp -v LICENSE.md "$pkgdir/usr/share/licenses/fsv3/LICENSE"
cp -v AUTHORS "$pkgdir/usr/share/licenses/fsv3/AUTHORS"
cp -v TODO "$pkgdir/usr/share/doc/fsv3/"
cp -v NOTES "$pkgdir/usr/share/doc/fsv3/"
cp -v README.md "$pkgdir/usr/share/doc/fsv3/"
mkdir -p "$pkgdir/usr/share/fsv3/"
cp -v fsv.wmconfig "$pkgdir/usr/share/fsv3/"
}
And now I have to change
meson setup $RECONFIGURE -Dbuildtype=`_check_debug` -Dc_args="$CFLAGS" -Ddefault_library=both -Dprefix=/usr builddir
with
meson setup --prefix=/usr --buildtype=plain . builddir
right?
Last edited by ToedlichesAuge (2024-12-11 09:03:28)
Offline
And now I have to change
meson setup $RECONFIGURE -Dbuildtype=`_check_debug` -Dc_args="$CFLAGS" -Ddefault_library=both -Dprefix=/usr builddir
with
meson setup --prefix=/usr --buildtype=plain . builddir
right?
Yes.
Edit:
This minimal change allows the package to build. It leaves behind an unused functions and multiple unused variables. There are are other changes that could be made to follow the meson package guidelines.
Last edited by loqs (2024-12-11 13:20:43)
Offline
It worked. Thank you all.
Offline