GithubHelp home page GithubHelp logo

doluk / us3_windows_packaging Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ehb54/us3_windows_packaging

0.0 0.0 0.0 973 KB

repo for info & supplementary data to build us3 windows binary packages. Includes scripts for building qt5 from source on a fresh msys2 mingw64 install.

Shell 17.95% Perl 41.05% QMake 41.00%

us3_windows_packaging's Introduction

us3_windows_packaging

repo for info & supplementary data to build us3 windows binary packages

  • If you have any questions or problems, please create an issue.
  • Pull requests happily considered.

setting up a first time build environment

  • install createinstall
    • get the freeware version - cif-setup.exe
  • install most recent msys2 64 bit package
    • at the time of this writing, it was msys2-x86_64-20221216.exe
    • accept all defaults when installing
  • After installing, run the msys2 msys desktop app
    • the msys2 desktop apps present a linux-like shell window
    • N.B. there are multiple msys2 desktop apps:
      • msys2 msys
      • msys2 mingw64
      • & others
    • under msys2 msys desktop app:
      • pacman -Syuu
        • repeat until there is nothing further updated
          • the window will likely close after the first update and you will have to restart the msys2 msys desktop app
        • N.B. do not run this command again once the steps below have been run. This is due to qt5 requiring an older version of gcc. If you wish to update the msys2 system, it is recommended to completely uninstall msys2 and make sure no msys2 created directories remain and start again. For the adventurous, you could try using pacman to remove the gcc package and all its dependencies first, then update the system with pacman, but this has not been tested.
      • pacman -S git
      • git clone https://github.com/ehb54/us3_windows_packaging
      • us3_windows_packaging/setup/setup_msys.pl --all
        • you may need to press Enter/Return at the /usr/bin/core_perl/cpan AppConfig Template step to keep the setup progressing.
      • exit the msys2 msys desktop app
    • under the msys2 mingw64 desktop app
      • ~/us3_windows_packaging/setup/setup.pl --all
        • optionally add --nprocs n to control the number of processors used for parallel makes
          • default is the number of availabe processors + 1
          • --nprocs is used for configuring & building qt, qwt and ultrascan
      • ~/us3_windows_packaging/setup/setup.pl --us branch
        • where branch is an ultrascan3 repo branch
      • cd ~/ultrascan-branch
      • . qt5env
      • ./makeall.sh
      • ./makesomo.sh
      • ~/us3_windows_packaging/utils/fixdependencies.pl update
        • this will have to be repeated until it gives packaging instructions
          • or fancy bash to repeat until it succeeds (watch out for non-fixable errors, it will repeat until manually interrupted!)
            • $ false; while [ $? -ne 0 ]; do ~/us3_windows_packaging/utils/fixdependencies.pl update; done
        • follow the packaging instructions

after install - building ultrascan again

  • always under the msys2 mingw64 desktop app
  • note that branch below is replaced by name of the branch used.
  • option --git repo can be supplied to setup.pl to build from a fork
  • all cases, make sure to have the latest packaging code
    • cd ~/us3_windows_packaging
    • git pull
  • existing branch
    • cd ~/ultrascan-branch
    • git fetch origin
    • git reset --hard origin/branch
    • git pull
    • ~/us3_windows_packaging/setup/setup.pl --us_update branch
    • . qt5env
    • ./makeall.sh
    • ./makesomo.sh
    • ~/us3_windows_packaging/utils/fixdependencies.pl update
      • this will have to be repeated until it gives packaging instructions
      • follow the packaging instructions
  • new branch
    • ~/us3_windows_packaging/setup/setup.pl --us branch
    • cd ~/ultrascan-branch
    • . qt5env
    • ./makeall.sh
    • ./makesomo.sh
    • ~/us3_windows_packaging/utils/fixdependencies.pl update
      • this will have to be repeated until it gives packaging instructions
      • follow the packaging instructions

notes

  • createinstallfree will put built packages in /c/setups (equivalently c:/setups)
  • depending on the speed of your machine & number of processers - it can take quite a while for the setups to finish
    • took about 6 hours on my (old) i7 with 4 cores given to the Window VM and a SATA SSD.
  • qt versions can be changed here
  • some ultrascan3 scripts are modified from the ultrascan3 repo branch, see here
    • this should eventually be migrated into the repos themselves
      • leaving it this way for now to allow correct building of prior releases
    • this is why the git fetch orign && git reset --hard origin/branch && git pull && ~/us3_windows_packaging --us_update branch when building ultrascan again

us3_windows_packaging's People

Contributors

ehb54 avatar doluk avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.