Package Base Details: tuxguitar

Git Clone URL: (read-only, click to copy)
Submitter: Barthalion
Maintainer: buzo
Last Packager: buzo
Votes: 47
Popularity: 1.18
First Submitted: 2018-01-05 17:06
Last Updated: 2021-05-10 16:53

Pinned Comments

buzo commented on 2020-06-07 11:11

The easiest way to solve build failures is by building in a clean chroot. Else make sure with archlinux-java status that you are not using an old Java version. To use the latest Java varsion, run archlinux-java set java-14-openjdk.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 Next › Last »

ljrk commented on 2019-03-18 17:50

The latest git-version of tuxguitar has a patch to enable linking with fluidsync 2.x:

Meanwhile, either pull tuxguitar from git or integrate the patch into your build.

mardiros commented on 2019-03-11 20:57

To get it working, I've install fluidsynth-git and force the v1.1.11 before installing tuxguitar.

by updating of fluidsynth-git to:



pkgver() {
  cd ${pkgname%-*}
  git checkout f65c6ba
  _major=$(grep -o "FLUIDSYNTH_VERSION_MAJOR.*" CMakeLists.txt | grep -o "[0-9]*")
  _minor=$(grep -o "FLUIDSYNTH_VERSION_MINOR.*" CMakeLists.txt | grep -o "[0-9]*")
  _micro=$(grep -o "FLUIDSYNTH_VERSION_MICRO.*" CMakeLists.txt | grep -o "[0-9]*")
  _rev=$(git rev-list --count HEAD)
  _hash=$(git rev-parse --short HEAD)
  printf "$_major.$_minor.$_micro.r%s.%s" "$_rev" "$_hash"


dvzrv commented on 2019-02-20 10:35

@Metallion: fluidsynth > 2.0.0 introduced an API change, that needs to be implemented in tuxguitar. Please file a bug report upstream.

Metallion commented on 2019-02-20 04:38

Until yesterday Tuxguitar worked just fine but today it started giving me an error about not finding There's a popup dialog with the following message.

/usr/share/tuxguitar/lib/ Cannot open shared object file: No such file or directory.

I have the latest fluidsynth installed so I had a look at the contents.

> pacman -Ql fluidsynth | grep so
fluidsynth /usr/lib/
fluidsynth /usr/lib/
fluidsynth /usr/lib/

It looks like I have a file but no file.

Recompiling Tuxguitar from AUR also failed.

[INFO] -------< org.herac.tuxguitar:tuxguitar-fluidsynth-linux-x86_64 >--------
[INFO] Building tuxguitar-fluidsynth-linux-x86_64 1.5.2                   [2/2]
[INFO] --------------------------------[ pom ]---------------------------------
[INFO] --- maven-antrun-plugin:1.7:run (compile-native) @ tuxguitar-fluidsynth-linux-x86_64 ---
[INFO] Executing tasks

     [exec] gcc -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -I/usr/lib/jvm/java-8-openjdk/include -I/usr/lib/jvm/java-8-openjdk/include/linux -m64 -fPIC -c -o org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.o org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c
     [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c: In function ‘Java_org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth_getStringProperty’:
     [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:259:4: warning: implicit declaration of function ‘fluid_settings_getstr’; did you mean ‘fluid_settings_setstr’? [-Wimplicit-function-declaration]
     [exec]     fluid_settings_getstr(handle->settings,(char *)jkey, &value );
     [exec]     ^~~~~~~~~~~~~~~~~~~~~
     [exec]     fluid_settings_setstr
     [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c: In function ‘Java_org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth_getDoublePropertyDefault’:
     [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:277:19: error: too few arguments to function ‘fluid_settings_getnum_default’
     [exec]     double value = fluid_settings_getnum_default(handle->settings,(char *)jkey);
     [exec]                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     [exec] In file included from /usr/include/fluidsynth.h:96,
     [exec]                  from org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:4:
     [exec] /usr/include/fluidsynth/settings.h:135:5: note: declared here
     [exec]  int fluid_settings_getnum_default(fluid_settings_t *settings, const char *name, double *val);
     [exec]      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c: In function ‘Java_org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth_getIntegerPropertyDefault’:
     [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:294:16: error: too few arguments to function ‘fluid_settings_getint_default’
     [exec]     int value = fluid_settings_getint_default(handle->settings,(char *)jkey);
     [exec]                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     [exec] In file included from /usr/include/fluidsynth.h:96,
     [exec]                  from org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:4:
     [exec] /usr/include/fluidsynth/settings.h:148:5: note: declared here
     [exec]  int fluid_settings_getint_default(fluid_settings_t *settings, const char *name, int *val);
     [exec]      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c: In function ‘Java_org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth_getStringPropertyDefault’:
     [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:311:18: error: too few arguments to function ‘fluid_settings_getstr_default’
     [exec]     char *value = fluid_settings_getstr_default(handle->settings,(char *)jkey);
     [exec]                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     [exec] In file included from /usr/include/fluidsynth.h:96,
     [exec]                  from org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:4:
     [exec] /usr/include/fluidsynth/settings.h:123:5: note: declared here
     [exec]  int fluid_settings_getstr_default(fluid_settings_t *settings, const char *name, char **def);
     [exec]      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c: In function ‘Java_org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth_getPropertyOptions’:
     [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:376:71: warning: passing argument 4 of ‘fluid_settings_foreach_option’ from incompatible pointer type [-Wincompatible-pointer-types]
     [exec]    fluid_settings_foreach_option(handle->settings, (char *)jkey, data, fluid_settings_foreach_option_callback );
     [exec]                                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     [exec] In file included from /usr/include/fluidsynth.h:96,
     [exec]                  from org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:4:
     [exec] /usr/include/fluidsynth/settings.h:165:68: note: expected ‘fluid_settings_foreach_option_t’ {aka ‘void (*)(void *, const char *, const char *)’} but argument is of type ‘void (*)(void *, char *, char *)’
     [exec]                                     fluid_settings_foreach_option_t func);
     [exec]                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
     [exec] make: *** [GNUmakefile:14: org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.o] Error 1
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for tuxguitar-fluidsynth-linux-x86_64 1.5.2:
[INFO] tuxguitar-fluidsynth ............................... SUCCESS [  2.118 s]
[INFO] tuxguitar-fluidsynth-linux-x86_64 .................. FAILURE [  0.876 s]
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  3.207 s
[INFO] Finished at: 2019-02-20T13:16:05+09:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.7:run (compile-native) on project tuxguitar-fluidsynth-linux-x86_64: An Ant BuildException has occured: exec returned: 2
[ERROR] around Ant part ...<exec failonerror="true" dir="../../..//TuxGuitar-fluidsynth/jni/" executable="make">... @ 4:88 in /tmp/yaourt-tmp-metallion/aur-tuxguitar/src/tuxguitar-1.5.2-src/build-scripts/native-modules/tuxguitar-fluidsynth-linux-x86_64/target/antrun/build-compile-native.xml
[ERROR] -> [Help 1]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <goals> -rf :tuxguitar-fluidsynth-linux-x86_64

Downgrading fluidsynth to version 1.1.11 has solved all problems but of course it would be preferable to use the latest version. Is that something that could be solved with the PKGBUILD or do we just need to wait for the Tuxguitar devs to support version 2.0.x?

ThanosApostolou commented on 2019-02-11 10:27

@ottoshmidt I cannot reproduce, what command or aur helper are you using?

ottoshmidt commented on 2019-02-11 09:56

==> Finished making: tuxguitar 1.5.2-2 (Mon 11 Feb 2019 01:50:13 PM +04) loading packages... error: 'tuxguitar-common-1.5.2-2-x86_64.pkg.tar.xz': duplicate target error: 'tuxguitar-gtk2-1.5.2-2-x86_64.pkg.tar.xz': duplicate target


ThanosApostolou commented on 2018-12-18 21:41

@IwfY Sorry I cannot reproduce. On my system it builds fine with only jdk8-opendjk installed.

Btw, I forgot to leave a comment. This package now uses gtk3 by default (SWT_GTK3=1 enabled). There is the alternative tuxguitar-gtk2 which launches the program with SWT_GTK3=0. Both depend on tuxguitar-common and all of them are built from the same PKGBUILD.

IwfY commented on 2018-12-18 13:25

Isn't java-environment >= 10 a requirement? For me the build process generated gcc commands (for plugins I guess) with "-I/usr/lib/jvm/java-10-openjdk/include". Those of course failed until I installed OpenJDK 10.

ThanosApostolou commented on 2018-12-13 15:08

I've created a package which launches tuxguitar with SWT_GTK3=1 and depends on your package ( Of course many users want to completely avoid the gtk2 dependency nowadays. Would you be interested to include those files in your PKBGUILD and split the package to something like tuxguitar-common, tuxguitar-gtk2 (with gtk2 dependency and the original launchers) and tuxguitar-gtk3 (with gtk3 dependency and *-gtk3 launchers I've created)?

I've tested it with SWT_GTK3=1 and tuxguitar can work properly without the gtk2 installed at all. By doing this we make available both choices without creating redundant packages.

ThanosApostolou commented on 2018-12-13 14:46

It seems to me that this is using gtk2 like the original tuxguitar package, since the /usr/share/tuxguitar/ exports SWT_GKT3=0. I've created which adds a launcher for SWT_GKT3=1, without the need to duplicate the whole package. Of course you cannot avoid the gtk2 dependency like this, but maybe I'll contact the original tuxguitar maintainer in order add the needed files and split the package to tuxguitar-common, tuxguitar-gtk2 and tuxguitar-gtk3 or something.