Building XMMS2 plugin fails with
Brought to you by:
pfusik
When I run make asap-xmms2, it fails with
libxmms_asap.c:109:19: error: expected declaration specifiers or ‘...’ before string constant
and other errors:
xmms2/libxmms_asap.c:109:19: error: expected declaration specifiers or ‘...’ before string constant
109 | XMMS_XFORM_PLUGIN("asap",
| ^~~~~~
xmms2/libxmms_asap.c:110:9: error: expected declaration specifiers or ‘...’ before string constant
110 | "ASAP decoder", ASAPInfo_VERSION,
| ^~~~~~~~~~~~~~
In file included from xmms2/libxmms_asap.c:27:
./asap.h:150:26: error: expected declaration specifiers or ‘...’ before string constant
150 | #define ASAPInfo_VERSION "5.3.0"
| ^~~~~~~
xmms2/libxmms_asap.c:110:25: note: in expansion of macro ‘ASAPInfo_VERSION’
110 | "ASAP decoder", ASAPInfo_VERSION,
| ^~~~~~~~~~~~~~~~
xmms2/libxmms_asap.c:111:9: error: expected declaration specifiers or ‘...’ before string constant
111 | "Another Slight Atari Player decoder",
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
xmms2/libxmms_asap.c:112:9: error: expected declaration specifiers or ‘...’ before ‘xmms_asap_setup’
112 | xmms_asap_setup);
| ^~~~~~~~~~~~~~~
xmms2/libxmms_asap.c:93:17: warning: ‘xmms_asap_setup’ defined but not used [-Wunused-function]
93 | static gboolean xmms_asap_setup(xmms_xform_plugin_t *xform_plugin)
| ^~~~~~~~~~~~~~~
make: *** [xmms2/xmms2.mk:14: libxmms_asap.so] Error 1
Installed xmms2: 0.9.2 (including /usr/include/xmms2/xmms/-files).
GCC version: 13.1.1 20230429
Looks like a breaking change in
xmms2.Both my Ubuntu 22.04 and FC37 have xmms2 0.8 and I released asap-xmms2 this February.
I will accept a patch that fixes this without breaking the two mentioned OSes.
Yeah, it's a breaking change in xmms2-devel:
https://github.com/xmms2/xmms2-devel/commit/4e21ce68d6984e561e27eff2a7c9ad89afec0c97
Now, how do I use xmms2 so I can test it?
You mean version 0.9.x? I don't now other than either using a distribution which offers newer version (maybe in a chroot or virtual machine), compile yourself, or find a backport.
I have a Fedora 43 that includes xmms2 0.9.5.
"xmms2" is a command-line program. After I installed the plugin, I tried "xmms2 add Komar.mpt" and "xmms2 play". Are these the correct commands? There's no error message but I cannot hear anything.
Last edit: Piotr Fusik 2025-12-15
When I start
xmms2d, I get an error about the plugin:Full output of
xmms2d:Regards!
With this patch
the error message of
xmms2dgoes away. But I still don't know how to play a file?I actually cannot start
xmms2deither, it aborts for me. So I cannot test further, either.I actually just do this for "completeness" in packaging: Arch Linux AUR package "asap-chiptunes-player-git".
Just for reference:
My failure of starting
xmms2d:gdbbacktrace:Seems like something hickups on
/home/[username]/Music/Contact_Improvisation/flat/Japon_Gagaku/02_-_Bato.wma.mplayercan play it fine.I don't want to go into the rabbit hole debugging this (including understanding how to use XMMS2 to not read that file), so I cannot help further testing with XMMS2 more than reporting compile errors.
Regards!
I got XMMS2 playing under Fedora 43. The sound is "choking", also on MP3s, but that might be because I'm running it in VirtualBox.
I looked at ASAP's plugin source and realized it only supports *.SAP. :) I'll try to add the other formats.
I could only add the FC format.
The other formats start with FF FF bytes which makes them misdetected as MP3 by the "mad" plugin and after "mad" fails, ASAP is not given a chance.
How to use XMMS2:
Starting
xmms2dfirst is optional, but useful to see the logs.xmms2d -vgives more logs.For testing, use a *.FC file (from https://asap.sourceforge.net/examples.zip), as XMMS2's "gme" plugin provides a partial (inferior to ASAP) support for the SAP format.