50ButtonsEach/fliclib-linux-dist

x86-64 version built with gcc 5.1

kokotchY opened this issue · 7 comments

Hello,

I'm currently running Gentoo x86-64 and I was not able to start the deamon because of the following error:

./daemon: /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by ./daemon)

./daemon: /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./daemon)

According to the gcc page [1], CXXABI_1.3.9 and GLIBCXX_3.4.21 are avaible wit gcc 5.1.
Is there any reason why the fliclib is built with such a recent version of gcc? (nearly one year, I know ^^)

It seems that, at the time, it is not planned to release gcc 5.1 on gentoo (but the version 5.3 is available for some reason).

Thanks,

[1] https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html

I think you that if you manage to get 5.3 running you should be good to go. Right now I'm building on the latest Ubuntu release (and the latest Raspbian for RPI), but I might downgrade this if more people have this issue.

Thank you, with gcc 5.3, I can start the daemon and I don't need to configure my system to use it since it can find the correct library.
I cannot connect a flic yet, but it is probably for another reason (Bluetooth LE not present in my kernel, currently building a more recent one).

Should we keep the issue open for other people to comment on it?

Yes for now. I'm still working on how to make this as compatible as possible so any input is appreciated. When you get around to building bluez, check if you need to apply these patches http://thread.gmane.org/gmane.linux.bluez.kernel/66537

Without the patches, it seems that it was already working (I have already bluez-5.37).
With the patches, it seems that it is also working.

When a press the flic, I go the following output from ./flic:

Button up (up/down):
Button click (click/hold):
Button single click (single/double):
Button single click (single/double/hold):

So it seems to get all event at once.

The event types are a bit tricky to understand and should be covered in the Readme. Basically there are 5 event types, down, up, click, double click and hold. However one might not be interested in double click events and would thus want two click events when the button is double-clicked. To accommodate for this, we have different scopes which is why you are seeing multiple events at once, one for each scope.

Ok I don't know if it is a proper place to ask but I have quite similar problem...

./daemon: relocation error: ./daemon: symbol _ZTTNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEE, version GLIBCXX_3.4.21 not defined in file libstdc++.so.6 with link time reference

My gcc/g++ version is 4.8.5. System Mint 17.3 'Rosa' 64 bit.

Any idea? :(

You need to upgrade your libc/libstdc++. I suggest a fresh install with Raspbian Jessie