Skip to content

Master issue for MinGW-w64 TaskDialog() linker failures #279

Open
@andlabs

Description

@andlabs

Apparently MinGW-w64 v4 and lower do not include TaskDialog(). Because Go currently requires gcc or compatible (e.g. clang) to build with cgo, we'll need to address this, especially since MinGW-w64 is separate from the original MinGW, and especially since some people might have installed MinGW or MinGW-w64 as part of a larger package (such as an IDE like Code::Blocks). Some people have also confused the version of MinGW-w64 with the version of gcc, which also doesn't help things.

I originally thought I fixed this in MinGW-w64 4, but apparently that only got propagated to MSYS2, not MinGW-w64 binary releases. I don't know what the current scenario is, but I will definitely need to get solid version numbers that I can test against...

I could alternatively switch to TaskDialogIndirect(), which IIRC (I could be wrong about this; I forget now) does not have this issue, but that might (does not have to, but would be nice if it was) be contingent on reworking dialogs, which I have to make an issue about, but the general gist of my dilemma can be read here. I also forget if TaskDialogIndirect() behaves differently from TaskDialog() with regards to the limit on the amount of text in the dialog and the line wrapping rules therein.

(There's also dynamically loading TaskDialog(), which is a bit overkill, but eh.)

There are a lot of people using TDM-GCC instead of MinGW-w64. I need to investigate whether that one can be used for post-Windows 2000 code at all, otherwise I have to start explicitly looking for TDM specifically to give a special error message in that case (in addition to a non-MinGW-w64 MinGW error message).

I might convert this into a tracking issue later.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions