Some packages, network in particular, require to link additional libraries to avoid missing symbol errors when linking on Windows. diff --git a/haskell/private/actions/package.bzl b/haskell/private/actions/package.bzl index bcb83c73..46148f16 100644 --- a/haskell/private/actions/package.bzl +++ b/haskell/private/actions/package.bzl @@ -97,7 +97,12 @@ def package( "library-dirs": ["${pkgroot}"] + extra_lib_dirs, "dynamic-library-dirs": ["${pkgroot}"] + extra_dynamic_lib_dirs, "hs-libraries": [pkg_id.library_name(hs, my_pkg_id)] if has_hs_library else [], - "extra-libraries": extra_libs, + "extra-libraries": extra_libs + ([ + "stdc++", + "crypt32", + "shlwapi", + "ws2_32", + ] if hs.toolchain.is_windows else []), "depends": hs.package_ids, "exposed-modules": exposed_modules, })