Welcome to Our Community

Some features disabled for guests. Register Today.

Build OpenBuilds Control from source

Discussion in 'Control Software' started by Corey Applegate, Oct 7, 2019.

Tags:
  1. Corey Applegate

    Builder

    Joined:
    Oct 5, 2019
    Messages:
    43
    Likes Received:
    6
    What IDE and other steps are needed to build the program from the GIT source repository?

    I already forked the rep to my git account and cloned it to my PC. I have tried several attempts before making any modifications to build the source code before making any changes. I'm a noob to CNC but like I assume like many that we come from a back ground of some novice or better maker backgrounds.

    The one gripe I have currently is the jog functions. It is woderfull that you have 4 incremental distances and can manually set the speed but the Z+ and Z- should never need a 100mm move and maybe should have its own speeds too.

    Some of the comments on the Git repo mention the managers of the Openbuilds Control software are reluctant to make community request because they are trying to be a simple user interface for new users. Some features would both help the noob and the novice users like my self save from rapid moves into work pieces.
     
  2. Peter Van Der Walt

    Peter Van Der Walt OpenBuilds Team
    Staff Member Moderator Project Maker Builder Resident Builder

    Joined:
    Mar 1, 2017
    Messages:
    8,381
    Likes Received:
    2,759
    Its nodejs running as electronjs. Read Electron | Build cross platform desktop apps with JavaScript, HTML, and CSS.
    cd into root directory, run npm install to fetch dependencies

    Run ./node_modules/.bin/build to "compile" (not really compile, js is an interpreted language, not a compiled one)
    Or
    Run node_modules/.bin/electron . (dont forget space dot) to run it

    Re Jog: the challenge stands, show me something better. See post #748 in OpenBuilds CONTROL Software for details

    Depends entirely on the request itself. Great requests get adopted in hours... We arent evil, but at the end of the day there are processes, time allocations, other tasks and priorities, and internal goals and missions that all have to align.
     
    #2 Peter Van Der Walt, Oct 7, 2019
    Last edited: Oct 7, 2019
    Corey Applegate likes this.
  3. Peter Van Der Walt

    Peter Van Der Walt OpenBuilds Team
    Staff Member Moderator Project Maker Builder Resident Builder

    Joined:
    Mar 1, 2017
    Messages:
    8,381
    Likes Received:
    2,759
    Just wait for the new product launches in a couple weeks (;
     
    Corey Applegate and sharmstr like this.
  4. Corey Applegate

    Builder

    Joined:
    Oct 5, 2019
    Messages:
    43
    Likes Received:
    6
    I didn't mean to imply you are evil. Any organization that publishes their source code to a public Git Repo is my friend. I like to tinker and "Hack" at code, and if I created something useful I would have made a push request.

    But now I wish to know more about this release teaser you implied to.
     
  5. Peter Van Der Walt

    Peter Van Der Walt OpenBuilds Team
    Staff Member Moderator Project Maker Builder Resident Builder

    Joined:
    Mar 1, 2017
    Messages:
    8,381
    Likes Received:
    2,759
    :) Glad to hear, spend a little more time around the project and I'm sure you'll buy into the vibe and its place in the universe (;
    Some "cant do now" become clearer later (your github post in the probe on for example also has something coming soon)

    Can't say (;
     
    Corey Applegate likes this.
  6. base1379

    base1379 New
    Builder

    Joined:
    Jan 9, 2017
    Messages:
    31
    Likes Received:
    5
    I just updated node, and when I execute "npm install" I get errors (this is from the end of the log):
    5905 silly saveTree `-- [email protected]
    5906 warn The package ncp is included as both a dev and production dependency.
    5907 verbose stack Error: spawn git ENOENT
    5907 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:269:19)
    5907 verbose stack at onErrorNT (internal/child_process.js:465:16)
    5907 verbose stack at processTicksAndRejections (internal/process/task_queues.js:80:21)
    5908 verbose cwd C:\Users\user\Documents\GitHub\OpenBuilds-CONTROL
    5909 verbose Windows_NT 10.0.19041
    5910 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install"
    5911 verbose node v14.15.3
    5912 verbose npm v6.14.9
    5913 error code ENOENT
    5914 error syscall spawn git
    5915 error path git
    5916 error errno -4058
    5917 error enoent Error while executing:
    5917 error enoent undefined ls-remote -h -t noopkat/browser-serialport
    5917 error enoent
    5917 error enoent
    5917 error enoent spawn git ENOENT
    5918 error enoent This is related to npm not being able to find a file.
    5919 verbose exit [ -4058, true ]
     
  7. base1379

    base1379 New
    Builder

    Joined:
    Jan 9, 2017
    Messages:
    31
    Likes Received:
    5
    Nevermind, installing Git solved the above errors.
     
  8. Peter Van Der Walt

    Peter Van Der Walt OpenBuilds Team
    Staff Member Moderator Project Maker Builder Resident Builder

    Joined:
    Mar 1, 2017
    Messages:
    8,381
    Likes Received:
    2,759
    We havent updated to 14 just yet, (OpenBuilds/OpenBuilds-CONTROL), glad to know 14 is working off the bat. Will switch the mainline builds in January

    Correct was missing git
     
    #8 Peter Van Der Walt, Dec 27, 2020
    Last edited: Dec 28, 2020
  9. base1379

    base1379 New
    Builder

    Joined:
    Jan 9, 2017
    Messages:
    31
    Likes Received:
    5
    Looks like control is still using node version 12?
    Should I be building with the latest v12 node?
     
  10. Peter Van Der Walt

    Peter Van Der Walt OpenBuilds Team
    Staff Member Moderator Project Maker Builder Resident Builder

    Joined:
    Mar 1, 2017
    Messages:
    8,381
    Likes Received:
    2,759
    Correct
     
  11. base1379

    base1379 New
    Builder

    Joined:
    Jan 9, 2017
    Messages:
    31
    Likes Received:
    5
    I think I updated node and/or other packages when I shouldn't have...
    The same code that used to build an installer which would install a usable program, now builds an installer which installs an exe that when launched does nothing.

    The output from the terminal when building (I can't figure out what the 404s and errors mean):

    PS D:\machines\Lazarus\LazarusCMM> npm run dist

    > [email protected] dist
    > electron-builder --ia32 --x64

    • electron-builder version=22.11.7 os=10.0.19043
    • loaded configuration file=package.json ("build" field)
    • writing effective config file=dist\builder-effective-config.yaml
    • rebuilding native dependencies [email protected]/[email protected], [email protected], @serialport/[email protected]=x64
    • install prebuilt binary [email protected]/bindings version=8.0.8 platform=win32 arch=x64 napi=
    • build native dependency from sources [email protected]/bindings
    version=8.0.8
    platform=win32
    arch=x64
    napi=
    reason=prebuild-install failed with error (run with env DEBUG=electron-buirmation)
    error=prebuild-install info begin Prebuild-install version 5.3.6
    prebuild-install WARN install prebuilt binaries enforced with --force!
    prebuild-install WARN install prebuilt binaries may be out of date!
    prebuild-install info looking for cached prebuild @ C:\Users\user\AppData\Local\npm-cache\_prebuilds\d376c2-bindv80-win32-x64.tar.gz
    prebuild-install http request GET https://github.com/serialport/node-...lport/bi-v8.0.8-electron-v80-win32-x64.tar.gz
    prebuild-install http 404 https://github.com/serialport/node-...lport/[email protected]
    prebuild-install WARN install No prebuilt binaries found (target=9.4.4 runtime=electron arch=x64 libc= platform=

    ...


    The version of the code that i branched was 1.0.267 on Dec 28, 2020.
    How do I know what version of electron, and other necessary packages are required? I've searched around GitHub - OpenBuilds/OpenBuilds-CONTROL: OpenBuilds CONTROL: Download from https://software.openbuilds.com but couldn't find any necessary prerequisites.

    Currently I have:
    npm v7.20.3
    node v14.17.4 (I know this should be v12)
    PS D:\machines\Lazarus\LazarusCMM> npm ls
    [email protected] D:\machines\Lazarus\LazarusCMM
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    └── [email protected]
     
    #11 base1379, Aug 2, 2021
    Last edited: Aug 2, 2021
  12. Peter Van Der Walt

    Peter Van Der Walt OpenBuilds Team
    Staff Member Moderator Project Maker Builder Resident Builder

    Joined:
    Mar 1, 2017
    Messages:
    8,381
    Likes Received:
    2,759
    We build againt Node 12 on Github Actions these days: OpenBuilds-CONTROL/build.yml at master · OpenBuilds/OpenBuilds-CONTROL - assuming official codebase of course. If you maintain your own fork, make sure to keep it up to date (compare package.json at the least. It specifies the Electron versions, etc) as dependencies are kept updated too. See OpenBuilds-CONTROL/package.json at master · OpenBuilds/OpenBuilds-CONTROL

    As to why your build fails, read the log, but nb run with electron debug enabled for most info:
    electron-builder
     
  13. base1379

    base1379 New
    Builder

    Joined:
    Jan 9, 2017
    Messages:
    31
    Likes Received:
    5
    Thanks Peter,

    I've downgraded I think all of the necessary packages:
    PS D:\machines\Lazarus\LazarusCMM> npm ls
    [email protected] D:\machines\Lazarus\LazarusCMM
    ├── [email protected]
    ├── copy[email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    ├── [email protected]
    └── [email protected]

    PS D:\machines\Lazarus\LazarusCMM> node -v
    v12.22.4
    PS D:\machines\Lazarus\LazarusCMM> npm -v
    7.20.3


    And still experiencing the same issue.
    I looked at the debug electron page, but don't know how to enable the debugging.
    When I execute "$env:DEBUG=electron-builder", I get:
    electron-builder : The term 'electron-builder' is not recognized as the name of a cmdlet, function, script
    file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is
    correct and try again.
    At line:1 char:12
    + $env:DEBUG=electron-builder
    + ~~~~~~~~~~~~~~~~
    + CategoryInfo : ObjectNotFound: (electron-builder:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

    Suggestion [3,General]: The command electron-builder was not found, but does exist in the current location. Windows PowerShell does not load commands from the current location by default. If you trust this command, instead type: ".\electron-builder". See "get-help about_Command_Precedence" for more details.
     
  14. Peter Van Der Walt

    Peter Van Der Walt OpenBuilds Team
    Staff Member Moderator Project Maker Builder Resident Builder

    Joined:
    Mar 1, 2017
    Messages:
    8,381
    Likes Received:
    2,759
    Rerun as before but get the whole log. Your post yesterday truncated before the end.

     
  15. base1379

    base1379 New
    Builder

    Joined:
    Jan 9, 2017
    Messages:
    31
    Likes Received:
    5
    Code:
     
    PS D:\machines\Lazarus\LazarusCMM> npm run dist
    
    > [email protected] dist
    > electron-builder --ia32 --x64
    
      • electron-builder  version=22.8.0 os=10.0.19043
      • loaded configuration  file=package.json ("build" field)
      • electron-rebuild not required if you use electron-builder, please consider to remove excess dependency from devDependencies
    
    To ensure your native dependencies are always matched electron version, simply add script `"postinstall": "electron-builder install-app-deps" to your `package.json`
      • writing effective config  file=dist\builder-effective-config.yaml
      • rebuilding native dependencies  [email protected]/[email protected], [email protected], @serialport/[email protected] platform=win32 arch=x64
      • install prebuilt binary  [email protected]/bindings version=9.2.0 platform=win32 arch=x64
      • install prebuilt binary  name=drivelist version=9.0.0 platform=win32 arch=x64
      • build native dependency from sources  name=drivelist
                                              version=9.0.0
                                              platform=win32
                                              arch=x64
                                              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.3.6      
        prebuild-install WARN install prebuilt binaries enforced with --force!
        prebuild-install WARN install prebuilt binaries may be out of date!
        prebuild-install info looking for cached prebuild @ C:\Users\user\AppData\Local\npm-cache\_prebuilds\d17efd-drivelist-v9.0.0-electron-v80-win32-x64.tar.gz
        prebuild-install http request GET https://github.com/balena-io-modules/drivelist/releases/download/v9.0.0/drivelist-v9.0.0-electron-v80-win32-x64.tar.gz
        prebuild-install http 404 https://github.com/balena-io-modules/drivelist/releases/download/v9.0.0/drivelist-v9.0.0-electron-v80-win32-x64.tar.gz
        prebuild-install WARN install No prebuilt binaries found (target=9.2.0 runtime=electron arch=x64 libc= platform=win32)
    
      • install prebuilt binary  [email protected]/bindings version=8.0.8 platform=win32 arch=x64
      • build native dependency from sources  [email protected]/bindings
                                              version=8.0.8
                                              platform=win32
                                              arch=x64
                                              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.3.6      
        prebuild-install WARN install prebuilt binaries enforced with --force!
        prebuild-install WARN install prebuilt binaries may be out of date!
        prebuild-install info looking for cached prebuild @ C:\Users\user\AppData\Local\npm-cache\_prebuilds\d376c2-bindings-v8.0.8-electron-v80-win32-x64.tar.gz
        prebuild-install http request GET https://github.com/serialport/node-serialport/releases/download/@serialport/[email protected]/bindings-v8.0.8-electron-v80-win32-x64.tar.gz
        prebuild-install http 404 https://github.com/serialport/node-serialport/releases/download/@serialport/[email protected]/bindings-v8.0.8-electron-v80-win32-x64.tar.gz
        prebuild-install WARN install No prebuilt binaries found (target=9.2.0 runtime=electron arch=x64 libc= platform=win32)
    
      • packaging       platform=win32 arch=x64 electron=9.2.0 appOutDir=dist\win-unpacked
      • rebuilding native dependencies  [email protected]/[email protected], [email protected], @serialport/[email protected] platform=win32 arch=ia32
      • install prebuilt binary  [email protected]/bindings version=9.2.0 platform=win32 arch=ia32
      • build native dependency from sources  [email protected]/bindings
                                              version=9.2.0
                                              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.3.6      
        prebuild-install WARN install prebuilt binaries enforced with --force!
        prebuild-install WARN install prebuilt binaries may be out of date!
        prebuild-install info looking for cached prebuild @ C:\Users\user\AppData\Local\npm-cache\_prebuilds\86923f-bindings-v9.2.0-electron-v80-win32-ia32.tar.gz
        prebuild-install http request GET https://github.com/serialport/node-serialport/releases/download/@serialport/[email protected]/bindings-v9.2.0-electron-v80-win32-ia32.tar.gz
        prebuild-install http 404 https://github.com/serialport/node-serialport/releases/download/@serialport/[email protected]/bindings-v9.2.0-electron-v80-win32-ia32.tar.gz
        prebuild-install WARN install No prebuilt binaries found (target=9.2.0 runtime=electron arch=ia32 libc= platform=win32)
    
      • install prebuilt binary  name=drivelist version=9.0.0 platform=win32 arch=ia32
      • build native dependency from sources  name=drivelist
                                              version=9.0.0
                                              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.3.6      
        prebuild-install WARN install prebuilt binaries enforced with --force!
        prebuild-install WARN install prebuilt binaries may be out of date!
        prebuild-install info looking for cached prebuild @ C:\Users\user\AppData\Local\npm-cache\_prebuilds\7a1567-drivelist-v9.0.0-electron-v80-win32-ia32.tar.gz
        prebuild-install http request GET https://github.com/balena-io-modules/drivelist/releases/download/v9.0.0/drivelist-v9.0.0-electron-v80-win32-ia32.tar.gz
        prebuild-install http 404 https://github.com/balena-io-modules/drivelist/releases/download/v9.0.0/drivelist-v9.0.0-electron-v80-win32-ia32.tar.gz
        prebuild-install WARN install No prebuilt binaries found (target=9.2.0 runtime=electron arch=ia32 libc= platform=win32)
    
      • install prebuilt binary  [email protected]/bindings version=8.0.8 platform=win32 arch=ia32
      • build native dependency from sources  [email protected]/bindings
                                              version=8.0.8
                                              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.3.6      
        prebuild-install WARN install prebuilt binaries enforced with --force!
        prebuild-install WARN install prebuilt binaries may be out of date!
        prebuild-install info looking for cached prebuild @ C:\Users\user\AppData\Local\npm-cache\_prebuilds\5d0790-bindings-v8.0.8-electron-v80-win32-ia32.tar.gz
        prebuild-install http request GET https://github.com/serialport/node-serialport/releases/download/@serialport/[email protected]/bindings-v8.0.8-electron-v80-win32-ia32.tar.gz
        prebuild-install http 404 https://github.com/serialport/node-serialport/releases/download/@serialport/[email protected]/bindings-v8.0.8-electron-v80-win32-ia32.tar.gz
        prebuild-install WARN install No prebuilt binaries found (target=9.2.0 runtime=electron arch=ia32 libc= platform=win32)
    
      • packaging       platform=win32 arch=ia32 electron=9.2.0 appOutDir=dist\win-ia32-unpacked
      • building        target=nsis file=dist\LazarusCMM-Setup-1.0.1.exe archs=x64, ia32 oneClick=false perMachine=false
      • building block map  blockMapFile=dist\LazarusCMM-Setup-1.0.1.exe.blockmap
    
     

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice