Skip to content

Conversation

@MrDavid949
Copy link

Please accept this pull request which updates all project and solutions to enable building with Visual Studio 2022. Also fix CQ depth issues and correct a problem where QP creation will fail on adapters where maxSQ and maxRQ depths are not equal.

David Psurny and others added 4 commits February 23, 2023 13:48
Fix a bug where CQ depths were set to the number of SGEs which does not make sense. Allow memory deregistration to complete asynchronously in the NdMrDeregister test. Determine the maximum supported queue depths before creating a CQ in the NdQpMaxAll test.
@MrDavid949
Copy link
Author

@microsoft-github-policy-service agree

@MrDavid949
Copy link
Author

Is anyone going to review this?

…ibraries and do not require any Visual C runtime to be installed.
…o fail. Make destructors in base classes virtual.
@weypro
Copy link

weypro commented Nov 5, 2024

First of all, thank you for adding VS2022 support! I'm just trying to use Network Direct with VS2022.
When I tried to build the project, I noticed it's configured to 'Use MFC in a Static Library', but the library actually works fine with just 'Use Standard Windows Libraries'. Could you update the project settings to remove the unnecessary MFC dependency?
This would help other users who want to try Network Direct with VS2022 without pulling in unneeded MFC dependencies.

@MrDavid949
Copy link
Author

First of all, thank you for adding VS2022 support! I'm just trying to use Network Direct with VS2022. When I tried to build the project, I noticed it's configured to 'Use MFC in a Static Library', but the library actually works fine with just 'Use Standard Windows Libraries'. Could you update the project settings to remove the unnecessary MFC dependency? This would help other users who want to try Network Direct with VS2022 without pulling in unneeded MFC dependencies.

Hi, without the static MFC linking, the executables created will work on the system on which they were built, but if you take them to another machine they will not work because they will have a dependency on VisualC runtime. Using static MFC linking allows the .exe files to run on any machine with no dependencies on a runtime package.

@weypro
Copy link

weypro commented Nov 7, 2024

Thanks for the explanation. However, I suppose there's a misunderstanding here. Static MFC linking is completely different from MSVC Runtime dependencies. If you want the exe to run without dependencies, you should use the /MT compiler flag to statically link the Runtime.

@MrDavid949
Copy link
Author

Thanks for the explanation. However, I suppose there's a misunderstanding here. Static MFC linking is completely different from MSVC Runtime dependencies. If you want the exe to run without dependencies, you should use the /MT compiler flag to statically link the Runtime.

Oh yes, you are right. The dependency was in fact on the runtime and not MFC. I will remove MFC and set the code generation runtime option to not use DLL as you suggested.

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.

2 participants