Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build fails after commit 62765f1 #4285

Closed
j4james opened this issue Jan 17, 2020 · 4 comments · Fixed by #4319
Closed

Build fails after commit 62765f1 #4285

j4james opened this issue Jan 17, 2020 · 4 comments · Fixed by #4319
Labels
Needs-Tag-Fix Doesn't match tag requirements Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting Resolution-Fix-Committed Fix is checked in, but it might be 3-4 weeks until a release.

Comments

@j4james
Copy link
Collaborator

j4james commented Jan 17, 2020

Environment

Windows build number: Version 10.0.18362.535

Any other software?
Visual Studio 2019 version 16.4.2

Steps to reproduce

  1. Checkout commit 62765f1
  2. Rebuild solution from within Visual Studio

Expected behavior

The build should succeed.

Actual behavior

I get the following errors:

Error	LNK2001	unresolved external symbol "public: __cdecl Microsoft::Console::Render::GdiEngine::GdiEngine(void)" (??0GdiEngine@Render@Console@Microsoft@@QEAA@XZ)	UnitTests_TerminalCore	\terminal\src\cascadia\UnitTests_TerminalCore\ConInteractivityWin32Lib.lib(Window.obj)	1	
Error	LNK2001	unresolved external symbol "public: long __cdecl Microsoft::Console::Render::GdiEngine::SetHwnd(struct HWND__ * const)" (?SetHwnd@GdiEngine@Render@Console@Microsoft@@QEAAJQEAUHWND__@@@Z)	UnitTests_TerminalCore	\terminal\src\cascadia\UnitTests_TerminalCore\ConInteractivityWin32Lib.lib(Window.obj)	1	
Error	LNK1120	2 unresolved externals	UnitTests_TerminalCore	\terminal\bin\x64\Release\Terminal.Core.Unit.Tests.dll	1	

If I checkout one revision back (77dd51a), the build succeeds.

Is this just me, or is something busted?

@ghost ghost added Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting Needs-Tag-Fix Doesn't match tag requirements labels Jan 17, 2020
@j4james
Copy link
Collaborator Author

j4james commented Jan 17, 2020

Looking at the results for the merge build, there are errors reported, but that just appears to be a timeout while running the unit tests, which doesn't necessarily indicate a problem. And the build in the PR (#4213) was definitely successful. Maybe it is just me.

@mkitzan
Copy link
Contributor

mkitzan commented Jan 18, 2020

My fork also fails to build with the same linker errors after the latest commit.

@zadjii-msft
Copy link
Member

You might be able to work around this by building GdiRenderer manually. I think I missed that in the dependencies for that project, but didn't catch it since GdiRenderer.lib was already built on my machine.

I can take more of a look probably Wednesday at the earliest

@j4james
Copy link
Collaborator Author

j4james commented Jan 18, 2020

You might be able to work around this by building GdiRenderer manually.

That didn't seem to help, but what did work for me was adding RendererGdi as a reference in the UnitTests_TerminalCore project. I don't know if that's the right solution, but it does at least build.

For now, though, I'm just branching off the previous commit, so it's not a major problem.

@ghost ghost added the In-PR This issue has a related PR label Jan 21, 2020
@ghost ghost closed this as completed in #4319 Jan 22, 2020
ghost pushed a commit that referenced this issue Jan 22, 2020
## Summary of the Pull Request

In #4213 I added a dependency to the `UnitTests_TerminalCore` project on basically all of conhost. This _worked on my machine_, but it's consistently not working on other machines. This should fix those issues.

## References

## PR Checklist
* [x] Closes #4285 
* [x] I work here
* [n/a] Tests added/passed
* [n/a] Requires documentation to be updated

## Validation Steps Performed
Made a fresh clone and built it.
@ghost ghost added Resolution-Fix-Committed Fix is checked in, but it might be 3-4 weeks until a release. and removed In-PR This issue has a related PR labels Jan 22, 2020
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Needs-Tag-Fix Doesn't match tag requirements Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting Resolution-Fix-Committed Fix is checked in, but it might be 3-4 weeks until a release.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants