pissang / clay-viewer

3D model viewer with high quality rendering and glTF2.0/GLB export
https://pissang.github.io/clay-viewer/editor/
BSD 3-Clause "New" or "Revised" License
765 stars 97 forks source link

Linux build #74

Open AndreaMonzini opened 6 years ago

AndreaMonzini commented 6 years ago

Hello, do you have a Linux Build? Is possible to build the project for Linux?

Thank you.

pissang commented 6 years ago

Hi, I don't have Linux on my computer. It uses electron and should be simple to build. I've uploaded the source code to https://www.dropbox.com/s/iya9paljnawnpqt/clay-viewer-0.2.1-src.zip?dl=0 . You can download it and build the project with electron-builder

Here is an example.

npm install -g electron-builder
build 
AndreaMonzini commented 6 years ago

Hello, thank you for the project but i had these errors during the build:

  • electron-builder version=20.2.0
  • loaded configuration file=package.json ("build" field)
  • description is missed in the package.json appPackageFile=/home/linux/Download/clay-viewer-0.2.1-src/package.json
  • writing effective config file=dist/electron-builder.yaml
  • no native production dependencies
  • packaging       platform=linux arch=x64 electron=1.7.9 appOutDir=dist/linux-unpacked
Downloading tmp-31717-1-SHASUMS256.txt-1.7.9
[============================================>] 100.0% of 2.93 kB (2.93 kB/s)
  • building        target=snap arch=x64 file=dist/clay-viewer_0.2.1_amd64.snap
  • building        target=AppImage arch=x64 file=dist/clay-viewer-0.2.1-x86_64.AppImage
  • downloading               path=/home/linux/.cache/electron-builder/appimage/appimage-9.0.7 url=https://github.com/electron-userland/electron-builder-binaries/releases/download/appimage-9.0.7/appimage-9.0.7.7z
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x5feb8a]

goroutine 19 [running]:
github.com/develar/app-builder/pkg/util.mapAsync.func1(0xc420184070, 0xc420184000, 0xc4200a81e0, 0xc4200a8180, 0x0)
    /Users/develar/go/src/github.com/develar/app-builder/pkg/util/async.go:54 +0x7a
created by github.com/develar/app-builder/pkg/util.mapAsync
    /Users/develar/go/src/github.com/develar/app-builder/pkg/util/async.go:40 +0x181
Error: /usr/lib/node_modules/electron-builder/node_modules/app-builder-bin-linux/x64/app-builder exited with code 2
    at ChildProcess.childProcess.once.code (/usr/lib/node_modules/electron-builder/node_modules/builder-util/src/util.ts:252:14)
    at Object.onceWrapper (events.js:317:30)
    at emitTwo (events.js:126:13)
    at ChildProcess.emit (events.js:214:7)
    at maybeClose (internal/child_process.js:925:16)
    at Socket.stream.socket.on (internal/child_process.js:346:11)
    at emitOne (events.js:116:13)
    at Socket.emit (events.js:211:7)
    at Pipe._handle.close [as _onclose] (net.js:554:12)
From previous event:
    at LinuxPackager.resolveIcon (/usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/out/platformPackager.js:610:11)
    at /usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/src/targets/LinuxTargetHelper.ts:43:35
    at Generator.next (<anonymous>)
From previous event:
    at LinuxTargetHelper.computeDesktopIcons (/usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/out/targets/LinuxTargetHelper.js:73:11)
    at Lazy.LinuxTargetHelper.iconPromise.Lazy (/usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/src/targets/LinuxTargetHelper.ts:13:54)
    at Lazy.get value [as value] (/usr/lib/node_modules/electron-builder/node_modules/lazy-val/src/main.ts:18:23)
    at LinuxTargetHelper.get icons [as icons] (/usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/src/targets/LinuxTargetHelper.ts:21:29)
    at /usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/src/targets/snap.ts:135:23
    at Generator.next (<anonymous>)
From previous event:
    at SnapTarget.build (/usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/out/targets/snap.js:174:11)
    at taskManager.addTask.default.map.it (/usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/src/platformPackager.ts:121:67)
From previous event:
    at LinuxPackager.packageInDistributableFormat (/usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/src/platformPackager.ts:121:23)
    at /usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/src/platformPackager.ts:116:10
    at Generator.next (<anonymous>)
    at runCallback (timers.js:789:20)
    at tryOnImmediate (timers.js:751:5)
    at processImmediate [as _immediateCallback] (timers.js:722:5)
From previous event:
    at LinuxPackager.pack (/usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/out/platformPackager.js:188:11)
    at /usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/src/packager.ts:372:24
    at Generator.next (<anonymous>)
    at xfs.stat (/usr/lib/node_modules/electron-builder/node_modules/fs-extra/lib/mkdirs/mkdirs.js:56:16)
    at /usr/lib/node_modules/electron-builder/node_modules/graceful-fs/polyfills.js:287:18
    at FSReqWrap.oncomplete (fs.js:153:5)
From previous event:
    at Packager.doBuild (/usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/out/packager.js:441:11)
    at /usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/src/packager.ts:316:52
    at Generator.next (<anonymous>)
    at /usr/lib/node_modules/electron-builder/node_modules/graceful-fs/graceful-fs.js:99:16
    at /usr/lib/node_modules/electron-builder/node_modules/graceful-fs/graceful-fs.js:43:10
    at FSReqWrap.oncomplete (fs.js:135:15)
From previous event:
    at Packager._build (/usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/out/packager.js:385:11)
    at /usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/src/packager.ts:278:23
    at Generator.next (<anonymous>)
    at runCallback (timers.js:789:20)
    at tryOnImmediate (timers.js:751:5)
    at processImmediate [as _immediateCallback] (timers.js:722:5)
From previous event:
    at Packager.build (/usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/out/packager.js:341:11)
    at /usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/src/index.ts:50:40
    at Generator.next (<anonymous>)
From previous event:
    at build (/usr/lib/node_modules/electron-builder/node_modules/electron-builder-lib/out/index.js:47:21)
    at build (/usr/lib/node_modules/electron-builder/src/builder.ts:228:10)
    at then (/usr/lib/node_modules/electron-builder/src/cli/cli.ts:48:33)
    at runCallback (timers.js:789:20)
    at tryOnImmediate (timers.js:751:5)
    at processImmediate [as _immediateCallback] (timers.js:722:5)
From previous event:
    at Object.args [as handler] (/usr/lib/node_modules/electron-builder/src/cli/cli.ts:48:33)
    at Object.runCommand (/usr/lib/node_modules/electron-builder/node_modules/yargs/lib/command.js:235:44)
    at Object.parseArgs [as _parseArgs] (/usr/lib/node_modules/electron-builder/node_modules/yargs/yargs.js:1042:24)
    at Object.get [as argv] (/usr/lib/node_modules/electron-builder/node_modules/yargs/yargs.js:957:21)
    at Object.<anonymous> (/usr/lib/node_modules/electron-builder/src/cli/cli.ts:42:15)
    at Module._compile (module.js:643:30)
    at Object.Module._extensions..js (module.js:654:10)
    at Module.load (module.js:556:32)
    at tryModuleLoad (module.js:499:12)
    at Function.Module._load (module.js:491:3)
    at Function.Module.runMain (module.js:684:10)
    at startup (bootstrap_node.js:187:16)
    at bootstrap_node.js:608:3
pissang commented 6 years ago

Did you run npm install to install the dependencies under that folder?

AndreaMonzini commented 6 years ago

yes

agorgl commented 6 years ago

Same here