Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NW.js above version 0.38.4 not starting on Ubuntu 18.04.1; needs libatomic? #7213

Closed
NbrTDB opened this issue Nov 14, 2019 · 4 comments
Closed

Comments

@NbrTDB
Copy link

NbrTDB commented Nov 14, 2019

======== TEMPLATE BUG FORM ========

NWJS Version : 0.42.4 SDK (latest at time of writing)
Operating System : Ubuntu Mate 18.04.1

Expected behavior

On attempting to launch NW.js, I'd expect it to load and operate just like older versions up to 0.38.4 (the last version that seemed to work without issue).

Actual behavior

Versions after 0.38.4 seem to hang on initialisation with:

[2120:2120:1114/095336.479476:ERROR:sandbox_linux.cc(371)] InitializeSandbox() called with multiple threads in process gpu-process.
[2143:2143:1114/095336.586075:FATAL:nw_content_renderer_hooks.cc(53)] Failed to load node library (error: libatomic.so.1: cannot open shared object file: No such file or directory)
#0 0x7fb710051629

It doesn't crash; it just sits there until you CTRL+C out.

Libatomic is not installed on the system; if I install it with sudo apt-get install libatomic1, these NW.js versions will open as expected.

So in theory, I can get it running OK. However I'm used to NW.js not having any external dependencies (that can't be found by default on a vanilla Debian system like Ubuntu, at least); is this no longer the case?

Does this new external dependency on libatomic affect licensing/distribution obligations in any way? Is it just for SDK variants past 0.38.4 (I have yet to investigate non-SDK builds past 0.35.4).

Additionally, I am trying to autostart the process (I have a .deb installer through which NW.js is installed and intended to run after boot). Needless to say it doesn't come up, but nor does it seem to exit, in which case, any attempts to launch it see the following via terminal:

Opening in existing browser session

How to reproduce

  • Fresh install of Ubuntu 18.04.1
  • Download NW.js SDK build 0.42.4 and extract it
  • In the extracted folder, create a barebones index.html and package.json containing just the "name" and "main" tags
  • ./nw . in the terminal; in my tests, this causes the aforementioned explosion about libatomic
@rogerwang
Copy link
Member

libatomic1 is required by Node.js in recent versions.

@NbrTDB
Copy link
Author

NbrTDB commented Nov 14, 2019

I see, thanks for the explanation! After having a look I've found a related ticket on the Node.js issue tracker: nodejs/node#29718

Also, possibly, where the decision may have been made to link it: nodejs/node#28231

I guess I shall close this then, if it's out of scope for this project.

@t-mish
Copy link

t-mish commented Dec 17, 2020

libatomic1 is required by Node.js in recent versions.

If so, why is it still not distributed with nwjs? It seems that is a core lib which doesn't depend on application's domain.

@LostBeard
Copy link

LostBeard commented Sep 5, 2021

Also found this issue after trying to deploy our NW.js app to various Ubuntu distros.

Fixed the issue on Ubuntu distros by installing libatomic1 via apt.

Is it possible to distribute libatmlic1 with an NW.js app or does it have to be installed using apt or other package manager?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants