4.3 KiB
Deal with error when pnpm start
Uncaught ReferenceError: require is not defined
Or Uncaught TypeError: Cannot read properties of undefined (reading 'call') at __webpack_require__ (index.js:4317:33)
pnpm run clean:cache can fix this.
Electron download slow
Add .npmrc on this project (sometimes the one at home folder is not working).
electron-mirror=https://registry.npmmirror.com/-/binary/electron/
electron_custom_dir={{ version }}
and run node node_modules/electron/install.js manually.
Preparing native dependencies Error: ENOENT: no such file or directory, stat 'xxx/node_modules/.pnpm/node_modules/@types/lodash-es'
Or [FAILED: ENOENT: no such file or directory, stat 'C:\Users\linonetwo\Documents\repo-c\TidGi-Desktop\node_modules\.pnpm\node_modules\@radix-ui\react-compose-refs']
Remove it by run rm 'xxx/node_modules/.pnpm/node_modules/@types/lodash-es' fixes it. Maybe pnpm install gets interrupted, and make a file-like symlink, get recognized as binary file. Remove it will work.
An unhandled rejection has occurred inside Forge about node-abi:
Solution: Update @electron/rebuild to latest version:
pnpm up @electron/rebuild@latest
Fetch failed at fetchAvailableUpdates
We use electron-chrome-web-store to load react dev tools, so you need to add https://clients2.google.com/service/update2/crx to your Clash/Proxifier list. May need to enable system proxy and TUN mode or so.
Finalizing package postPackage error
Add DEBUG=electron-packager to package, like:
cross-env NODE_ENV=production DEBUG=electron-packager electron-forge make --platform=win32 --arch=x64
https://github.com/electron/forge/issues/3645
Usually you need to fix scripts\afterPack.js
If use pnpm, need to copy dependency binary from .pnpm folder, but if add node-linker=hoisted to .npmrc then we can simply copy from node_modules folder.
no such file or directory dprint
no such file or directory, stat 'TiddlyGit-Desktop/node_modules/.pnpm/node_modules/@dprint/darwin-arm64'
Solution:
pnpm store prune
pnpm uninstall dprint
pnpm i -D dprint -f
node-gyp failed to rebuild
Running generateAssets hook
› TOUCH ba23eeee118cd63e16015df367567cb043fed872.intermediate
ACTION deps_sqlite3_gyp_locate_sqlite3_target_copy_builtin_sqlite3 ba23eeee118cd63e16015df367567cb043fed872.intermediate
TOUCH Release/obj.target/deps/locate_sqlite3.stamp
CC(target) Release/obj.target/sqlite3/gen/sqlite3/sqlite3.o
LIBTOOL-STATIC Release/sqlite3.a
Usage: /opt/anaconda3/bin/libtool [OPTION]... [MODE-ARG]...
Try 'libtool --help' for more information.
libtool: error: unrecognised option: '-static'
make: *** [Release/sqlite3.a] Error 1
rm ba23eeee118cd63e16015df367567cb043fed872.intermediate
Error: `make` failed with exit code: 2
at ChildProcess.onExit TiddlyGit-Desktop/node_modules/.pnpm/node-gyp@9.4.0/node_modules/node-gyp/lib/build.js:203:23)
at ChildProcess.emit (node:events:511:28)
at ChildProcess._handle.onexit (node:internal/child_process:293:12)
An unhandled rejection has occurred inside Forge:
Error: node-gyp failed to rebuild '/Users/linonetwo/Desktop/repo/TiddlyGit-Desktop/node_modules/.pnpm/better-sqlite3@8.4.0/node_modules/better-sqlite3'
at ChildProcess.<anonymous> TiddlyGit-Desktop/node_modules/.pnpm/@electron+rebuild@3.2.13/node_modules/@electron/rebuild/lib/module-type/node-gyp/node-gyp.js:118:24)
at ChildProcess.emit (node:events:511:28)
at ChildProcess._handle.onexit (node:internal/child_process:293:12)
ELIFECYCLE Command failed with exit code 1.
Solution:
node_modules/.bin/electron-rebuild -f -w better-sqlite3
Error: The module '/Users/linonetwo/Desktop/repo/TidGi-Desktop/node_modules/opencv4nodejs-prebuilt/build/Release/opencv4nodejs.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 88. This version of Node.js requires
NODE_MODULE_VERSION 93. Please try re-compiling or re-installing
the module (for instance, using npm rebuild or npm install).
See https://github.com/justadudewhohacks/opencv4nodejs/issues/401#issuecomment-463434713 if you still have problem rebuild opencv for @nut-tree/nut-js