如何链接ENet和MSVC
How to link ENet and MSVC
我使用的是Microsoft Visual C++(VS Express for Desktop)。我在链接enet.lib和enet64.lib文件时遇到困难。以下是我所做的:
- 下载了最新稳定版本的tar.gz文件
- 我把它的内容提取到C:\enet
- 在我的MSVC解决方案的项目属性中,我:
- 将C:\enet\include添加到C/C++/General/Additional include目录
- 将C:\enet添加到Linker/General/Additional Library目录
- 将enet.lib、enet64.lib、ws2_32.lib和winmm.lib添加到Linker/Input/Additional Dependencies
我还确保将#include <enet/enet.h>
放在我的main.cpp的顶部。该程序运行时没有任何错误,但看起来实际上并没有工作。在我的客户端代码中,如果它不能连接到服务器,它应该抛出一个错误,但当我在服务器不运行的情况下运行客户端程序时,它不会抛出任何错误。我是否错误地链接了ENet,是使用了错误的版本,还是只是错误地使用了它?我放弃了自己的代码,并尝试运行我在互联网上找到的一个示例客户端/服务器,它经过编译,但实际上并没有"工作"。
我想明白了,问题是我链接了enet.lib和enet64.lib。
相关文章:
- MSVC多行宏编译器错误
- 为什么使用__LINE_的代码在发布模式下在MSVC下编译,而不是在调试模式下
- MSVC是否支持C++11样式的属性而不是__declspec
- MSVC将仅移动结构参数解释为指针
- C++17中函数模板中的静态数组初始化(MSVC 2019)
- 有与__builtin__FUNCTION()等效的MSVC吗
- 为什么 gcc 编译这个而 msvc 没有
- 看起来is_nothrow_constructible_v()在MSVC中被破坏了,我错了吗
- 正在解码MSVC 32位版本的程序集(作业).没有手术做什么
- MSVC 忽略 [[maybe_unused]] 的功能?
- std::vector::p ush_back() 不会在 MSVC 上编译具有已删除移动构造函数的对象
- MSVC中的宏观扩展问题
- "Ill-defined for-loop - loop executes infinitely" (MSVC C6295)
- __CHAR_BIT__宏是否为 MSVC 编译器预定义?
- 不正确的操作数类型 MSVC
- 使用 MSVC 调试类型
- CRTP 中的复制赋值运算符 - gcc vs clang 和 msvc
- MSVC(Visual C++)是否有等效的-weffc ++?
- 命名空间范围内的外部 - GCC vs clang vs msvc
- 如何链接ENet和MSVC