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

Windows error at runtime : "No native build was found" #4370

Closed
taratatach opened this issue Oct 30, 2019 · 9 comments
Closed

Windows error at runtime : "No native build was found" #4370

taratatach opened this issue Oct 30, 2019 · 9 comments
Labels

Comments

@taratatach
Copy link
Contributor

  • Version: 21.2.0
  • Target: nsis:ia32

I'm packaging a Windows 32bit (as well as x64) application from an x64 AppVeyor VM with Node x64.
My app has a dependency on leveldown v5.0.2 which does not provide 32bit prebuilt binaries anymore.

As can be seen in the following logs, electron-rebuild seems to succeed at compiling it itself:

rebuilding native dependencies  dependencies=@atom/[email protected], @gyselroth/[email protected], [email protected], [email protected] platform=win32 arch=ia32
install prebuilt binary  name=@atom/watcher version=1.3.1 platform=win32 arch=ia32
build native dependency from sources  name=@atom/watcher
                                          version=1.3.1
                                          platform=win32
                                          arch=ia32
                                          reason=prebuild-install failed with error (run with env DEBUG=electron-builder to get more information)
                                          error=prebuild-install info begin Prebuild-install version 5.2.4
  prebuild-install info looking for cached prebuild @ C:\Users\appveyor\AppData\Roaming\npm-cache\_prebuilds\0f981f-watcher-v1.3.1-electron-v70-win32-ia32.tar.gz
  prebuild-install http request GET https://github.com/atom/watcher/releases/download/v1.3.1/watcher-v1.3.1-electron-v70-win32-ia32.tar.gz
  prebuild-install http 404 https://github.com/atom/watcher/releases/download/v1.3.1/watcher-v1.3.1-electron-v70-win32-ia32.tar.gz
  prebuild-install WARN install No prebuilt binaries found (target=5.0.0 runtime=electron arch=ia32 libc= platform=win32)
    
rebuilding native dependency  name=@atom/watcher version=1.3.1
rebuilding native dependency  name=@gyselroth/windows-fsstat version=0.0.7
rebuilding native dependency  name=dtrace-provider version=0.8.8
rebuilding native dependency  name=leveldown version=5.0.2
packaging       platform=win32 arch=ia32 electron=5.0.0 appOutDir=dist\win-ia32-unpacked
downloading     url=https://github.com/electron/electron/releases/download/v5.0.0/electron-v5.0.0-win32-ia32.zip size=61 MB parts=4
downloaded      url=https://github.com/electron/electron/releases/download/v5.0.0/electron-v5.0.0-win32-ia32.zip duration=2.321s
building        target=nsis file=dist\Cozy Drive Setup 3.16.0.exe archs=x64, ia32 oneClick=true perMachine=false
downloading     url=https://github.com/electron-userland/electron-builder-binaries/releases/download/nsis-3.0.3.2/nsis-3.0.3.2.7z size=1.4 MB parts=1
downloaded      url=https://github.com/electron-userland/electron-builder-binaries/releases/download/nsis-3.0.3.2/nsis-3.0.3.2.7z duration=700ms

However, when the app is launched on a x86 Windows, it fails with the following error:

Error: No native build was found for runtime=electron abi=70 platform=win32glibc arch=ia32
win32-error

This seems to happen when we load leveldown.

I couldn't find any solution to this problem and figured this could be a configuration problem when running electron-builder for another architecture.

@taratatach
Copy link
Contributor Author

Looks similar to #4389

@Mhmetengineer
Copy link

Can u solve this problem ? @taratatach

@taratatach
Copy link
Contributor Author

I haven't found the time to work on this so no solution yet.
I was hoping the electron-builder team would have an idea on where this could come from.

@stale
Copy link

stale bot commented Feb 1, 2020

Is this still relevant? If so, what is blocking it? Is there anything you can do to help move it forward?

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

@stale stale bot added the backlog label Feb 1, 2020
@stale stale bot closed this as completed Feb 8, 2020
@taratatach
Copy link
Contributor Author

I missed the bot notification. Can we reopen this?

@okdistribute
Copy link

okdistribute commented Mar 20, 2020

Coming across this issue now in our app, seems to be related to leveldown not having a prebuild for 32bit windows. Asking @vweevers & leveldown team to include a prebuilt, although still waiting to hear if that will happen

vweevers added a commit to Level/leveldown that referenced this issue Mar 22, 2020
Adds 194kb (or 406kb unpacked) to our npm package size.

Previously removed because only 2% of installs were on 32-bit
Windows and we agreed those users could compile from source.

However, there is currently a gap in electron(-builder) tooling
when used on native addons that use node-gyp-build: these addons
don't get automatically recompiled. Though we don't need that
anymore for runtimes (the builds are compatible with both node and
electron) our users do need it when targeting multiple CPU
architectures.

Ref digidem/mapeo-desktop#305
Ref electron-userland/electron-builder#4370
Ref #554
@vweevers
Copy link

Released leveldown 5.6.0 with a 32-bit Windows prebuild.

@okdistribute
Copy link

cc @taratatach

@taratatach
Copy link
Contributor Author

@okdistribute thanks for the catch and the notification!

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

No branches or pull requests

4 participants