boost asio在VS2008下的編譯錯誤

2021-09-05 17:47:57 字數 442 閱讀 7215

boost::asio在vs2008下的編譯錯誤。

公升級vs到vs2008後,編譯boost::asio出錯,

old_win_sdk_compat.hpp:58行報錯,該行**是:

struct in6_addr_emulation

u_char s6_addr[16];

究其原因,是因為c:\program files\microsoft sdks\windows\v6.0a\include\in6addr.h:36中有這樣一句

#define s6_addr _s6_un._s6_u8

這樣就導致被重定義。

由於現在不用ipv6的相關部分,並且vs2008和也在不斷公升級中,估計asio的下一版會注意到此問題的。暫且注釋該行(因為是在c盤,vista底下需要管理員許可權),該編譯錯誤即可消失,各功能也能正常使用,先就這樣用一下了。

VS2008的解決方案檔案,以讓VS2005開啟它

動手修改vs2008的解決方案檔案,以讓vs2005開啟它 1 用記事本開啟解決方案檔案 解決方案名.sln 然後修改最上面兩行為如下 microsoft visual studio solution file,format version 9.00 visual studio 2005 2 用記事...

先裝了BCG,如何配置後來安裝的vs2005?

1.在vs2005中進行如下設定 工具 選項 專案和解決方案 vc 目錄 在包含檔案中新增一條新的記錄 安裝目錄 bcgcbpro 在庫檔案中新增一條新的記錄 安裝目錄 bin 2.在的安裝目錄 bin中找到 bcgcbpro d.dll及bcgcbpro dll 表示版本號 複製乙份到system...

Vs2013編譯Boost asio時出現的錯誤

error lnk2019 無法解析的外部符號 class boost system error category const cdecl boost system system category void system category system boost yaabverror catego...