[SOLVED] "libgcc_s.so.1 must be installed"

Hello, I am building my first snap and I am encountering some problems.
My application uses Unity, C ++ and Python, the last 2 are used to create a shared library that is used by Unity. When I try to close the application the following message is shown

libgcc_s.so.1 must be installed for pthread_cancel to work

and the application does not close.
I tried using “find /snap/newplayer/x1/ -name libgcc_s.so*” and got this result:

/snap/newplayer/x1/lib/x86_64-linux-gnu/libgcc_s.so.1
/snap/newplayer/x1/usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so
/snap/newplayer/x1/usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1

I’m using google translator because I’m not native to the English language.

It’s possible that confinement is preventing your app from closing sub processes. You could try adding the process-control plug and connecting it to see if that fixes it. Should it do so then we need to work out a way of achieving the same result without the interface connected because process-control is rightly restricted. Alternatively if you can pose a convincing argument to the store guys in a post in the store-requests category on this forum you might be able to claim automatic connection of the interface when your app is installed from the store.

If the problem doesn’t go away when you add and connect process-control then we need to look elsewhere. You might be able to get some insight into whether this is a confinement blocking your app by installing snappy-debug and running:

snappy-debug.security scanlog

in one terminal while you run your app in another terminal to reproduce the issue. If confinement is blocking any actions they will appear in the output from snappy-debug along with potential interfaces that might be applicable.

Hello. I tried to follow your suggestions and here are the results:

You could try adding the process control

The problem continued.

Using ‘snappy-debug.security scanlog’:

Some plugs have been suggested (pulseaudio, hardware-observe and account-control). I made the connection with everyone and none of them solved the problem. In addition, an exception occurred during the scanlog.

Traceback (most recent call last):
File “/snap/snappy-debug/383/bin/snappy-security-scanlog”, line 1195, in
sys.exit(main())
File “/snap/snappy-debug/383/bin/snappy-security-scanlog”, line 1183, in main
from_end=opt.only_new, exclude=opt.exclude)
File “/snap/snappy-debug/383/bin/snappy-security-scanlog”, line 209, in init
self.scan_log(logs, snap_name, follow, from_end)
File “/snap/snappy-debug/383/bin/snappy-security-scanlog”, line 377, in scan_log
_scan_line(line, snap_name)
File “/snap/snappy-debug/383/bin/snappy-security-scanlog”, line 315, in _scan_line
self._print_entry(entry)
File “/snap/snappy-debug/383/bin/snappy-security-scanlog”, line 261, in _print_entry
sys.stdout.write("%s\n" % out)
UnicodeEncodeError: ‘ascii’ codec can’t encode character ‘\xc1’ in position 301: ordinal not in range(128)

Can you post your snapcraft.yaml or a link to your repo? I’m wondering if there is something more basic happening that’s causing your problem.

Hello. Sorry for the delay.
I spent these last few days trying to find a solution and apparently I did it. The solution I found was to put a desktop-launch. For now I only tested on Ubuntu 16.04. I will still test on Ubuntu 18.04, but I believe the solution should work as well. Thanks for trying to help me, @jsseidel @lucyllewy.

1 Like