Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Switch to GitLab Next
  • Sign in / Register
  • W wget2
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 148
    • Issues 148
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 7
    • Merge requests 7
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Wget
  • wget2
  • Issues
  • #567
Closed
Open
Created Nov 14, 2021 by Shadab Zafar@dufferzafar

Building on Windows

It's not clear to me how exactly to build on Windows. I have Mingw64 toolchain setup. This is what I tried:

$ git clone --depth 1 https://gitlab.com/gnuwget/wget2/
$ cd wget2

$ bash -x contrib/mingw

+ set -e
+ unset CC
+ unset CXX
+ PREFIX=x86_64-w64-mingw32
+ export 'PATH=/usr/x86_64-w64-mingw32/bin:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/c/Windows/System32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/c/ProgramData/chocolatey/bin:/c/Program Files (x86)/GitHub CLI:/c/Users/duffe/scoop/shims:/c/Program Files/Microsoft VS Code Insiders/bin:/c/Program Files/Go/bin:/c/Program Files/nodejs/:/d/Software/bin'
+ PATH='/usr/x86_64-w64-mingw32/bin:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/c/Windows/System32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/c/ProgramData/chocolatey/bin:/c/Program Files (x86)/GitHub CLI:/c/Users/duffe/scoop/shims:/c/Program Files/Microsoft VS Code Insiders/bin:/c/Program Files/Go/bin:/c/Program Files/nodejs/:/d/Software/bin'
+ export INSTALLDIR=/e/dev/dzfr/@clones/wget2/x86_64-w64-mingw32
+ INSTALLDIR=/e/dev/dzfr/@clones/wget2/x86_64-w64-mingw32
+ export PKG_CONFIG_PATH=/e/dev/dzfr/@clones/wget2/x86_64-w64-mingw32/lib/pkgconfig:/usr/x86_64-w64-mingw32/lib/pkgconfig
+ PKG_CONFIG_PATH=/e/dev/dzfr/@clones/wget2/x86_64-w64-mingw32/lib/pkgconfig:/usr/x86_64-w64-mingw32/lib/pkgconfig
+ export PKG_CONFIG_LIBDIR=/e/dev/dzfr/@clones/wget2/x86_64-w64-mingw32/lib/pkgconfig
+ PKG_CONFIG_LIBDIR=/e/dev/dzfr/@clones/wget2/x86_64-w64-mingw32/lib/pkgconfig
+ export PKG_CONFIG=/usr/bin/x86_64-w64-mingw32-pkg-config
+ PKG_CONFIG=/usr/bin/x86_64-w64-mingw32-pkg-config
+ export CPPFLAGS=-I/e/dev/dzfr/@clones/wget2/x86_64-w64-mingw32/include
+ CPPFLAGS=-I/e/dev/dzfr/@clones/wget2/x86_64-w64-mingw32/include
+ export LDFLAGS=-L/e/dev/dzfr/@clones/wget2/x86_64-w64-mingw32/lib
+ LDFLAGS=-L/e/dev/dzfr/@clones/wget2/x86_64-w64-mingw32/lib
+++ find /usr/lib/gcc/x86_64-w64-mingw32 -name libgcc_s_seh-1.dll
+++ head -1
find: ‘/usr/lib/gcc/x86_64-w64-mingw32’: No such file or directory
++ dirname
dirname: missing operand
Try 'dirname --help' for more information.
+ GCCLIB=

I guess, I need to install some libraries. But again, not sure exactly which ones.

I also tried to look at the Gitlab CI Job but it seems to have a cache, that it builds against, and doesn't install the dependencies: https://gitlab.com/gnuwget/wget2/-/jobs/1778332085

For someone who has built this on Windows, could they provide me with a list of packages that I need?

Btw, why don't we provide prebuilt binaries? Since we're building in CI already, we could just upload the built artifacts, right?

Assignee
Assign to
Time tracking