You are not logged in.
Pages: 1
I don't have an AUR registration. Maybe the maintainer will see this. Or someone else has figured it out already.
https://aur.archlinux.org/packages/rox
Rox-filer does not compile.
~/cpp/rox/src/rox-filer-2.11/ROX-Filer/src/dnd.c: In function ‘uri_list_to_utf8’:
/usr/include/glib-2.0/glib/gstring.h:76:5: warning: ignoring return value of ‘g_string_free_and_steal’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
72 | (__builtin_constant_p (free_segment) ? \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | ((free_segment) ? \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
74 | (g_string_free) ((str), (free_segment)) : \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
75 | g_string_free_and_steal (str)) \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
76 | : \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
77 | (g_string_free) ((str), (free_segment)))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~/cpp/rox/src/rox-filer-2.11/ROX-Filer/src/dnd.c:372:9: note: in expansion of macro ‘g_string_free’
372 | g_string_free(new, FALSE);
| ^~~~~~~~~~~~~
make: *** [<builtin>: dnd.o] Error 1
Compile failed
Press Return...An old package of rox, /var/cache/pacman/pkg/rox-2.11-6-x86_64.pkg.tar.zst, that I have been keeping going, will run with extra/libxml2-legacy installed. For anyone else that has an old version in your pacman cache.
This is the PKGBUILD I used, from the failed AUR compile
pkgname=rox
pkgver=2.11
pkgrel=7
pkgdesc="A small and fast file manager which can optionally manage the desktop background and panels"
arch=('x86_64')
license=('GPL')
url="http://rox.sourceforge.net/desktop/"
depends=('sh' 'libsm' 'gtk2')
makedepends=('librsvg' 'python')
source=("https://downloads.sourceforge.net/${pkgname}/rox-filer-${pkgver}.tar.bz2"
'rox.desktop' 'rox.svg' 'rox.sh')
sha256sums=('a929bd32ee18ef7a2ed48b971574574592c42e34ae09f36604bf663d7c101ba8'
'183ba9abb8ab84e36b59287977a79e45b5530c8026b3f0b8d3f6ff3f3e311320'
'6d48e937bec9027aacc9e2828467161ed1488c1e8587eb37a5681d3852b824ea'
'5b2f007e304220551cfecdca28333f5421ecfb3f084c4b44bd0cb2321dc51c40')
prepare() {
cd "$srcdir/rox-filer-$pkgver"
# python3 compatibility
sed -i 's/print \("Extracting translatable bits from Options.xml..."\)/print(\1)/' ROX-Filer/src/po/tips.py
sed -i 's/if attrs.has_key(x)/x in attrs/' ROX-Filer/src/po/tips.py
sed -i 's/get_gtk_builder(/get_gtk_builder((gchar**)/' ROX-Filer/src/log.c
sed -i 's/dialog = \(gtk_builder_get_object.*\);/dialog = GTK_WIDGET(\1);/' ROX-Filer/src/log.c
}
build() {
cd "$srcdir/rox-filer-$pkgver"
./ROX-Filer/AppRun --compile CFLAGS="$CFLAGS -fcommon" LIBS="-ldl -lm"
# finally we render a png as fallback for svg unaware menu applications
# Attention: always make sure you check the dimensions of the source-svg,
# you can read the dimensions via inkscape's export function
rsvg-convert -w 125 -h 100 -f png -o "$srcdir/rox.png" "$srcdir/rox.svg"
}
package() {
cd "$srcdir/rox-filer-$pkgver"
install -d "$pkgdir/usr/share/Choices/MIME-types"
install -m755 Choices/MIME-types/* "$pkgdir/usr/share/Choices/MIME-types/"
cp -rp ROX-Filer "$pkgdir/usr/share/"
rm -fr "$pkgdir"/usr/share/ROX-Filer/{src,build}
install -Dm755 "$srcdir/rox.sh" "$pkgdir/usr/bin/rox"
install -Dm644 rox.1 "$pkgdir/usr/share/man/man1/rox.1"
ln -sf rox.1 "$pkgdir/usr/share/man/man1/ROX-Filer.1"
install -Dm644 "$srcdir/rox.desktop" "$pkgdir/usr/share/applications/rox.desktop"
install -Dm644 "$srcdir/rox.svg" "$pkgdir/usr/share/pixmaps/rox.svg"
install -Dm644 "$srcdir/rox.png" "$pkgdir/usr/share/pixmaps/rox.png"
}Offline
The error was earlier in the build than the end shown in your output snippet:
/build/rox/src/rox-filer-2.11/ROX-Filer/src/icon.c:145:39: error: initialization of ‘void (*)(void)’ from incompatible pointer type ‘void (*)(void *, guint, GtkWidget *)’ {aka ‘void (*)(void *, unsigned int, struct _GtkWidget *)’} [-Wincompatible-pointer-types]
145 | {N_("Remove Item(s)"), NULL, remove_items, 0, "<StockItem>", GTK_STOCK_REMOVE},
| ^~~~~~~~~~~~
/build/rox/src/rox-filer-2.11/ROX-Filer/src/icon.c:145:39: note: (near initialization for ‘menu_def[14].callback’)
/build/rox/src/rox-filer-2.11/ROX-Filer/src/icon.c:104:13: note: ‘remove_items’ declared here
104 | static void remove_items(gpointer data, guint action, GtkWidget *widget);
| ^~~~~~~~~~~~Quickest work around is to add `-Wno-error=incompatible-pointer-types` to CFLAGS on line 32:
./ROX-Filer/AppRun --compile CFLAGS="$CFLAGS -fcommon -Wno-error=incompatible-pointer-types" LIBS="-ldl -lm"Offline
Edit: moot and apparently irrelevant.
Last edited by seth (2025-07-14 16:14:32)
Offline
Yup, that compiles with:
./ROX-Filer/AppRun --compile CFLAGS="$CFLAGS -fcommon -Wno-error=incompatible-pointer-types" LIBS="-ldl -lm"Thank you.
https://0x0.st/8kNG.png
Offline
Pages: 1