2018年7月5日16:03:12
錯誤 6 error LNK2019: 無法解析的外部符號 _aeWait,該符號在函數 _WSIOCP_SocketSend 中被引用 E:\document\visual_studio_2013\hiredis\redisconnect_test\redisconnect_test\Win32_Interop.lib(win32_wsiocp.obj) redisconnect_test
錯誤 7 error LNK2019: 無法解析的外部符號 _listAddNodeTail,該符號在函數 _WSIOCP_SocketSend 中被引用 E:\document\visual_studio_2013\hiredis\redisconnect_test\redisconnect_test\Win32_Interop.lib(win32_wsiocp.obj) redisconnect_test
按照網上各種方法都試了,都沒有用,後來找到一篇文章windows c++使用hiredis異步操作,比較完美的解決了問題。主要操作如下:
- 預處理器定義:
- _OFF_T_DEFINED
- WIN32
- LACKS_STDLIB_H
- _DEBUG
- _CONSOLE
- %(PreprocessorDefinitions)
- NO_QFORKIMPL
- _WIN32_WINNT=0x0501
- 入口函數必須是:
- int main(int argc, char **argv)
- 文件後綴.c 或包含頭文件時加extern "C"{
- }
- 在項目源文件中添加adlist.c ae.c zmalloc.c(這三個文件在redis的src文件夾下)
然後在頭文件wchar.h裏添加
#include <win32_types.h> //_off_t的定義
程序可以編譯通過,但是運行還是有點問題: