How to run code on windows for development

Hey I have cloned the meld code I am new to open source it is difficult for me to understand code in mingw-common in .gitlab-ci.yml please can you elaborate how and what particular steps should I follow for code development later I will make a PR containing proper instructions for windows user

The overall schema of developing meld on windows I used 1-2 years ago was following:

  • Install msys2 from https://www.msys2.org/ (including update steps mentioned here).
  • Install git there, clone meld’s repository
  • make a decision - which version 32-bit or 64-bit - ypu would be debugging. As far as I know current official releases are 32-bit, however I hope that mingw64-dist build artifacts (like at https://gitlab.gnome.org/GNOME/meld/-/jobs/1571652 ) are working fine.
    • if you select 32-bit - start MINGW32 shelll via mingw launcher, and use most packages starting with mingw-w64-i686
    • if you select 64-bit - start MINGW64 shelll via mingw launcher, and use most packages starting with mingw-w64-x86_64
  • In the opened shell - install meld dependencies. For example for 32 bit this would be
pacman  -S mingw-w64-i686-python3-cx_Freeze mingw-w64-i686-python3-gobject mingw-w64-i686-python3-pytest mingw-w64-i686-python3-setuptools mingw-w64-i686-gtksourceview4 mingw-w64-i686-gsettings-desktop-schemas glib2-devel intltool
  • cd to meld checkut and run python3 bin/meld to run meld from source.
  • sometimes the behaviour is a bit different in “from source” run and “freezed run” - like from official binaries. In this case you can produce a .zip and .msi via commands from gitlab-ci:
glib-compile-schemas data
python3 setup_win32.py bdist_dumb --bdist-dir build\bdist.mingw\msibdist_msi

And test freezed meld from .zip or .msi. For most cases even you want to test freezed meld build you don’t need MSI (it reinstalls slow due to lots of icon files) - just use zip.

I’m not sure that this guide is complete, but I hope that it may be used as a starting point

1 Like

hello thank you so much it worked for me can you please elaborate on how can I see changes I make in code at meld I am using bin/meld in mingw

You need some git client to view differences, create local commits and push them to your fork.
The most obvious is meld itself))
Just run bin/meld .

However, some features like managing remotes and branches is not available in meld, so you need some git-specific client like git conmmand line, git gui command (can be installed in msys2 but had some problems several years ago), the official git distribution Git - Downloading Package or some client like TortoiseGit (didn’t used it, but my colleagues with huge svn background find it the easiest).

I have done that but I am doing some changes and I want to see them running like how to do they look on the frontend is my logic correct! I am running bin/meld but it is not updating things on the application. I am trying to make version control tab come like a sidebar as now it is difficult to use and decreases UX

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.