Package Details: fsthost 1.6.2-2

Git Clone URL: https://aur.archlinux.org/fsthost.git (read-only)
Package Base: fsthost
Description: A linux VST host using winelib
Upstream URL: http://sourceforge.net/projects/fsthost/
Licenses: GPL
Submitter: xxj
Maintainer: xxj
Last Packager: xxj
Votes: 1
Popularity: 0.166884
First Submitted: 2016-04-09 09:38
Last Updated: 2016-05-31 12:44

Latest Comments

Joermungand commented on 2016-04-29 08:11

Great, it both builds and runs flawlessly. Thanks!

xxj commented on 2016-04-29 07:28

@Joermungand - thanks for all research and sugestions. I've made some fixes, please check if it build now correctly.

Joermungand commented on 2016-04-25 09:53

I investigated the matter further and came up with the following:

1. the Makefile makes assumptions on library locations which are not true on an Arch system: /usr/lib/i386-linux-gnu and /usr/lib/x86_64-linux-gnu do not exist in Arch; they are /usr/lib32 and /usr/lib respectively.

2. Wine’s complaint about not finding the fsthost .so’s is caused by the fsthost32 and fsthost64 scripts’ failing to find their actual location. When all else fails, they look for them in $PATH, but /usr/lib and /usr/lib32 are not in $PATH.

3. The Makefile installs the .so’s to their respective wine lib directories, while the PKGBUILD installs them to /usr/lib and /usr/lib32.

Under the circumstances, I suggest the following:

1. Inserting the following lines just before the make command in the build() function:

sed -i 's/lib\/i386-linux-gnu/lib32/' Makefile
sed -i 's/lib\/x86_64-linux-gnu/lib/' Makefile

This will adapt all references to the library directories to the file structure in Arch.

2. Removing the two lines that redefine the install locations in the package() function:

LIB32_INST_PATH=/usr/lib$_arch \
LIB64_INST_PATH=/usr/lib \

In this way, the .so’s get installed in their respective wine directories, while the export WINEPATH line in the scripts points to the appropriate location and Wine will be able to find them even though the scripts themselves fail (as a matter of fact, I don’t think the search part is needed any longer if $WINEPATH is correct).

Joermungand commented on 2016-04-24 14:02

Strangely enough, it only works if I manually copy fsthost’s .so libraries to windows/system32 and windows/syswow64, respectively, in the wine 32/64-bit prefixes. Otherwise Wine complains about not finding them. Getting massive xruns in 32-bit wine, but there’s nothing new about that.

Joermungand commented on 2016-04-24 12:37

Thanks for the reply. I’ve had to add

export PKG_CONFIG_PATH=/usr/lib32/pkgconfig

before the make command for it to build (which is strange, since this is not the first time I’m compiling a package against multilib libraries). Now it builds, but it won’t work. I’ll have to dig deeper into it.

xxj commented on 2016-04-24 01:35

Seems that this is problem with your glib:
https://github.com/i-rinat/apulse/issues/37

For some reason, I can't reproduce either in arch and manjaro.

Joermungand commented on 2016-04-16 10:29

Am I the only one who gets an error trying to compile?
In file included from /usr/lib/glib-2.0/include/glibconfig.h:9:0,
from /usr/include/glib-2.0/glib/gtypes.h:32,
from /usr/include/glib-2.0/glib/galloca.h:32,
from /usr/include/glib-2.0/glib.h:30,
from fsthost.c:31:
/usr/include/glib-2.0/glib/gtypes.h: In function ‘_GLIB_CHECKED_ADD_U64’:
/usr/include/glib-2.0/glib/gmacros.h:217:53: error: size of array ‘_GStaticAssertCompileTimeAssertion_0’ is negative
#define G_STATIC_ASSERT(expr) typedef char G_PASTE (_GStaticAssertCompileTimeAssertion_, __COUNTER__)[(expr) ? 1 : -1] G_GNUC_UNUSED
^
/usr/include/glib-2.0/glib/gmacros.h:214:47: note: in definition of macro ‘G_PASTE_ARGS’
#define G_PASTE_ARGS(identifier1,identifier2) identifier1 ## identifier2
^
/usr/include/glib-2.0/glib/gmacros.h:217:44: note: in expansion of macro ‘G_PASTE’
#define G_STATIC_ASSERT(expr) typedef char G_PASTE (_GStaticAssertCompileTimeAssertion_, __COUNTER__)[(expr) ? 1 : -1] G_GNUC_UNUSED
^
/usr/include/glib-2.0/glib/gtypes.h:422:3: note: in expansion of macro ‘G_STATIC_ASSERT’
G_STATIC_ASSERT(sizeof (unsigned long long) == sizeof (guint64));
^
Makefile:129: recipe for target 'fsthost_32.o' failed
make: *** [fsthost_32.o] Error 1