Skip to content

Fix for C++/WinRT compile issue#493

Merged
bsergean merged 1 commit into
machinezone:masterfrom
rh101:winrt-compile-fix
Nov 15, 2023
Merged

Fix for C++/WinRT compile issue#493
bsergean merged 1 commit into
machinezone:masterfrom
rh101:winrt-compile-fix

Conversation

@rh101

@rh101 rh101 commented Nov 15, 2023

Copy link
Copy Markdown
Contributor

Closes #492

@bsergean

Copy link
Copy Markdown
Collaborator

If you have access to a mingw environment on Windows, it would be great if you could figure out that build issue.

@bsergean bsergean merged commit 3b66efb into machinezone:master Nov 15, 2023
@rh101

rh101 commented Nov 15, 2023

Copy link
Copy Markdown
Contributor Author

If you have access to a mingw environment on Windows, it would be great if you could figure out that build issue.

I'll see what I can do.

@rh101

rh101 commented Nov 16, 2023

Copy link
Copy Markdown
Contributor Author

Are you certain that the error displayed in the logs has something to do with the changes made in this PR?

The specific error is this, which seems to come from the https://github.com/egor-tensin/setup-mingw script:

 Remove-Item: D:\a\_temp\14562f07-631d-4e82-afd4-223d04e7d198.ps1:140
Line |
 140 |          Remove-Item (Join-Path $mingw_lib 'libpthread.dll.a')
     |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | Cannot find path
     | 'C:\ProgramData\chocolatey\lib\mingw\tools\install\mingw64\x86_64-w64-mingw32\lib\libpthread.dll.a' because it
     | does not exist.

I installed mingw, and built ixwebsocket based on the workflow in this file: https://github.com/machinezone/IXWebSocket/actions/runs/6873411557/workflow?pr=493

No errors at all. Reverting the changes I made in this PR also resulted in the same output with no errors.

Also, the cmake command in that workflow doesn't enable SSL, so the changes I made are not part of the build.

@rh101 rh101 deleted the winrt-compile-fix branch November 16, 2023 08:17
@bsergean

Copy link
Copy Markdown
Collaborator

Yes your PR did not break this, it was broken before.

I was asking if you'd be interested in helping fix the mingw build.

@rh101

rh101 commented Nov 16, 2023

Copy link
Copy Markdown
Contributor Author

Yes your PR did not break this, it was broken before.

I was asking if you'd be interested in helping fix the mingw build.

My misunderstanding, but sure, I'll take a more detailed look into what may be causing that specific issue when I can.

@rh101

rh101 commented Nov 16, 2023

Copy link
Copy Markdown
Contributor Author

The issue is in setup-mingw, and it seems that this has already been reported, and a fix provided, but has not been merged in:

egor-tensin/setup-mingw#15
egor-tensin/setup-mingw#16

If you fork that repository, apply the fix, and map your workflow link to your own version, then it should work fine.

@bsergean

bsergean commented Nov 17, 2023 via email

Copy link
Copy Markdown
Collaborator

@rh101

rh101 commented Nov 17, 2023

Copy link
Copy Markdown
Contributor Author

If you care and would like to make a PR for that it would be very much appreciated.

I can't create a PR unless you create a fork of this repository first:
https://github.com/egor-tensin/setup-mingw

Once that repository is under the"machinezone" github account, then it's simply a matter of merging this commit with your version:
https://github.com/egor-tensin/setup-mingw/pull/16/files

Also, a PR would then be created against the IXWebSocket workflow file:
https://github.com/machinezone/IXWebSocket/blob/master/.github/workflows/unittest_windows_gcc.yml

Changing this line:
- uses: egor-tensin/[email protected]

to something like this:
- uses: machinezone/setup-mingw@your-patched-version

@bsergean

Copy link
Copy Markdown
Collaborator

Thanks for the help, I applied the fix in my own fork and now gcc build works on windows.

#494

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

UWP App undefined method PathMatchSpecA

2 participants