An on “Priming mindrecrder” stage I have next warning:
This part is missing libraries that cannot be satisfied with any available stage-packages known to snapcraft:
- libjsoncpp.so.25
These dependencies can be satisfied via additional parts or content sharing. Consider validating configured filesets if this dependency was built.
What do I do wrong? The library was added in stage-packages (libjsoncpp1 and libjsoncpp-dev).
The library is probably newer than what the base provides. The easiest way to satisfy the dependency would be to use core22, or if you need to stay in core18 you can rebuild the required version of the library in a different part.
Launching instance... | (9.8s) Traceback (most recent call last):
File "/snap/snapcraft/8619/bin/snapcraft", line 8, in <module>
sys.exit(run())
File "/snap/snapcraft/8619/lib/python3.8/site-packages/snapcraft/cli.py", line 228, in run
_run_dispatcher(dispatcher)
File "/snap/snapcraft/8619/lib/python3.8/site-packages/snapcraft/cli.py", line 204, in _run_dispatcher
dispatcher.run()
File "/snap/snapcraft/8619/lib/python3.8/site-packages/craft_cli/dispatcher.py", line 448, in run
return self._loaded_command.run(self._parsed_command_args)
File "/snap/snapcraft/8619/lib/python3.8/site-packages/snapcraft/commands/lifecycle.py", line 259, in run
super().run(parsed_args)
File "/snap/snapcraft/8619/lib/python3.8/site-packages/snapcraft/commands/lifecycle.py", line 132, in run
parts_lifecycle.run(self.name, parsed_args)
File "/snap/snapcraft/8619/lib/python3.8/site-packages/snapcraft/parts/lifecycle.py", line 208, in run
_run_command(
File "/snap/snapcraft/8619/lib/python3.8/site-packages/snapcraft/parts/lifecycle.py", line 249, in _run_command
_run_in_provider(project, command_name, parsed_args)
File "/snap/snapcraft/8619/lib/python3.8/site-packages/snapcraft/parts/lifecycle.py", line 530, in _run_in_provider
with provider.launched_environment(
File "/snap/snapcraft/8619/usr/lib/python3.8/contextlib.py", line 113, in __enter__
return next(self.gen)
File "/snap/snapcraft/8619/lib/python3.8/site-packages/craft_providers/lxd/lxd_provider.py", line 126, in launched_environment
instance = launch(
File "/snap/snapcraft/8619/lib/python3.8/site-packages/craft_providers/lxd/launcher.py", line 212, in launch
base_configuration.setup(executor=instance)
File "/snap/snapcraft/8619/lib/python3.8/site-packages/craft_providers/bases/buildd.py", line 337, in setup
self._ensure_os_compatible(executor=executor, deadline=deadline)
File "/snap/snapcraft/8619/lib/python3.8/site-packages/craft_providers/bases/buildd.py", line 273, in _ensure_os_compatible
raise BaseCompatibilityError(
craft_providers.bases.errors.BaseCompatibilityError: Incompatible base detected: Expected OS 'Ubuntu', found None.
Clean incompatible instance and retry the requested operation.
Interesting… All is ok when I run the application from snap folder. But when I try to run the application from another folder I get error about unsatisfied library. I have no idea how it works
switching to a core22 base means your build will be using the 22.04 repositories.
in 22.04 the package is named libjsoncpp25. change the name and re-build your snap and it should be found (you might have to do that for other libs as well, packages with versioning in their name tend to get bumped to higher numbers in newer releases)
you should also re-enable the extension but rename it to just be: extensions: [ gnome ] to get all the desktop integration back.
But when I tried to build snap archive got next message:
Launching instance…
Executed: pull gnome/sdk
‘override-pull’ in part ‘mindrecorder’ failed with code 1.
Review the scriptlet and make sure it’s correct.
Failed to execute pack in instance.
Full execution log: ‘/home/roman/.cache/snapcraft/log/snapcraft-20230209-113626.663526.log’