ivancuric / native-repro-sharp

1 stars 0 forks source link

unable to build on windows #2

Open jeromeatneotek opened 1 year ago

jeromeatneotek commented 1 year ago

HI Ivan, This looks like a great repo and I would like to try and replicate on my windows PC, however it will not run for my. I have cloned the repo and run yarn but get the following error and I am unsure why error E:\MyDev\native-repro-sharp\node_modules\video-module: Command failed. Exit code: 1 Command: cmake-js compile Arguments: Directory: E:\MyDev\native-repro-sharp\node_modules\video-module Output: [ 'C:\Program Files\nodejs\node.exe', 'E:\MyDev\native-repro-sharp\node_modules\cmake-js\bin\cmake-js', 'compile' ] info TOOL Using Visual Studio 17 2022 generator. info DIST Downloading distribution files. http DIST - https://atom.io/download/atom-shell/v12.0.2/x64/node.lib

Any assistance would be gratefully appreciated.

jeromeatneotek commented 1 year ago

I have solved the first hurdle so posting here for anyone else that might be interested. I did not have visualstudio2017.

See https://github.com/cmake-js/cmake-js choco install visualstudio2017-workload-vctool npm config set msvs_version 2017 or yarn config set msvs_version 2017

Upgrade Sharp to v0.32.6 and remove @type/sharp as not required

Update forge.config.js plugins property as below: plugins: [

  {name:'@electron-forge/plugin-webpack',
  config:{
    mainConfig: './webpack.main.config.js',
    renderer: {
      config: './webpack.renderer.config.js',
      entryPoints: [
        {
          html: './app/renderer/index.html',
          js: './app/renderer/index.tsx',
          name: 'main_window',
        },
      ],
    },
  },
}
,
{
  name:'@timfish/forge-externals-plugin',
  config:{
    externals: ['sharp', 'video-module', 'native-hello-world'],
  },

}, ],

jeromeatneotek commented 1 year ago

I am now getting the follwoing

√ Loading configuration × Preparing native dependencies: 0 / 1 › node-gyp failed to rebuild 'E:\MyDev\native-repro-sharp\node_modules\native-hello-world' ■ Running generateAssets hook

› gyp: name 'openssl_fips' is not defined while evaluating condition 'openssl_fips != ""' in binding.gyp while trying to … Error: gyp failed with exit code: 1 at ChildProcess.onCpExit (E:\MyDev\native-repro-sharp\node_modules\node-gyp…

An unhandled rejection has occurred inside Forge: Error: node-gyp failed to rebuild 'E:\MyDev\native-repro-sharp\node_modules\native-hello-world' at ChildProcess. (E:\MyDev\native-repro-sharp\node_modules\@electron\rebuild\lib\module-type\node-gyp\node-gyp.js:118:24) at ChildProcess.emit (node:events:517:28) at ChildProcess._handle.onexit (node:internal/child_process:292:12) error Command failed with exit code 1.

I suspect this may be a python3 vs python2 problem I have confirmed openssl is installed and working I cannot find where the opensssl_fips condition comes from