Code Monkey home page Code Monkey logo

nw.js-armv7-binaries's People

Contributors

leonardlaszlo avatar mauritslamers avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nw.js-armv7-binaries's Issues

GPU Error v0.17.5

Could you give me a direction to why the GPU fails to init:

Xlib:  extension "RANDR" missing on display ":1.0".
Xlib:  extension "XInputExtension" missing on display ":1.0".
Xlib:  extension "RANDR" missing on display ":1.0".
Xlib:  extension "XInputExtension" missing on display ":1.0".
[24508:24508:1114/194755:ERROR:gl_surface_glx.cc(381)] glxQueryVersion failed
[24508:24508:1114/194755:ERROR:gl_initializer_x11.cc(20)] GLSurfaceGLX::InitializeOneOff failed.
[24508:24508:1114/194755:ERROR:gpu_child_thread.cc(390)] Exiting GPU process due to errors during initialization
Xlib:  extension "XInputExtension" missing on display ":1.0".
Xlib:  extension "XInputExtension" missing on display ":1.0".
[24483:24501:1114/194758:ERROR:browser_gpu_channel_host_factory.cc(119)] Failed to launch GPU process.
[24483:24501:1114/194758:ERROR:browser_gpu_channel_host_factory.cc(119)] Failed to launch GPU process.

Invalid cross-device link while using automatic build

Build host is ubuntu 20.04 amd64, obviously with docker installed.

Checked out branch in the container is --nw48-- and the desired branch is --nw49--
Checking out nw49 branch
Checkout branch: nw49
Cloning into '/usr/docker/nwjs/src/content/nw'...
remote: Enumerating objects: 2013, done.
remote: Counting objects: 100% (2013/2013), done.
remote: Compressing objects: 100% (1641/1641), done.
remote: Total 2013 (delta 369), reused 1388 (delta 240), pack-reused 0
Receiving objects: 100% (2013/2013), 59.08 MiB | 29.10 MiB/s, done.
Resolving deltas: 100% (369/369), done.
Checking out files: 100% (1812/1812), done.
Cloning into '/usr/docker/nwjs/src/third_party/node-nw'...
remote: Enumerating objects: 29077, done.
remote: Counting objects: 100% (29077/29077), done.
remote: Compressing objects: 100% (23982/23982), done.
remote: Total 29077 (delta 7093), reused 12086 (delta 4195), pack-reused 0
Receiving objects: 100% (29077/29077), 70.15 MiB | 8.29 MiB/s, done.
Resolving deltas: 100% (7093/7093), done.
Checking out files: 100% (29523/29523), done.
Cloning into '/usr/docker/nwjs/src/v8'...
remote: Enumerating objects: 12813, done.
remote: Counting objects: 100% (12813/12813), done.
remote: Compressing objects: 100% (9595/9595), done.
remote: Total 12813 (delta 4309), reused 6234 (delta 3013), pack-reused 0
Receiving objects: 100% (12813/12813), 27.46 MiB | 6.93 MiB/s, done.
Resolving deltas: 100% (4309/4309), done.
[P87 20:47:45.467 fs.go:449 W] fs: failed to rename directory "/usr/docker/depot_tools/.cipd_bin/.cipd/pkgs/6/GJZUS6J7KEX1biMDc2u_hWyYk8IUvcyUqsfS773LKgUC" - rename /usr/docker/depot_tools/.cipd_bin/.cipd/pkgs/6/GJZUS6J7KEX1biMDc2u_hWyYk8IUvcyUqsfS773LKgUC /usr/docker/depot_tools/.cipd_bin/.cipd/pkgs/6/XZZ2p6FeF8ne: invalid cross-device link

Building NW.js v0.41.x fails with the following error:

ninja: Entering directory `out/nw'
[213/47471] ACTION //content/nw/src/api:generated_api_types_schema_generator(//build/toolchain/linux:clang_arm)
nw.MenuItem must have a namespace-level comment. This will appear on the API summary page.
[227/47470] ACTION //content/nw/src/api:nw_api_bundle_generator_schema(//build/toolchain/linux:clang_arm)
nw.MenuItem must have a namespace-level comment. This will appear on the API summary page.
[230/47470] ACTION //content/nw/src/api:nw_api_registration_bundle_generator_registration(//build/toolchain/linux:clang_arm)
nw.MenuItem must have a namespace-level comment. This will appear on the API summary page.
[319/47470] ACTION //third_party/openscreen/src/osp/msgs:cddl_gen(//build/toolchain/linux:clang_arm)
FAILED: gen/third_party/openscreen/src/osp/msgs/osp_messages.h gen/third_party/openscreen/src/osp/msgs/osp_messages.cc 
python ../../third_party/openscreen/src/tools/cddl/cddl.py --header third_party/openscreen/src/osp/msgs/osp_messages.h --cc third_party/openscreen/src/osp/msgs/osp_messages.cc --gen-dir gen --log third_party/openscreen/src/osp/msgs/cddl.log ../../third_party/openscreen/src/osp/msgs/osp_messages.cddl
		ERROR: Command failed with error code: '255'!
[323/47470] CC obj/third_party/angle/third_party/vulkan-loader/libvulkan/loader.o
ninja: build stopped: subcommand failed.

@llamasoft do you happen to know what does this error message mean?

libgmodule-2.0.so.0 missing

Keep getting this error:
./nw: error while loading shared libraries: libgmodule-2.0.so.0: cannot open shared object file: No such file or directory

The package libglib2.0-0 is installed.

docker: Error response from daemon: error creating overlay mount to /home/sangfor/source/.docker/overlay2/1f59d9ec9bfb4fb8193fa683c3d3907d17d28f4d63f2619b970dde6acd5404bd-init/merged: no such file or directory.

The build log is as follows:
2021-04-25 14:52:32 TODO install curl, python, docker if needed
2021-04-25 14:52:32 Start parsing parameters
2021-04-25 14:52:32 Set positional arguments in their place
2021-04-25 14:52:32 Done parsing parameters
2021-04-25 14:52:32 Get the active branch from the official repo
2021-04-25 14:52:33 NW.js active branch: nw53
2021-04-25 14:52:33 Docker repository: laslaul/nwjs-arm-build-env
2021-04-25 14:52:33 Docker parameters: -H unix:///var/run/docker.sock
2021-04-25 14:52:33 Check whether the image exists on the docker host
2021-04-25 14:52:33 Found image with id: 135a87b8853f locally
2021-04-25 14:52:33 Start a container from the laslaul/nwjs-arm-build-env image
2021-04-25 14:52:33 docker -H unix:///var/run/docker.sock run --detach --tty laslaul/nwjs-arm-build-env
docker: Error response from daemon: error creating overlay mount to /home/sangfor/source/.docker/overlay2/1f59d9ec9bfb4fb8193fa683c3d3907d17d28f4d63f2619b970dde6acd5404bd-init/merged: no such file or directory.
See 'docker run --help'.

How to solve this problem?

NW.js ARMv7 v0.27.6 non-SDK build seems to contain devtools

Hi there! Thanks very much for creating these builds, they're very useful!

One thing I noticed though, was on the aforementioned build (NW.js ARMv7 v0.27.6) while it does lack SDK elements like nwjc, devtools seems to be included?

I was under the impression that the standard flavour of NWJS did not include devtools, is this not the case or is it a configuration issue with this build?

I don't believe it is world-ending or anything since it's possible to disable devtools via the manifest file, just thought it ought to be mentioned (if, indeed, it's unintentional).

Many thanks for your time!

Add non-SDK builds to releases

Hi Leonard. Thanks for all your work! For certain installations we'd like ARM builds that don't have the SDK in them.

Signal 11 Fault

When installing and attempting to run on Pi400, Ubuntu 21.04, executing
./nw --use-gl=egl --ignore-gpu-blacklist --disable-accelerated-2d-canvas --num-raster-threads=2 results in;

Failed to generate minidump.Received signal 11 SEGV_MAPERR 00005efa259e
[end of stack trace]
Calling _exit(1). Core file will not be generated.

Not sure where to troubleshoot from here.

[Question] OpenMAX support for HW accelerated video playback

Hi there.

I´m trying to use NW-ARM (Chrome Branding) on a Raspberry B+ and, most parts, it works like a charm.

The only issue I´m facing is when I try to play H.256 encoded videos using a regular "

The very same video plays smoothly using omxplayer, so I´m guessing the embedded ffmpeg library does not support OpenMAX and/or somehow is not detecting the required libraries.

What can I do in order to enable OpenMAX video playback with NWJS ?

TIA,

Automatic build fails with "invalid cross-device link" error

Running the automatic build under OS X 10.14.6 results in an error

$ ./automatic-build.sh 
2021-11-29 16:51:08 TODO install curl, python, docker if needed
2021-11-29 16:51:08 Start parsing parameters
2021-11-29 16:51:08 Set positional arguments in their place
2021-11-29 16:51:08 Done parsing parameters
2021-11-29 16:51:09 Get the active branch from the official repo
2021-11-29 16:51:09 NW.js active branch: nw59
2021-11-29 16:51:09 Docker repository: laslaul/nwjs-arm-build-env
2021-11-29 16:51:09 Docker parameters: -H unix:///var/run/docker.sock
2021-11-29 16:51:09 Check whether the image exists on the docker host
2021-11-29 16:51:09 Found image with id: 135a87b8853f locally
2021-11-29 16:51:09 Start a container from the laslaul/nwjs-arm-build-env image
2021-11-29 16:51:13 Container created successfully. Id: 19c5139efa58289616f59f6f211037e650518b86645d374c19660c6bcaea719e
2021-11-29 16:51:13 Start building nw59_2021-11-29.tar.gz
2021-11-29 16:51:13 Updating branch nw59
Checkout branch: nw59

[0:01:00] Still working on:
[0:01:00]   src

[0:01:10] Still working on:
[0:01:10]   src

[0:01:20] Still working on:
[0:01:20]   src

[0:01:30] Still working on:
[0:01:30]   src

[0:01:40] Still working on:
[0:01:40]   src

[0:01:50] Still working on:
[0:01:50]   src

[0:02:00] Still working on:
[0:02:00]   src

[0:02:10] Still working on:
[0:02:10]   src

[0:02:20] Still working on:
[0:02:20]   src

[0:02:30] Still working on:
[0:02:30]   src

[0:02:40] Still working on:
[0:02:40]   src

[0:02:50] Still working on:
[0:02:50]   src

[0:03:00] Still working on:
[0:03:00]   src

[0:03:10] Still working on:
[0:03:10]   src

[0:03:20] Still working on:
[0:03:20]   src

[0:03:30] Still working on:
[0:03:30]   src

[0:03:40] Still working on:
[0:03:40]   src

[0:03:50] Still working on:
[0:03:50]   src

[0:04:00] Still working on:
[0:04:00]   src

[0:04:10] Still working on:
[0:04:10]   src

[0:04:20] Still working on:
[0:04:20]   src

[0:04:30] Still working on:
[0:04:30]   src

[0:04:40] Still working on:
[0:04:40]   src

[0:04:50] Still working on:
[0:04:50]   src

[0:05:00] Still working on:
[0:05:00]   src

[0:05:10] Still working on:
[0:05:10]   src

[0:05:20] Still working on:
[0:05:20]   src

[0:05:30] Still working on:
[0:05:30]   src

[0:05:40] Still working on:
[0:05:40]   src

[0:05:50] Still working on:
[0:05:50]   src

[0:06:00] Still working on:
[0:06:00]   src

[0:06:10] Still working on:
[0:06:10]   src

[0:06:20] Still working on:
[0:06:20]   src

[0:06:30] Still working on:
[0:06:30]   src

[0:06:40] Still working on:
[0:06:40]   src

[0:06:50] Still working on:
[0:06:50]   src

[0:07:00] Still working on:
[0:07:00]   src

[0:07:10] Still working on:
[0:07:10]   src

[0:07:20] Still working on:
[0:07:20]   src

[0:07:30] Still working on:
[0:07:30]   src

[0:07:40] Still working on:
[0:07:40]   src

[0:07:50] Still working on:
[0:07:50]   src

[0:08:00] Still working on:
[0:08:00]   src

[0:08:10] Still working on:
[0:08:10]   src

[0:08:20] Still working on:
[0:08:20]   src

[0:08:30] Still working on:
[0:08:30]   src

[0:08:40] Still working on:
[0:08:40]   src

[0:08:50] Still working on:
[0:08:50]   src

[0:09:00] Still working on:
[0:09:00]   src

[0:09:10] Still working on:
[0:09:10]   src

[0:09:20] Still working on:
[0:09:20]   src

[0:09:30] Still working on:
[0:09:30]   src

[0:09:40] Still working on:
[0:09:40]   src

[0:09:50] Still working on:
[0:09:50]   src

[0:10:00] Still working on:
[0:10:00]   src

[0:10:10] Still working on:
[0:10:10]   src

[0:10:20] Still working on:
[0:10:20]   src

[0:10:30] Still working on:
[0:10:30]   src

[0:10:40] Still working on:
[0:10:40]   src

[0:10:50] Still working on:
[0:10:50]   src

[0:11:00] Still working on:
[0:11:00]   src

[0:11:10] Still working on:
[0:11:10]   src

[0:11:20] Still working on:
[0:11:20]   src

[0:11:30] Still working on:
[0:11:30]   src

[0:11:40] Still working on:
[0:11:40]   src

[0:11:50] Still working on:
[0:11:50]   src

[0:12:00] Still working on:
[0:12:00]   src

[0:12:10] Still working on:
[0:12:10]   src

[0:12:20] Still working on:
[0:12:20]   src

[0:12:30] Still working on:
[0:12:30]   src

[0:12:40] Still working on:
[0:12:40]   src

[0:12:50] Still working on:
[0:12:50]   src

[0:13:00] Still working on:
[0:13:00]   src

[0:13:10] Still working on:
[0:13:10]   src

[0:13:20] Still working on:
[0:13:20]   src

[0:13:30] Still working on:
[0:13:30]   src

[0:13:40] Still working on:
[0:13:40]   src

[0:13:50] Still working on:
[0:13:50]   src

[0:14:00] Still working on:
[0:14:00]   src

[0:14:10] Still working on:
[0:14:10]   src

[0:14:20] Still working on:
[0:14:20]   src

[0:14:30] Still working on:
[0:14:30]   src

[0:14:40] Still working on:
[0:14:40]   src

[0:14:50] Still working on:
[0:14:50]   src

[0:15:00] Still working on:
[0:15:00]   src

[0:15:10] Still working on:
[0:15:10]   src

[0:15:20] Still working on:
[0:15:20]   src

[0:15:30] Still working on:
[0:15:30]   src

[0:15:40] Still working on:
[0:15:40]   src

[0:15:50] Still working on:
[0:15:50]   src

[0:16:00] Still working on:
[0:16:00]   src

[0:16:10] Still working on:
[0:16:10]   src

[0:16:20] Still working on:
[0:16:20]   src

[0:16:30] Still working on:
[0:16:30]   src
1>Syncing projects:   0% ( 0/ 2) 
[0:16:34] Still working on:
[0:16:34]   src
Syncing projects:  92% (127/137) src/third_party/dawn/third_party/tint                                                              
[0:25:48] Still working on:
[0:25:48]   src/third_party/devtools-frontend/src
[0:25:48]   src/third_party/sqlite/src
[0:25:48]   src/third_party/tflite/src
[0:25:48]   src/third_party/wayland-protocols/gtk
[0:25:48]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:25:48]   src/third_party/vulkan-deps/glslang/src
[0:25:48]   src/third_party/vulkan-deps/vulkan-headers/src
[0:25:48]   src/third_party/vulkan-deps/vulkan-loader/src

[0:25:55] Still working on:
[0:25:55]   src/third_party/devtools-frontend/src
[0:25:55]   src/third_party/sqlite/src
[0:25:55]   src/third_party/tflite/src
[0:25:55]   src/third_party/wayland-protocols/gtk
[0:25:55]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:25:55]   src/third_party/vulkan-deps/glslang/src
[0:25:55]   src/third_party/vulkan-deps/vulkan-headers/src
[0:25:55]   src/third_party/vulkan-deps/vulkan-loader/src
Syncing projects:  95% (131/137) src/third_party/sqlite/src                    
[0:27:23] Still working on:
[0:27:23]   src/third_party/devtools-frontend/src
[0:27:23]   src/third_party/tflite/src
[0:27:23]   src/third_party/wayland-protocols/gtk
[0:27:23]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:27:23]   src/third_party/vulkan-deps/vulkan-loader/src
[0:27:23]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:27:33] Still working on:
[0:27:33]   src/third_party/devtools-frontend/src
[0:27:33]   src/third_party/tflite/src
[0:27:33]   src/third_party/wayland-protocols/gtk
[0:27:33]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:27:33]   src/third_party/vulkan-deps/vulkan-loader/src
[0:27:33]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:27:43] Still working on:
[0:27:43]   src/third_party/devtools-frontend/src
[0:27:43]   src/third_party/tflite/src
[0:27:43]   src/third_party/wayland-protocols/gtk
[0:27:43]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:27:43]   src/third_party/vulkan-deps/vulkan-loader/src
[0:27:43]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:27:53] Still working on:
[0:27:53]   src/third_party/devtools-frontend/src
[0:27:53]   src/third_party/tflite/src
[0:27:53]   src/third_party/wayland-protocols/gtk
[0:27:53]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:27:53]   src/third_party/vulkan-deps/vulkan-loader/src
[0:27:53]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:28:03] Still working on:
[0:28:03]   src/third_party/devtools-frontend/src
[0:28:03]   src/third_party/tflite/src
[0:28:03]   src/third_party/wayland-protocols/gtk
[0:28:03]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:28:03]   src/third_party/vulkan-deps/vulkan-loader/src
[0:28:03]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:28:13] Still working on:
[0:28:13]   src/third_party/devtools-frontend/src
[0:28:13]   src/third_party/tflite/src
[0:28:13]   src/third_party/wayland-protocols/gtk
[0:28:13]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:28:13]   src/third_party/vulkan-deps/vulkan-loader/src
[0:28:13]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:28:23] Still working on:
[0:28:23]   src/third_party/devtools-frontend/src
[0:28:23]   src/third_party/tflite/src
[0:28:23]   src/third_party/wayland-protocols/gtk
[0:28:23]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:28:23]   src/third_party/vulkan-deps/vulkan-loader/src
[0:28:23]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:28:33] Still working on:
[0:28:33]   src/third_party/devtools-frontend/src
[0:28:33]   src/third_party/tflite/src
[0:28:33]   src/third_party/wayland-protocols/gtk
[0:28:33]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:28:33]   src/third_party/vulkan-deps/vulkan-loader/src
[0:28:33]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:28:43] Still working on:
[0:28:43]   src/third_party/devtools-frontend/src
[0:28:43]   src/third_party/tflite/src
[0:28:43]   src/third_party/wayland-protocols/gtk
[0:28:43]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:28:43]   src/third_party/vulkan-deps/vulkan-loader/src
[0:28:43]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:28:53] Still working on:
[0:28:53]   src/third_party/devtools-frontend/src
[0:28:53]   src/third_party/tflite/src
[0:28:53]   src/third_party/wayland-protocols/gtk
[0:28:53]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:28:53]   src/third_party/vulkan-deps/vulkan-loader/src
[0:28:53]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:29:03] Still working on:
[0:29:03]   src/third_party/devtools-frontend/src
[0:29:03]   src/third_party/tflite/src
[0:29:03]   src/third_party/wayland-protocols/gtk
[0:29:03]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:29:03]   src/third_party/vulkan-deps/vulkan-loader/src
[0:29:03]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:29:13] Still working on:
[0:29:13]   src/third_party/devtools-frontend/src
[0:29:13]   src/third_party/tflite/src
[0:29:13]   src/third_party/wayland-protocols/gtk
[0:29:13]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:29:13]   src/third_party/vulkan-deps/vulkan-loader/src
[0:29:13]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:29:23] Still working on:
[0:29:23]   src/third_party/devtools-frontend/src
[0:29:23]   src/third_party/tflite/src
[0:29:23]   src/third_party/wayland-protocols/gtk
[0:29:23]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:29:23]   src/third_party/vulkan-deps/vulkan-loader/src
[0:29:23]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:29:33] Still working on:
[0:29:33]   src/third_party/devtools-frontend/src
[0:29:33]   src/third_party/tflite/src
[0:29:33]   src/third_party/wayland-protocols/gtk
[0:29:33]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:29:33]   src/third_party/vulkan-deps/vulkan-loader/src
[0:29:33]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:29:43] Still working on:
[0:29:43]   src/third_party/devtools-frontend/src
[0:29:43]   src/third_party/tflite/src
[0:29:43]   src/third_party/wayland-protocols/gtk
[0:29:43]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:29:43]   src/third_party/vulkan-deps/vulkan-loader/src
[0:29:43]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:29:53] Still working on:
[0:29:53]   src/third_party/devtools-frontend/src
[0:29:53]   src/third_party/tflite/src
[0:29:53]   src/third_party/wayland-protocols/gtk
[0:29:53]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:29:53]   src/third_party/vulkan-deps/vulkan-loader/src
[0:29:53]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:30:03] Still working on:
[0:30:03]   src/third_party/devtools-frontend/src
[0:30:03]   src/third_party/tflite/src
[0:30:03]   src/third_party/wayland-protocols/gtk
[0:30:03]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:30:03]   src/third_party/vulkan-deps/vulkan-loader/src
[0:30:03]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:30:14] Still working on:
[0:30:14]   src/third_party/devtools-frontend/src
[0:30:14]   src/third_party/tflite/src
[0:30:14]   src/third_party/wayland-protocols/gtk
[0:30:14]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:30:14]   src/third_party/vulkan-deps/vulkan-loader/src
[0:30:14]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:30:24] Still working on:
[0:30:24]   src/third_party/devtools-frontend/src
[0:30:24]   src/third_party/tflite/src
[0:30:24]   src/third_party/wayland-protocols/gtk
[0:30:24]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:30:24]   src/third_party/vulkan-deps/vulkan-loader/src
[0:30:24]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:30:34] Still working on:
[0:30:34]   src/third_party/devtools-frontend/src
[0:30:34]   src/third_party/tflite/src
[0:30:34]   src/third_party/wayland-protocols/gtk
[0:30:34]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:30:34]   src/third_party/vulkan-deps/vulkan-loader/src
[0:30:34]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:30:44] Still working on:
[0:30:44]   src/third_party/devtools-frontend/src
[0:30:44]   src/third_party/tflite/src
[0:30:44]   src/third_party/wayland-protocols/gtk
[0:30:44]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:30:44]   src/third_party/vulkan-deps/vulkan-loader/src
[0:30:44]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:30:54] Still working on:
[0:30:54]   src/third_party/devtools-frontend/src
[0:30:54]   src/third_party/tflite/src
[0:30:54]   src/third_party/wayland-protocols/gtk
[0:30:54]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:30:54]   src/third_party/vulkan-deps/vulkan-loader/src
[0:30:54]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:31:04] Still working on:
[0:31:04]   src/third_party/devtools-frontend/src
[0:31:04]   src/third_party/tflite/src
[0:31:04]   src/third_party/wayland-protocols/gtk
[0:31:04]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:31:04]   src/third_party/vulkan-deps/vulkan-loader/src
[0:31:04]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:31:14] Still working on:
[0:31:14]   src/third_party/devtools-frontend/src
[0:31:14]   src/third_party/tflite/src
[0:31:14]   src/third_party/wayland-protocols/gtk
[0:31:14]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:31:14]   src/third_party/vulkan-deps/vulkan-loader/src
[0:31:14]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:31:24] Still working on:
[0:31:24]   src/third_party/devtools-frontend/src
[0:31:24]   src/third_party/tflite/src
[0:31:24]   src/third_party/wayland-protocols/gtk
[0:31:24]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:31:24]   src/third_party/vulkan-deps/vulkan-loader/src
[0:31:24]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:31:34] Still working on:
[0:31:34]   src/third_party/devtools-frontend/src
[0:31:34]   src/third_party/tflite/src
[0:31:34]   src/third_party/wayland-protocols/gtk
[0:31:34]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:31:34]   src/third_party/vulkan-deps/vulkan-loader/src
[0:31:34]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:31:44] Still working on:
[0:31:44]   src/third_party/devtools-frontend/src
[0:31:44]   src/third_party/tflite/src
[0:31:44]   src/third_party/wayland-protocols/gtk
[0:31:44]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:31:44]   src/third_party/vulkan-deps/vulkan-loader/src
[0:31:44]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:31:54] Still working on:
[0:31:54]   src/third_party/devtools-frontend/src
[0:31:54]   src/third_party/tflite/src
[0:31:54]   src/third_party/wayland-protocols/gtk
[0:31:54]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:31:54]   src/third_party/vulkan-deps/vulkan-loader/src
[0:31:54]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:32:04] Still working on:
[0:32:04]   src/third_party/devtools-frontend/src
[0:32:04]   src/third_party/tflite/src
[0:32:04]   src/third_party/wayland-protocols/gtk
[0:32:04]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:32:04]   src/third_party/vulkan-deps/vulkan-loader/src
[0:32:04]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:32:14] Still working on:
[0:32:14]   src/third_party/devtools-frontend/src
[0:32:14]   src/third_party/tflite/src
[0:32:14]   src/third_party/wayland-protocols/gtk
[0:32:14]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:32:14]   src/third_party/vulkan-deps/vulkan-loader/src
[0:32:14]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:32:20] Still working on:
[0:32:20]   src/third_party/devtools-frontend/src
[0:32:20]   src/third_party/tflite/src
[0:32:20]   src/third_party/wayland-protocols/gtk
[0:32:20]   src/third_party/angle/third_party/VK-GL-CTS/src
[0:32:20]   src/third_party/vulkan-deps/vulkan-loader/src
[0:32:20]   src/third_party/vulkan-deps/vulkan-validation-layers/src
Syncing projects:  96% (132/137) src/third_party/angle/third_party/VK-GL-CTS/src
[0:33:20] Still working on:
[0:33:20]   src/third_party/devtools-frontend/src
[0:33:20]   src/third_party/tflite/src
[0:33:20]   src/third_party/wayland-protocols/gtk
[0:33:20]   src/third_party/vulkan-deps/vulkan-loader/src
[0:33:20]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:33:30] Still working on:
[0:33:30]   src/third_party/devtools-frontend/src
[0:33:30]   src/third_party/tflite/src
[0:33:30]   src/third_party/wayland-protocols/gtk
[0:33:30]   src/third_party/vulkan-deps/vulkan-loader/src
[0:33:30]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:33:40] Still working on:
[0:33:40]   src/third_party/devtools-frontend/src
[0:33:40]   src/third_party/tflite/src
[0:33:40]   src/third_party/wayland-protocols/gtk
[0:33:40]   src/third_party/vulkan-deps/vulkan-loader/src
[0:33:40]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:33:50] Still working on:
[0:33:50]   src/third_party/devtools-frontend/src
[0:33:50]   src/third_party/tflite/src
[0:33:50]   src/third_party/wayland-protocols/gtk
[0:33:50]   src/third_party/vulkan-deps/vulkan-loader/src
[0:33:50]   src/third_party/vulkan-deps/vulkan-validation-layers/src

[0:33:56] Still working on:
[0:33:56]   src/third_party/devtools-frontend/src
[0:33:56]   src/third_party/tflite/src
[0:33:56]   src/third_party/wayland-protocols/gtk
[0:33:56]   src/third_party/vulkan-deps/vulkan-loader/src
[0:33:56]   src/third_party/vulkan-deps/vulkan-validation-layers/src
Syncing projects:  98% (135/137) src/third_party/devtools-frontend/src                   
[0:35:56] Still working on:
[0:35:56]   src/third_party/tflite/src
[0:35:56]   src/third_party/wayland-protocols/gtk

[0:36:06] Still working on:
[0:36:06]   src/third_party/tflite/src
[0:36:06]   src/third_party/wayland-protocols/gtk

[0:36:16] Still working on:
[0:36:16]   src/third_party/tflite/src
[0:36:16]   src/third_party/wayland-protocols/gtk

[0:36:26] Still working on:
[0:36:26]   src/third_party/tflite/src
[0:36:26]   src/third_party/wayland-protocols/gtk

[0:36:36] Still working on:
[0:36:36]   src/third_party/tflite/src
[0:36:36]   src/third_party/wayland-protocols/gtk

[0:36:46] Still working on:
[0:36:46]   src/third_party/tflite/src
[0:36:46]   src/third_party/wayland-protocols/gtk

[0:36:56] Still working on:
[0:36:56]   src/third_party/tflite/src
[0:36:56]   src/third_party/wayland-protocols/gtk

[0:37:06] Still working on:
[0:37:06]   src/third_party/tflite/src
[0:37:06]   src/third_party/wayland-protocols/gtk

[0:37:09] Still working on:
[0:37:09]   src/third_party/tflite/src
[0:37:09]   src/third_party/wayland-protocols/gtk
Syncing projects: 100% (137/137), done.                               

________ deleting 'src/third_party/chromite' in '/usr/docker/nwjs'

________ running 'cipd ensure -log-level error -root /usr/docker/nwjs -ensure-file /tmp/tmpft87k32v.ensure' in '.'
[P5402 23:29:01.660 client.go:1521 E] Failed to remove chromium/third_party/glslang_js - rename /usr/docker/nwjs/.cipd/pkgs/1 /usr/docker/nwjs/.cipd/pkgs/sTkivBjmx-Ik: invalid cross-device link (subdir "src/third_party/blink/web_tests/wpt_internal/webgpu/third_party/glslang_js")
[P5402 23:29:01.694 client.go:1521 E] Failed to remove chromium/third_party/jdk/extras - rename /usr/docker/nwjs/.cipd/pkgs/4 /usr/docker/nwjs/.cipd/pkgs/88V5nZaa3ZRw: invalid cross-device link (subdir "src/third_party/jdk")
Error: failed to update packages, see the log.
Error: Command 'cipd ensure -log-level error -root /usr/docker/nwjs -ensure-file /tmp/tmpft87k32v.ensure' returned non-zero exit status 1

nw.js ffi load dll error

Hello, I want to load the DLL with nw.js, indicating the following error.
It is normal for me to call directly with node.js. But with nw. JS, how can I solve this problem?

E:\DemoTest\node_modules\bindings\bindings.js:83 Uncaught Error: A dynamic link library (DLL) initialization routine failed.
\?\E:\DemoTest\node_modules\ref\build\Release\binding.node
at Object.Module._extensions..node (module.js:721)
at Module.load (module.js:586)
at tryModuleLoad (module.js:526)
at Function.Module._load (module.js:518)
at Module.require (module.js:618)
at require (internal/module.js:11)
at bindings (E:\DemoTest\node_modules\bindings\bindings.js:76)
at Object. (E:\DemoTest\node_modules\ref\lib\ref.js:5)
at Module._compile (module.js:674)
at Object.Module._extensions..js (module.js:691)

Looking for maintainers.

Hello there,

I've built NW.js for ARM when I was a student, because I wanted to run an app on my Odroid.
There was no tutorial at that time and I've mostly asked the help of other people. Thanks again @jtg-gg!

Now, 5 years later, people are expecting me to deliver every version they need. Building 1 version takes more than 24 hours on my laptop. It's not that I don't want to do it, I just have a personal life to live and this is not my priority now.

TLDR That is why now I am looking for volunteers to take over the maintenance of this repository.

Please let me know if anyone is interested.

I wish you the best,
Leonard.

Automate builds of latest versions or latest LTS versions

Thanks for your work here. We've been trying to build v16 and v17 with little luck.

I'm willing to put some automation work behind updated ARM builds. If there are version specific changes that need to made, perhaps we could get rolling for LTS releases only.

You have any bandwidth for this?

Building NW.js v0.22.x fails

leonard@leonard:~/nwjs/src$ python build/gyp_chromium -Goutput_dir=out_gn_arm -I third_party/node-nw/build/common.gypi third_party/node-nw/node.gyp
Updating projects from gyp files...
gyp: Undefined variable OBJ_DIR in third_party/node-nw/node.gyp

High load

Is it possible that nw has much higher load than Firefox or Google Chrome? I just tested it as a replacement of Firefox in my kiosk and running simple JavaScript weather animation it has load 3.5, with Firefox it is 0.86, with Google Chrome it was something similar to Firefox if I remember correctly.

building v0.17.3

Hello @jtg-gg!

When I build nwjs v0.17.3 I get the error bellow:

leonard@leonard-VirtualBox:/media/leonard/seagate/nwjs/src$ ninja -C out_gn_arm/Release node
ninja: Entering directory `out_gn_arm/Release'
[1/1] SOLINK lib/libnode.so
FAILED: lib/libnode.so lib/libnode.so.TOC 
if [ ! -e lib/libnode.so -o ! -e lib/libnode.so.TOC ]; then ../../third_party/llvm-build/Release+Asserts/bin/clang++ -shared -Wl,-z,now -Wl,-z,relro -Wl,--fatal-warnings -Wl,-z,defs -pthread -Wl,-z,noexecstack -fPIC -B/media/leonard/seagate/nwjs/src/third_party/binutils/Linux_x64/Release/bin -L../nw/lib/ -lnw -Wl,--whole-archive ../nw/obj/v8/libv8_libbase.a ../nw/obj/v8/libv8_libplatform.a -Wl,--no-whole-archive -pthread -target arm-linux-gnueabihf --sysroot=/media/leonard/seagate/nwjs/src/build/linux/debian_wheezy_arm-sysroot -L/media/leonard/seagate/nwjs/src/build/linux/debian_wheezy_arm-sysroot/lib/arm-linux-gnueabihf -Wl,-rpath-link=/media/leonard/seagate/nwjs/src/build/linux/debian_wheezy_arm-sysroot/lib/arm-linux-gnueabihf -L/media/leonard/seagate/nwjs/src/build/linux/debian_wheezy_arm-sysroot/usr/lib/arm-linux-gnueabihf -Wl,-rpath-link=/media/leonard/seagate/nwjs/src/build/linux/debian_wheezy_arm-sysroot/usr/lib/arm-linux-gnueabihf -Wl,-O1 -Wl,--as-needed -Wl,--gc-sections -Wl,--no-as-needed -lpthread -Wl,--as-needed -o lib/libnode.so -Wl,-soname=libnode.so @lib/libnode.so.rsp && { readelf -d lib/libnode.so | grep SONAME ; nm -gD -f p lib/libnode.so | cut -f1-2 -d' '; } > lib/libnode.so.TOC; else ../../third_party/llvm-build/Release+Asserts/bin/clang++ -shared -Wl,-z,now -Wl,-z,relro -Wl,--fatal-warnings -Wl,-z,defs -pthread -Wl,-z,noexecstack -fPIC -B/media/leonard/seagate/nwjs/src/third_party/binutils/Linux_x64/Release/bin -L../nw/lib/ -lnw -Wl,--whole-archive ../nw/obj/v8/libv8_libbase.a ../nw/obj/v8/libv8_libplatform.a -Wl,--no-whole-archive -pthread -target arm-linux-gnueabihf --sysroot=/media/leonard/seagate/nwjs/src/build/linux/debian_wheezy_arm-sysroot -L/media/leonard/seagate/nwjs/src/build/linux/debian_wheezy_arm-sysroot/lib/arm-linux-gnueabihf -Wl,-rpath-link=/media/leonard/seagate/nwjs/src/build/linux/debian_wheezy_arm-sysroot/lib/arm-linux-gnueabihf -L/media/leonard/seagate/nwjs/src/build/linux/debian_wheezy_arm-sysroot/usr/lib/arm-linux-gnueabihf -Wl,-rpath-link=/media/leonard/seagate/nwjs/src/build/linux/debian_wheezy_arm-sysroot/usr/lib/arm-linux-gnueabihf -Wl,-O1 -Wl,--as-needed -Wl,--gc-sections -Wl,--no-as-needed -lpthread -Wl,--as-needed -o lib/libnode.so -Wl,-soname=libnode.so @lib/libnode.so.rsp && { readelf -d lib/libnode.so | grep SONAME ; nm -gD -f p lib/libnode.so | cut -f1-2 -d' '; } > lib/libnode.so.tmp && if ! cmp -s lib/libnode.so.tmp lib/libnode.so.TOC; then mv lib/libnode.so.tmp lib/libnode.so.TOC ; fi; fi
clang: error: no such file or directory: '../nw/obj/v8/libv8_libplatform.a'
ninja: build stopped: subcommand failed.

The problem seems to be that file '../nw/obj/v8/libv8_libplatform.a' does not exist. So I did a lookup, and found the file in other directory.

leonard@leonard-VirtualBox:/media/leonard/seagate/nwjs/src$ find ./out_gn_arm/ -name 'libv8_libplatform.a'
./out_gn_arm/nw/clang_x86/obj/v8/libv8_libplatform.a

Any Idea how to fix this problem?

I applied 4 of your patches:

  • PATCH-Build-linux-arm-cross-compile-fix,-dump_syms-should-be-host.patch
  • PATCH-Build-gn-add-support-for-linux-arm-binary-strip.patch
  • PATCH-Build-add-patches-for-Linux-arm-build.patch
  • PATCH-Build-Linux-add-support-for-linux-arm-binary-strip.patch

The build parameters:

cd $NWJS/src
export GYP_CROSSCOMPILE="1"
export GYP_DEFINES="target_arch=arm arm_float_abi=hard nwjs_sdk=1 disable_nacl=0 buildtype=Official"
export GN_ARGS="is_debug=false is_component_ffmpeg=true enable_nacl=true is_official_build=true target_cpu=\"arm\" ffmpeg_branding=\"Chrome\""

export GYP_CHROMIUM_NO_ACTION=1
gclient sync --reset

gn gen out_gn_arm/nw --args="$GN_ARGS"
export GYP_CHROMIUM_NO_ACTION=0
python build/gyp_chromium -Goutput_dir=out_gn_arm third_party/node/node.gyp

Build NW.js and Node:

ninja -C out_gn_arm/nw nwjs
ninja -C out_gn_arm/Release node
ninja -C out_gn_arm/nw copy_node
ninja -C out_gn_arm/nw dist

Can you help me to build an arm version

Hello, I am in China, can not be normal access Google source, so can't normal download chromium source code, can you please help me to compile a arm version of nw,js, thank you very much.

options for raspi 4 owners

if you have proper gl/vulkan drivers installed, just do

./nw

all the other options are unnecessary. tested with latest sdk build (nw60) on raspi4 4g with buster

Building NW.js v0.28.x fails

I'm trying to build v0.28 version.
Using Ubuntu version 16.04.5 LTS (Xenial Xerus) stretch/sid.

I followed all instructions as in this doc
https://github.com/LeonardLaszlo/nw.js-armv7-binaries/blob/master/docs/build-nwjs-v0.28.x.md

After last step

ninja -C out_gn_arm/nw nwjs &&
ninja -C out_gn_arm/nw v8_libplatform &&
ninja -C out_gn_arm/Release node &&
ninja -C out_gn_arm/nw copy_node &&
ninja -C out_gn_arm/nw dump &&
ninja -C out_gn_arm/nw dist

I'm getting lot of error's saying that sys/types.h and error.h and assert.h file not found.

Here's last 3 errors

[6/1233] CC obj/third_party/node-nw/deps/uv/src/unix/libuv.getnameinfo.o
FAILED: obj/third_party/node-nw/deps/uv/src/unix/libuv.getnameinfo.o
../../third_party/llvm-build/Release+Asserts/bin/clang -MMD -MF obj/third_party/node-nw/deps/uv/src/unix/libuv.getnameinfo.o.d -DV8_DEPRECATION_WARNINGS -D_FILE_OFFSET_BITS=64 -DDISABLE_NACL -D_LARGEFILE_SOURCE -DCHROMIUM_BUILD -DCR_CLANG_REVISION=318667-1 -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_LIBJPEG_TURBO=1 -DUSE_X11=1 -DUSE_CLIPBOARD_AURAX11=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_NOTIFICATIONS -DUSE_UDEV -DFIELDTRIAL_TESTING_ENABLED -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PDF=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_MDNS=1 -DENABLE_SERVICE_DISCOVERY=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DBUILDING_UV_SHARED=1 -D_GNU_SOURCE -DUSE_LIBPCI=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DNDEBUG -DNO_UNWIND_TABLES -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -Igen -I../../third_party/node-nw/deps/uv/include -I../../third_party/node-nw/deps/uv/src -fstack-protector --param=ssp-buffer-size=4 -Werror -pthread -fno-strict-aliasing -Wall -Wno-unused-parameter -Wno-missing-field-initializers -fvisibility=hidden -pipe -fPIC -fcolor-diagnostics -Xclang -load -Xclang /home/myuser/nwjs/src/third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -g -pthread -Wheader-hygiene -Wno-char-subscripts -Wno-unneeded-internal-declaration -Wno-covered-switch-default -Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-unused-function -Wno-unused-private-field -Wno-tautological-constant-compare -Wno-unused-variable -fvisibility=hidden -g --std=gnu89 -pedantic -Wall -Wno-unused-parameter -Wstrict-prototypes -Wno-varargs --std=gnu99 -target arm-linux-gnueabihf -march=armv7-a -mtune=generic-armv7-a -mfpu=neon -mfloat-abi=hard -mthumb --sysroot=/home/myuser/nwjs/src/build/linux/debian_jessie_arm-sysroot -O2 -fno-ident -fdata-sections -ffunction-sections -fno-unwind-tables -fno-asynchronous-unwind-tables   -c ../../third_party/node-nw/deps/uv/src/unix/getnameinfo.c -o obj/third_party/node-nw/deps/uv/src/unix/libuv.getnameinfo.o
../../third_party/node-nw/deps/uv/src/unix/getnameinfo.c:22:10: fatal error: 'assert.h' file not found
#include <assert.h>
         ^~~~~~~~~~
1 error generated.
[7/1233] CC obj/third_party/node-nw/deps/uv/src/unix/libuv.loop.o
FAILED: obj/third_party/node-nw/deps/uv/src/unix/libuv.loop.o
../../third_party/llvm-build/Release+Asserts/bin/clang -MMD -MF obj/third_party/node-nw/deps/uv/src/unix/libuv.loop.o.d -DV8_DEPRECATION_WARNINGS -D_FILE_OFFSET_BITS=64 -DDISABLE_NACL -D_LARGEFILE_SOURCE -DCHROMIUM_BUILD -DCR_CLANG_REVISION=318667-1 -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_LIBJPEG_TURBO=1 -DUSE_X11=1 -DUSE_CLIPBOARD_AURAX11=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_NOTIFICATIONS -DUSE_UDEV -DFIELDTRIAL_TESTING_ENABLED -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PDF=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_MDNS=1 -DENABLE_SERVICE_DISCOVERY=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DBUILDING_UV_SHARED=1 -D_GNU_SOURCE -DUSE_LIBPCI=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DNDEBUG -DNO_UNWIND_TABLES -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -Igen -I../../third_party/node-nw/deps/uv/include -I../../third_party/node-nw/deps/uv/src -fstack-protector --param=ssp-buffer-size=4 -Werror -pthread -fno-strict-aliasing -Wall -Wno-unused-parameter -Wno-missing-field-initializers -fvisibility=hidden -pipe -fPIC -fcolor-diagnostics -Xclang -load -Xclang /home/myuser/nwjs/src/third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -g -pthread -Wheader-hygiene -Wno-char-subscripts -Wno-unneeded-internal-declaration -Wno-covered-switch-default -Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-unused-function -Wno-unused-private-field -Wno-tautological-constant-compare -Wno-unused-variable -fvisibility=hidden -g --std=gnu89 -pedantic -Wall -Wno-unused-parameter -Wstrict-prototypes -Wno-varargs --std=gnu99 -target arm-linux-gnueabihf -march=armv7-a -mtune=generic-armv7-a -mfpu=neon -mfloat-abi=hard -mthumb --sysroot=/home/myuser/nwjs/src/build/linux/debian_jessie_arm-sysroot -O2 -fno-ident -fdata-sections -ffunction-sections -fno-unwind-tables -fno-asynchronous-unwind-tables   -c ../../third_party/node-nw/deps/uv/src/unix/loop.c -o obj/third_party/node-nw/deps/uv/src/unix/libuv.loop.o
In file included from ../../third_party/node-nw/deps/uv/src/unix/loop.c:22:
In file included from ../../third_party/node-nw/deps/uv/include/uv.h:50:
../../third_party/node-nw/deps/uv/include/uv-errno.h:25:10: fatal error: 'errno.h' file not found
#include <errno.h>
         ^~~~~~~~~
1 error generated.
[8/1233] CC obj/third_party/node-nw/deps/zlib/zlib.trees.o
FAILED: obj/third_party/node-nw/deps/zlib/zlib.trees.o
../../third_party/llvm-build/Release+Asserts/bin/clang -MMD -MF obj/third_party/node-nw/deps/zlib/zlib.trees.o.d -DV8_DEPRECATION_WARNINGS -D_FILE_OFFSET_BITS=64 -DDISABLE_NACL -DCHROMIUM_BUILD -DCR_CLANG_REVISION=318667-1 -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_LIBJPEG_TURBO=1 -DUSE_X11=1 -DUSE_CLIPBOARD_AURAX11=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_NOTIFICATIONS -DUSE_UDEV -DFIELDTRIAL_TESTING_ENABLED -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PDF=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_MDNS=1 -DENABLE_SERVICE_DISCOVERY=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DZ_HAVE_UNISTD_H -DHAVE_HIDDEN -DUSE_LIBPCI=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DNDEBUG -DNO_UNWIND_TABLES -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -Igen -I../../third_party/node-nw/deps/zlib -fstack-protector --param=ssp-buffer-size=4 -Werror -pthread -fno-strict-aliasing -Wall -Wno-unused-parameter -Wno-missing-field-initializers -fvisibility=hidden -pipe -fPIC -fcolor-diagnostics -Xclang -load -Xclang /home/myuser/nwjs/src/third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -g -Wheader-hygiene -Wno-char-subscripts -Wno-unneeded-internal-declaration -Wno-covered-switch-default -Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-unused-function -Wno-unused-private-field -Wno-tautological-constant-compare -Wno-unused-variable -target arm-linux-gnueabihf -march=armv7-a -mtune=generic-armv7-a -mfpu=neon -mfloat-abi=hard -mthumb --sysroot=/home/myuser/nwjs/src/build/linux/debian_jessie_arm-sysroot -O2 -fno-ident -fdata-sections -ffunction-sections -fno-unwind-tables -fno-asynchronous-unwind-tables   -c ../../third_party/node-nw/deps/zlib/trees.c -o obj/third_party/node-nw/deps/zlib/zlib.trees.o
In file included from ../../third_party/node-nw/deps/zlib/trees.c:37:
In file included from ../../third_party/node-nw/deps/zlib/deflate.h:16:
In file included from ../../third_party/node-nw/deps/zlib/zutil.h:22:
In file included from ../../third_party/node-nw/deps/zlib/zlib.h:34:
../../third_party/node-nw/deps/zlib/zconf.h:444:14: fatal error: 'sys/types.h' file not found
#    include <sys/types.h>      /* for off_t */
             ^~~~~~~~~~~~~
1 error generated.
ninja: build stopped: subcommand failed.

Any ideas why?

Trying to compile Nw.js 0.15.1

Hi LeonardLaszlo,

I am trying to compile Nw.js version 0.15.1 but i am facing below issues.
(1) I am not able to find nw15 branch for v8/src.
cd $NWJS/src/v8
git checkout nw15
(2) Below patches are not available
wget https://raw.githubusercontent.com/LeonardLaszlo/nw.js-armv7-binaries/master/patches/0001.patch -P $NWJS/
wget https://raw.githubusercontent.com/LeonardLaszlo/nw.js-armv7-binaries/master/patches/0006.patch -P $NWJS/
wget https://raw.githubusercontent.com/LeonardLaszlo/nw.js-armv7-binaries/master/patches/0003.patch -P $NWJS/

Can you please help me regarding this?
Any help is appreciable.
Regards,
Pravin

Building nw21 failed

leonard@leonard:~/nwjs/src$ ninja -C out_gn_arm/nw dist
ninja: Entering directory `out_gn_arm/nw'
[2/3] ACTION //content/nw:dist(//build/toolchain/linux:clang_arm)
FAILED: new_package.re
python ../../content/nw/tools/package_binaries.py -p /home/leonard/nwjs/src/out_gn_arm/nw -a arm -m sdk -i /home/leonard/nwjs/src/third_party/icu/common/icudtl.dat
Working on /home/leonard/nwjs/src/out_gn_arm/nw
Creating packages...
File does not exist:  /home/leonard/nwjs/src/out_gn_arm/nw/nw.sym
ninja: build stopped: subcommand failed.

Building nw18 for ARMv7 fails

@rogerwang @ghostoy @jtg-gg

When I run python build/gyp_chromium -Goutput_dir=out_gn_arm third_party/node/node.gyp during the build of nw18 I get the following error message:

leonard@ubuntu:~/nwjs/src$ python build/gyp_chromium -Goutput_dir=out_gn_arm third_party/node/node.gyp
Updating projects from gyp files...
Traceback (most recent call last):
  File "build/gyp_chromium", line 12, in <module>
    execfile(__file__ + '.py')
  File "build/gyp_chromium.py", line 361, in <module>
    sys.exit(main())
  File "build/gyp_chromium.py", line 348, in main
    gyp_rc = gyp.main(args)
  File "/home/leonard/nwjs/src/tools/gyp/pylib/gyp/__init__.py", line 538, in main
    return gyp_main(args)
  File "/home/leonard/nwjs/src/tools/gyp/pylib/gyp/__init__.py", line 523, in gyp_main
    generator.GenerateOutput(flat_list, targets, data, params)
  File "/home/leonard/nwjs/src/tools/gyp/pylib/gyp/generator/ninja.py", line 2469, in GenerateOutput
    pool.map(CallGenerateOutputForConfig, arglists)
  File "/usr/lib/python2.7/multiprocessing/pool.py", line 251, in map
    return self.map_async(func, iterable, chunksize).get()
  File "/usr/lib/python2.7/multiprocessing/pool.py", line 567, in get
    raise self._value
AssertionError: ../../v8/include$!PRODUCT_DIR/gen

If I checkout nw-v0.18.8 tag in third_party/node directory the command does not fail, but the building process fails in a later stage, when I am running ninja -C out_gn_arm/Release node with the following error message:

leonard@ubuntu:~/nwjs/src$ ninja -C out_gn_arm/Release node
ninja: Entering directory `out_gn_arm/Release'
[628/1129] CC obj/third_party/node/deps/openssl/asm/arm-void-gas/aes/openssl.aes-armv4.o
FAILED: obj/third_party/node/deps/openssl/asm/arm-void-gas/aes/openssl.aes-armv4.o
../../third_party/llvm-build/Release+Asserts/bin/clang -MMD -MF obj/third_party/node/deps/openssl/asm/arm-void-gas/aes/openssl.aes-armv4.o.d -D_REENTRANT -DPURIFY -DOPENSSL_NO_COMP -DOPENSSL_NO_SSL3 -DOPENSSL_NO_HEARTBEATS -DOPENSSL_NO_HW -DV8_DEPRECATION_WARNINGS -D_FILE_OFFSET_BITS=64 '-DENGINESDIR="/dev/null"' -DTERMIOS '-DOPENSSLDIR="/etc/ssl"' -DNWJS_SDK -DCHROMIUM_BUILD -DCR_CLANG_REVISION=278861-1 -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_LIBJPEG_TURBO=1 -DUSE_X11=1 -DUSE_CLIPBOARD_AURAX11=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_NOTIFICATIONS -DUSE_UDEV -DFIELDTRIAL_TESTING_ENABLED -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PDF=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_MDNS=1 -DENABLE_SERVICE_DISCOVERY=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DL_ENDIAN -DAES_ASM -DCPUID_ASM -DOPENSSL_BN_ASM_MONT -DOPENSSL_CPUID_OBJ -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DGHASH_ASM -DDSO_DLFCN -DHAVE_DLFCN_H -DUSE_LIBPCI=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DNDEBUG -DNO_UNWIND_TABLES -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -I../../third_party/node/deps/openssl -I../../third_party/node/deps/openssl/openssl -I../../third_party/node/deps/openssl/openssl/crypto -I../../third_party/node/deps/openssl/openssl/crypto/asn1 -I../../third_party/node/deps/openssl/openssl/crypto/evp -I../../third_party/node/deps/openssl/openssl/crypto/md2 -I../../third_party/node/deps/openssl/openssl/crypto/modes -I../../third_party/node/deps/openssl/openssl/crypto/store -I../../third_party/node/deps/openssl/openssl/include -Igen -fstack-protector --param=ssp-buffer-size=4 -Werror -pthread -fno-strict-aliasing -Wall -Wno-unused-parameter -Wno-missing-field-initializers -pipe -fPIC -fcolor-diagnostics -Xclang -load -Xclang /home/leonard/nwjs/src/third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-templates -Xclang -plugin-arg-find-bad-constructs -Xclang follow-macro-expansion -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -g -Wno-missing-field-initializers -Wno-error=unused-command-line-argument -Wno-error=parentheses-equality -Wheader-hygiene -Wno-char-subscripts -Wno-unneeded-internal-declaration -Wno-covered-switch-default -Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-unused-variable -target arm-linux-gnueabihf -march=armv7-a -mtune=generic-armv7-a -mfpu=neon -mfloat-abi=hard -mthumb --sysroot=/home/leonard/nwjs/src/build/linux/debian_wheezy_arm-sysroot -O2 -fno-ident -fdata-sections -ffunction-sections -fno-unwind-tables -fno-asynchronous-unwind-tables   -c ../../third_party/node/deps/openssl/asm/arm-void-gas/aes/aes-armv4.S -o obj/third_party/node/deps/openssl/asm/arm-void-gas/aes/openssl.aes-armv4.o
../../third_party/node/deps/openssl/asm/arm-void-gas/aes/aes-armv4.S:172:13: error: invalid operand for instruction
 sub r10,r3,#AES_encrypt-AES_Te @ Te
            ^
../../third_party/node/deps/openssl/asm/arm-void-gas/aes/aes-armv4.S:440:13: error: invalid operand for instruction
 sub r10,r3,#_armv4_AES_set_encrypt_key-AES_Te-1024 @ Te4
            ^
../../third_party/node/deps/openssl/asm/arm-void-gas/aes/aes-armv4.S:935:13: error: invalid operand for instruction
 sub r10,r3,#AES_decrypt-AES_Td @ Td
            ^
[630/1129] CC obj/third_party/node/deps/openssl/asm/arm-void-gas/bn/openssl.armv4-gf2m.o
FAILED: obj/third_party/node/deps/openssl/asm/arm-void-gas/bn/openssl.armv4-gf2m.o
../../third_party/llvm-build/Release+Asserts/bin/clang -MMD -MF obj/third_party/node/deps/openssl/asm/arm-void-gas/bn/openssl.armv4-gf2m.o.d -D_REENTRANT -DPURIFY -DOPENSSL_NO_COMP -DOPENSSL_NO_SSL3 -DOPENSSL_NO_HEARTBEATS -DOPENSSL_NO_HW -DV8_DEPRECATION_WARNINGS -D_FILE_OFFSET_BITS=64 '-DENGINESDIR="/dev/null"' -DTERMIOS '-DOPENSSLDIR="/etc/ssl"' -DNWJS_SDK -DCHROMIUM_BUILD -DCR_CLANG_REVISION=278861-1 -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_LIBJPEG_TURBO=1 -DUSE_X11=1 -DUSE_CLIPBOARD_AURAX11=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_NOTIFICATIONS -DUSE_UDEV -DFIELDTRIAL_TESTING_ENABLED -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PDF=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_MDNS=1 -DENABLE_SERVICE_DISCOVERY=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DL_ENDIAN -DAES_ASM -DCPUID_ASM -DOPENSSL_BN_ASM_MONT -DOPENSSL_CPUID_OBJ -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DGHASH_ASM -DDSO_DLFCN -DHAVE_DLFCN_H -DUSE_LIBPCI=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DNDEBUG -DNO_UNWIND_TABLES -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -I../../third_party/node/deps/openssl -I../../third_party/node/deps/openssl/openssl -I../../third_party/node/deps/openssl/openssl/crypto -I../../third_party/node/deps/openssl/openssl/crypto/asn1 -I../../third_party/node/deps/openssl/openssl/crypto/evp -I../../third_party/node/deps/openssl/openssl/crypto/md2 -I../../third_party/node/deps/openssl/openssl/crypto/modes -I../../third_party/node/deps/openssl/openssl/crypto/store -I../../third_party/node/deps/openssl/openssl/include -Igen -fstack-protector --param=ssp-buffer-size=4 -Werror -pthread -fno-strict-aliasing -Wall -Wno-unused-parameter -Wno-missing-field-initializers -pipe -fPIC -fcolor-diagnostics -Xclang -load -Xclang /home/leonard/nwjs/src/third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-templates -Xclang -plugin-arg-find-bad-constructs -Xclang follow-macro-expansion -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -g -Wno-missing-field-initializers -Wno-error=unused-command-line-argument -Wno-error=parentheses-equality -Wheader-hygiene -Wno-char-subscripts -Wno-unneeded-internal-declaration -Wno-covered-switch-default -Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-unused-variable -target arm-linux-gnueabihf -march=armv7-a -mtune=generic-armv7-a -mfpu=neon -mfloat-abi=hard -mthumb --sysroot=/home/leonard/nwjs/src/build/linux/debian_wheezy_arm-sysroot -O2 -fno-ident -fdata-sections -ffunction-sections -fno-unwind-tables -fno-asynchronous-unwind-tables   -c ../../third_party/node/deps/openssl/asm/arm-void-gas/bn/armv4-gf2m.S -o obj/third_party/node/deps/openssl/asm/arm-void-gas/bn/openssl.armv4-gf2m.o
../../third_party/node/deps/openssl/asm/arm-void-gas/bn/armv4-gf2m.S:145:17: error: invalid operand for instruction
 vmov.32 d26, r2, r1
                ^
../../third_party/node/deps/openssl/asm/arm-void-gas/bn/armv4-gf2m.S:146:18: error: invalid operand for instruction
 vmov.32 d27, r12, r3
                 ^
[631/1129] CC obj/third_party/node/deps/openssl/asm/arm-void-gas/aes/openssl.bsaes-armv7.o
FAILED: obj/third_party/node/deps/openssl/asm/arm-void-gas/aes/openssl.bsaes-armv7.o
../../third_party/llvm-build/Release+Asserts/bin/clang -MMD -MF obj/third_party/node/deps/openssl/asm/arm-void-gas/aes/openssl.bsaes-armv7.o.d -D_REENTRANT -DPURIFY -DOPENSSL_NO_COMP -DOPENSSL_NO_SSL3 -DOPENSSL_NO_HEARTBEATS -DOPENSSL_NO_HW -DV8_DEPRECATION_WARNINGS -D_FILE_OFFSET_BITS=64 '-DENGINESDIR="/dev/null"' -DTERMIOS '-DOPENSSLDIR="/etc/ssl"' -DNWJS_SDK -DCHROMIUM_BUILD -DCR_CLANG_REVISION=278861-1 -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_LIBJPEG_TURBO=1 -DUSE_X11=1 -DUSE_CLIPBOARD_AURAX11=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_NOTIFICATIONS -DUSE_UDEV -DFIELDTRIAL_TESTING_ENABLED -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PDF=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_MDNS=1 -DENABLE_SERVICE_DISCOVERY=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DL_ENDIAN -DAES_ASM -DCPUID_ASM -DOPENSSL_BN_ASM_MONT -DOPENSSL_CPUID_OBJ -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DGHASH_ASM -DDSO_DLFCN -DHAVE_DLFCN_H -DUSE_LIBPCI=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DNDEBUG -DNO_UNWIND_TABLES -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -I../../third_party/node/deps/openssl -I../../third_party/node/deps/openssl/openssl -I../../third_party/node/deps/openssl/openssl/crypto -I../../third_party/node/deps/openssl/openssl/crypto/asn1 -I../../third_party/node/deps/openssl/openssl/crypto/evp -I../../third_party/node/deps/openssl/openssl/crypto/md2 -I../../third_party/node/deps/openssl/openssl/crypto/modes -I../../third_party/node/deps/openssl/openssl/crypto/store -I../../third_party/node/deps/openssl/openssl/include -Igen -fstack-protector --param=ssp-buffer-size=4 -Werror -pthread -fno-strict-aliasing -Wall -Wno-unused-parameter -Wno-missing-field-initializers -pipe -fPIC -fcolor-diagnostics -Xclang -load -Xclang /home/leonard/nwjs/src/third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-templates -Xclang -plugin-arg-find-bad-constructs -Xclang follow-macro-expansion -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -g -Wno-missing-field-initializers -Wno-error=unused-command-line-argument -Wno-error=parentheses-equality -Wheader-hygiene -Wno-char-subscripts -Wno-unneeded-internal-declaration -Wno-covered-switch-default -Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-unused-variable -target arm-linux-gnueabihf -march=armv7-a -mtune=generic-armv7-a -mfpu=neon -mfloat-abi=hard -mthumb --sysroot=/home/leonard/nwjs/src/build/linux/debian_wheezy_arm-sysroot -O2 -fno-ident -fdata-sections -ffunction-sections -fno-unwind-tables -fno-asynchronous-unwind-tables   -c ../../third_party/node/deps/openssl/asm/arm-void-gas/aes/bsaes-armv7.S -o obj/third_party/node/deps/openssl/asm/arm-void-gas/aes/openssl.bsaes-armv7.o
../../third_party/node/deps/openssl/asm/arm-void-gas/aes/bsaes-armv7.S:86:12: error: invalid operand for instruction
 add r6,r6,#.LM0ISR-_bsaes_decrypt8
           ^
../../third_party/node/deps/openssl/asm/arm-void-gas/aes/bsaes-armv7.S:572:12: error: invalid operand for instruction
 sub r6,r6,#_bsaes_encrypt8-.LM0SR
           ^
../../third_party/node/deps/openssl/asm/arm-void-gas/aes/bsaes-armv7.S:1003:12: error: invalid operand for instruction
 sub r6,r6,#_bsaes_key_convert-.LM0
           ^
../../third_party/node/deps/openssl/asm/arm-void-gas/aes/bsaes-armv7.S:1352:14: error: invalid operand for instruction
 add r8, r6, #.LREVM0SR-.LM0 @ borrow r8
             ^
../../third_party/node/deps/openssl/asm/arm-void-gas/aes/bsaes-armv7.S:1409:14: error: invalid operand for instruction
 sub r6, r8, #.LREVM0SR-.LSR @ pass constants
             ^
[632/1129] CC obj/third_party/node/deps/openssl/openssl/engines/openssl.e_ubsec.o
ninja: build stopped: subcommand failed.

Do you have any idea what is causing this problem?

OpenSSL issue

There is a problem with the OpenSSL in ARMv7 builds.
When I run something like:

var request = require('request');

request('https://www.google.com', function (error, response, body) {
  console.log('error:', error); // Print the error if one occurred
  console.log('statusCode:', response && response.statusCode); // Print the response status code if a response was received
  console.log('body:', body); // Print the HTML for the Google homepage.
});

I get the following error:

error: Error: write EPROTO 2970357760:error:1006706B:elliptic curve routines:ec_GFp_simple_oct2point:point is not on curve:../../third_party/node/deps/openssl/openssl/crypto/ec/ecp_oct.c:417:
2970357760:error:1408D132:SSL routines:ssl3_get_key_exchange:bad ecpoint:../../third_party/node/deps/openssl/openssl/ssl/s3_clnt.c:1875:


    at exports._errnoException (util.js:1022:11)
    at WriteWrap.afterWrite [as oncomplete] (net.js:804:14)

@jtg-gg Any idea what is wrong?

Cross Compilation and Newer Versions of NW.JS

Hello,

First and foremost, I just want to say, you are amazing! Thank you for creating this project! I needed a version of NWjs for ARMv7 for a very complicated application, and this is exactly what I needed!

My only questions are whether or not it is possible to cross-compile nw.js using the build script you gave or does it have to be run on an ARMv7 chip? Also, does this work with newer versions of NW.JS? Such as 0.35?

Any help would be greatly appreciated, and thank you for the massive help already!

automatic build attempts to pull huge docker images twice (and fails at the moment)

First off, thank you so much for developing the automatic build system. I know it's a work in progress, and I'm happy to help with feedback if it's useful to you. Since I'm starting this from a different state that you are, I may be running into things you've already worked around.

I started with a completely blank-slate machine, docker and python et al installed, and a fresh clone of master, running automatic build for the very first time, so I have no locally cached images.

Working off of master as of today, and starting with a blank slate, automatic-build first tries pulls the :latest docker image (24gb) and then attempts to pull the nw49 tagged docker image. Yesterday, I believe pulling :nw49 worked, today, starting with a blank build machine, it didn't succeed at pulling that image.

So two issues:

  1. The size of these docker images its huge, so we probably shouldn't be pulling what is almost the same image twice when starting up.
  2. manifest for laslaul/nwjs-arm-build-env:nw49 not found

Output:

pst@ip-172-30-4-90:~$ git clone https://github.com/LeonardLaszlo/nw.js-armv7-binaries.git
Cloning into 'nw.js-armv7-binaries'...
remote: Enumerating objects: 265, done.
remote: Counting objects: 100% (265/265), done.
remote: Compressing objects: 100% (161/161), done.
remote: Total 555 (delta 188), reused 178 (delta 102), pack-reused 290
Receiving objects: 100% (555/555), 130.21 KiB | 10.02 MiB/s, done.
Resolving deltas: 100% (315/315), done.

pst@ip-172-30-4-90:$ cd nw.js-armv7-binaries/
pst@ip-172-30-4-90:
/nw.js-armv7-binaries$ bash automatic-build.sh >& BUILD1_LOG &
[1] 22871

pst@ip-172-30-4-90:~/nw.js-armv7-binaries$ tail -100f BUILD1_LOG
2020-10-22 15:43:17 TODO install curl, python, docker if needed
2020-10-22 15:43:17 Start parsing parameters
2020-10-22 15:43:17 Set positional arguments in their place
2020-10-22 15:43:17 Done parsing parameters
2020-10-22 15:43:17 Get the active branch from the official repo
2020-10-22 15:43:17 NW.js active branch: nw49
2020-10-22 15:43:17 Docker repository: laslaul/nwjs-arm-build-env
2020-10-22 15:43:17 Docker parameters: -H unix:///var/run/docker.sock
2020-10-22 15:43:17 Check whether the image exists on the docker host
2020-10-22 15:43:17 The laslaul/nwjs-arm-build-env image does not exist on the docker host. Pulling: laslaul/nwjs-arm-build-env
Using default tag: latest
latest: Pulling from laslaul/nwjs-arm-build-env
171857c49d0f: Pulling fs layer
419640447d26: Pulling fs layer
61e52f862619: Pulling fs layer
4c81915866aa: Pulling fs layer
3f8fd017cc1c: Pulling fs layer
2b6e377f3a5a: Pulling fs layer
4c81915866aa: Waiting
3f8fd017cc1c: Waiting
2b6e377f3a5a: Waiting
61e52f862619: Download complete
419640447d26: Verifying Checksum
419640447d26: Download complete
3f8fd017cc1c: Verifying Checksum
3f8fd017cc1c: Download complete
4c81915866aa: Verifying Checksum
4c81915866aa: Download complete
171857c49d0f: Verifying Checksum
171857c49d0f: Download complete
171857c49d0f: Pull complete
419640447d26: Pull complete
61e52f862619: Pull complete
4c81915866aa: Pull complete
3f8fd017cc1c: Pull complete
2b6e377f3a5a: Verifying Checksum
2b6e377f3a5a: Download complete
2b6e377f3a5a: Pull complete
Digest: sha256:d9ed0fcc6eb5ea693bc069aab09deb43d80ca5b7d29468f2f77005ff17801cea
Status: Downloaded newer image for laslaul/nwjs-arm-build-env:latest
docker.io/laslaul/nwjs-arm-build-env:latest
2020-10-22 15:56:51 Found image of laslaul/nwjs-arm-build-env on dockerhub
2020-10-22 15:56:51 Start a container from the laslaul/nwjs-arm-build-env image
Unable to find image 'laslaul/nwjs-arm-build-env:nw49' locally
docker: Error response from daemon: manifest for laslaul/nwjs-arm-build-env:nw49 not found: manifest unknown: manifest unknown.
See 'docker run --help'.

Trying to compile Nw.js 0.27.x

I am able to build nwjs but when i am building node then i am getting below error.

ninja: Entering directory `out_gn_arm/Release'
[1/1] SOLINK lib/libnode.so
FAILED: lib/libnode.so lib/libnode.so.TOC
if [ ! -e lib/libnode.so -o ! -e lib/libnode.so.TOC ]; then ../../third_party/llvm-build/Release+Asserts/bin/clang++ -shared -Wl,-z,now -Wl,-z,relro -Wl,--fatal-warnings -Wl,-z,defs -pthread -Wl,-z,noexecstack -fPIC -B/home/mgp/Pravin/Nw-js/nwjs/src/third_party/binutils/Linux_x64/Release/bin -L../nw/lib/ -lnw ../nw/obj/buildtools/third_party/libc++/libc++/.o ../nw/obj/buildtools/third_party/libc++abi/libc++abi/.o ../nw/obj/buildtools/third_party/libunwind/libunwind/.o -pthread -target arm-linux-gnueabihf --sysroot=/home/mgp/Pravin/Nw-js/nwjs/src/build/linux/debian_jessie_arm-sysroot -Wl,-O1 -Wl,--as-needed -Wl,--gc-sections -Wl,--no-as-needed -lpthread -Wl,--as-needed -o lib/libnode.so -Wl,-soname=libnode.so @lib/libnode.so.rsp && { readelf -d lib/libnode.so | grep SONAME ; nm -gD -f p lib/libnode.so | cut -f1-2 -d' '; } > lib/libnode.so.TOC; else ../../third_party/llvm-build/Release+Asserts/bin/clang++ -shared -Wl,-z,now -Wl,-z,relro -Wl,--fatal-warnings -Wl,-z,defs -pthread -Wl,-z,noexecstack -fPIC -B/home/mgp/Pravin/Nw-js/nwjs/src/third_party/binutils/Linux_x64/Release/bin -L../nw/lib/ -lnw ../nw/obj/buildtools/third_party/libc++/libc++/.o ../nw/obj/buildtools/third_party/libc++abi/libc++abi/.o ../nw/obj/buildtools/third_party/libunwind/libunwind/.o -pthread -target arm-linux-gnueabihf --sysroot=/home/mgp/Pravin/Nw-js/nwjs/src/build/linux/debian_jessie_arm-sysroot -Wl,-O1 -Wl,--as-needed -Wl,--gc-sections -Wl,--no-as-needed -lpthread -Wl,--as-needed -o lib/libnode.so -Wl,-soname=libnode.so @lib/libnode.so.rsp && { readelf -d lib/libnode.so | grep SONAME ; nm -gD -f p lib/libnode.so | cut -f1-2 -d' '; } > lib/libnode.so.tmp && if ! cmp -s lib/libnode.so.tmp lib/libnode.so.TOC; then mv lib/libnode.so.tmp lib/libnode.so.TOC ; fi; fi
clang: error: no such file or directory: '../nw/obj/buildtools/third_party/libunwind/libunwind/*.o'
ninja: build stopped: subcommand failed.

Actually on this path "'../nw/obj/buildtools/third_party/libunwind/libunwind/*.o" there is no libunwind.
gn also not generating ninja file for libunwind.

Can anyone help me regarding this?
Any help would be appreciable.

Regads,
Guddu

nw50 & nw51 builds fail

Done. Made 17724 targets from 2520 files in 16882ms
Updating projects from gyp files...
ninja: Entering directory `out/nw'
[1045/73147] ACTION //content/nw/src/api:generated_api_types_schema_generator(//build/toolchain/linux:clang_arm)
nw.MenuItem must have a namespace-level comment. This will appear on the API summary page.
[1054/73147] ACTION //content/nw/src/api:nw_api_bundle_generator_schema(//build/toolchain/linux:clang_arm)
nw.MenuItem must have a namespace-level comment. This will appear on the API summary page.
[1111/73147] ACTION //content/nw/src/api:nw_api_registration_bundle_generator_registration(//build/toolchain/linux:clang_arm)
nw.MenuItem must have a namespace-level comment. This will appear on the API summary page.
[73144/73147] SOLINK ./lib/libnw.so
FAILED: lib/libnw.so lib/libnw.so.TOC 
python "../../build/toolchain/gcc_solink_wrapper.py" --readelf="arm-linux-gnueabihf-readelf" --nm="arm-linux-gnueabihf-nm"  --sofile="./lib/libnw.so" --tocfile="./lib/libnw.so.TOC" --output="./lib/libnw.so" -- ../../third_party/llvm-build/Release+Asserts/bin/clang++ -shared -Wl,-soname="libnw.so" -Wl,--fatal-warnings -Wl,--build-id -fPIC -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,-z,defs -Wl,--as-needed -fuse-ld=lld -Wl,--icf=all -Wl,--color-diagnostics -Wl,--no-call-graph-profile-sort --target=arm-linux-gnueabihf -Werror -Wl,-O2 -Wl,--gc-sections -rdynamic -nostdlib++ --sysroot=../../build/linux/debian_sid_arm-sysroot -L../../build/linux/debian_sid_arm-sysroot/usr/local/lib/arm-linux-gnueabihf -L../../build/linux/debian_sid_arm-sysroot/lib/arm-linux-gnueabihf -L../../build/linux/debian_sid_arm-sysroot/usr/lib/arm-linux-gnueabihf -L../../build/linux/debian_sid_arm-sysroot/usr/lib/arm-linux-gnueabihf -o "./lib/libnw.so" @"./lib/libnw.so.rsp"
ld.lld: error: undefined symbol: component_updater::RegisterWidevineCdmComponent(component_updater::ComponentUpdateService*, base::OnceCallback<void ()>)
>>> referenced by nw_app_api.cc:107 (../../content/nw/src/api/nw_app_api.cc:107)
>>>               nw_browser/nw_app_api.o:(extensions::NwAppEnableComponentFunction::Run()) in archive obj/content/nw/libnw_browser.a
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.

It seems a typo in build script

Hello, i'm trying to build ARM binaries using your script and got an error on patches applying.

Apply node.patch in /home/dev/nwjs/src/third_party/node-nw ... patch directory is not a repository root. ERROR: This patch failed to apply. Your build will not be correct.

It seems like a typo in build script, line:
getOrUpdateGitRepository "https://github.com/nwjs/node" "$NWJS/src/third_party/node"
should be something like this:
getOrUpdateGitRepository "https://github.com/nwjs/node" "$NWJS/src/third_party/node-nw"
Isn't it?

UPD: After opening the issue I saw that is a duplicate of already closed issue, i'm sorry

How to compile the nw binary file so that the interpreter of this file is /lib/ld-linux-aarch64.so.

Hello! I directly use the binary nw file you released to test on my arm64-based computer. But the test result is not normal operation. The reason is that nw interpreter needs to be /lib/ld-linux-aarch64.so.1 instead of /lib/ld-linux-armhf.so.3 on Linux version 4.19.172 for arm64. How to compile the nw binary file so that the interpreter of this file is /lib/ld-linux-aarch64.so.

$ file ./nwjs-chromium-ffmpeg-branding/nwjs-v0.52.3-linux-arm/nw
$ ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 3.2.0, BuildID[xxHash]=4c8a98c5d541ac00, stripped

But, I want to get a binary executable file like this:
$ file ./nwjs-chromium-ffmpeg-branding/nwjs-v0.52.3-linux-arm/nw
$ ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.2.0, BuildID[xxHash]=4c8a98c5d541ac00, stripped

Trying to compile NWJS 28 for RasPi 3 with ARMv7

I've followed the instructions from the v23 file. Gotten through all the steps successfully (after a few issues that were just due to differences in versions) up till the ninja -C out_gn_arm/Release node command. Trying to run that throws some errors.
The unique ones are failure to find 3 files.

  • sys/types.h thrown by src/third_party/node-nw/deps/zlib/zconf.h:444:14
  • errno.h thrown by src/third_party/node-nw/deps/uv/include/uv-errno.h:25:10
  • stdio.h thrown by src/third_party/node-nw/deps/uv/src/inet.c:18:10

I'm working on Ubuntu 16.04 64bit.

I'm not sure what further steps I can take to resolve this.

Arm64 build

I would like to run NW.js on a PineBook (http://pine64.org). While the same processor is used as in the Raspberry PI 3 (ARM Cortex A53) the default distro is a pure 64bits Ubuntu Linux. While it would be theoretically possible to try to run the armv7 version with multilib, it would require quite a bit of extra disk space. Would it be possible to also include a 64bit release (arm64, armv8)? I sadly don't have a system available where I could try to compile it myself.

Crashing at start

Hi,

I'm running nwjs-v0.27.6-linux-arm.tar.gz on a Raspberry 3 when nwjs is running every thing is working fine.
But sometimes I have the problem nwjs is crashing at start.

At startup of the Pi I have a script which start's the nwjs with my application.
The log shows only the waring

[0819/135130.105477:WARNING:chrome_main_delegate.cc(569)] final extension: .25-Beta

and then nwjs is closed. It is not an opportunity the restart the script again, this will not work.
So I have the reboot the Pi and then it will work.

Does anybody have the same problem?

Regards

Sebastian

New Nw.js Builds

Hi Leonard, could you inform me when will the next build 0.22 and 0.23 will be available on your repository? I need them for my Pi3.

arm64 for Apple M1

See nwjs/nw.js#7620

I used this repository for a while and it's great, may be some code can be shared here to allow nw.js arm build to enter official support.

Thank you for you work.

Skia shader compilation error

I am running an app that uses three.js and I receive these errors when it tries to render. I can't seem to find any answers from anyone why this is occurring. Maybe it is related to nw.js?

`
[2122:2122:1101/195735.880642:ERROR:shared_context_state.cc(73)] Skia shader compilation error

#version 110

uniform sampler2D uTextureSampler_0_Stage0;
varying vec2 vlocalCoord_Stage0;
void main() {
vec4 outputColor_Stage0 = vec4(1.0);
vec2 texCoord;
texCoord = vlocalCoord_Stage0;
outputColor_Stage0 = texture2D(uTextureSampler_0_Stage0, texCoord);
{
gl_FragColor = outputColor_Stage0;
}
}

Errors:
0:1(10): error: GLSL 1.10 is not supported. Supported versions are: 1.00 ES, 3.00 ES, and 3.10 ES
`

Build nwjs from arm error

jack@jack-VirtualBox:~/nwjs/src$ python build/gyp_chromium -Goutput_dir=out_gn_arm -I third_party/node-nw/build/common.gypi third_party/node-nw/node.gyp
Updating projects from gyp files...
gyp: name 'arm_version' is not defined while evaluating condition 'arm_version==7 or arm_version=="default"' in v8/src/v8.gyp

jack@jack-VirtualBox:~/nwjs/src$ ninja -C out_gn_arm/nw nwjs
ninja: Entering directory `out_gn_arm/nw'
ninja: error: '../../build/util/LASTCHANGE', needed by 'obj/base/build_date.inputdeps.stamp', missing and no known rule to make it

how to resolve it?

the project died?

the project died?
because it stopped in version 28 and is already already in 37.

Error Using v0.15.1

Hi @LeonardLaszlo ,

I have tested on v0.15.1. (nwjs-v0.15.1-linux-armv7.tar.gz)

ENV: ODROID XU4 running Official Odroid Ubuntu release (14.04)

Upon extracting, the file nw shows as "shared library".

terminal command "./nw" executed from the folder, throws this error:
"error while loading shared libraries: libffmpeg.so: cannot open shared object file: No such file or directory".

I have copied libffmpeg.so from libs folder and pasted in the root directory. The sam error prevails.

Also noted that the file / directory structure is different from the 12.0 and 12.2 releases. Hope that is not the issue.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.