IPv6-only的问题

sorry,8天以前。

我替换完出现很多错误,能具体说下怎么替换的吗

是啊,你解决了吗?

我也是碰到这个问题,请问怎么解决的???

cocos2d-x-2.2.6\external\libwebsockets\win32\include\libwebsockets.h(113): fatal error C1083: 无法打开包括文件: “lws_config.h”: No such file or directory

我在 cocos2d-x-3rd-party-libs-bin-2-deps-7\external\libwebsockets\win32\include 没有看到win的lws_config.h
@minggo

@快乐居士 v2的windows版本确实是少了文件,是我的责任。我已经上传了,你看一下。
@joiyao 谢谢分享,我看一下curl是否发布了新版本,如果有新版本的话,我会更新。
@H3100402060 websockets库升级带且不兼容,需要对WebSockets.cpp进行修改。都是一些数据结构的改变,你可以参考这个修改:https://github.com/cocos2d/cocos2d-x/pull/15666/commits/43dd696750014efa9b0419a59f72ba1c4cdaba50
@yuanyemao 从@joiyao的分享来看,是curl库本身的问题,你可以先用域名
@xingfude_123 windows的编译你可以到对应库的官网看编译方法。目前我们也没有自动化方案。之前这两个库的windows版本也不是我编译的,@zilongshanren

刚才看了curl的网站,还没有出新版本。如果有开发者自己想从某个commit编译的话,可以参考我们的源码编译仓库:https://github.com/cocos2d/cocos2d-x-3rd-party-libs-src。不过目前没法自动编译出windows平台。

@minggo 感谢回复,windows版本少的文件你上传在哪里呀?我在github没找到

标记一下,已经找到
https://github.com/cocos2d/cocos2d-x-3rd-party-libs-bin/commit/07d6c591cad38cf14f8a9e844b09bc4da8e5e696

但是链接库好像有问题

1>websockets.lib(libwebsockets.obj) : error LNK2019: 无法解析的外部符号 __imp__closesocket@4,该符号在函数 _lws_close_free_wsi 中被引用
1>websockets.lib(client-handshake.obj) : error LNK2001: 无法解析的外部符号 __imp__closesocket@4
1>websockets.lib(libwebsockets.obj) : error LNK2019: 无法解析的外部符号 __imp__getpeername@12,该符号在函数 _lws_get_peer_addresses 中被引用
1>websockets.lib(libwebsockets.obj) : error LNK2019: 无法解析的外部符号 __imp__shutdown@8,该符号在函数 _lws_close_free_wsi 中被引用
1>websockets.lib(client.obj) : error LNK2001: 无法解析的外部符号 __imp__WSAGetLastError@0
1>websockets.lib(libwebsockets.obj) : error LNK2019: 无法解析的外部符号 __imp__WSAGetLastError@0,该符号在函数 _lws_get_peer_addresses 中被引用
1>websockets.lib(output.obj) : error LNK2001: 无法解析的外部符号 __imp__WSAGetLastError@0
1>websockets.lib(client-handshake.obj) : error LNK2001: 无法解析的外部符号 __imp__WSAGetLastError@0
1>websockets.lib(lws-plat-win.obj) : error LNK2001: 无法解析的外部符号 __imp__WSAGetLastError@0
1>websockets.lib(libwebsockets.obj) : error LNK2019: 无法解析的外部符号 __imp__getaddrinfo@16,该符号在函数 _lws_get_addresses 中被引用
1>websockets.lib(client-handshake.obj) : error LNK2001: 无法解析的外部符号 __imp__getaddrinfo@16
1>websockets.lib(libwebsockets.obj) : error LNK2019: 无法解析的外部符号 __imp__freeaddrinfo@4,该符号在函数 _lws_get_addresses 中被引用
1>websockets.lib(client-handshake.obj) : error LNK2001: 无法解析的外部符号 __imp__freeaddrinfo@4
1>websockets.lib(libwebsockets.obj) : error LNK2019: 无法解析的外部符号 __imp__getnameinfo@28,该符号在函数 _lws_get_addresses 中被引用
1>websockets.lib(output.obj) : error LNK2019: 无法解析的外部符号 __imp__recv@16,该符号在函数 _lws_ssl_capable_read_no_ssl 中被引用
1>websockets.lib(client.obj) : error LNK2001: 无法解析的外部符号 __imp__recv@16
1>websockets.lib(output.obj) : error LNK2019: 无法解析的外部符号 __imp__send@16,该符号在函数 _lws_ssl_capable_write_no_ssl 中被引用
1>websockets.lib(client-handshake.obj) : error LNK2001: 无法解析的外部符号 __imp__send@16
1>websockets.lib(client-handshake.obj) : error LNK2019: 无法解析的外部符号 __imp__bind@12,该符号在函数 _lws_client_connect_2 中被引用
1>websockets.lib(client-handshake.obj) : error LNK2019: 无法解析的外部符号 __imp__connect@12,该符号在函数 _lws_client_connect_2 中被引用
1>websockets.lib(client-handshake.obj) : error LNK2019: 无法解析的外部符号 __imp__htons@4,该符号在函数 _lws_client_connect_2 中被引用
1>websockets.lib(client-handshake.obj) : error LNK2019: 无法解析的外部符号 __imp__socket@12,该符号在函数 _lws_client_connect_2 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__ioctlsocket@12,该符号在函数 _lws_plat_set_socket_options 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__inet_addr@4,该符号在函数 _lws_interface_to_sa 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__select@20,该符号在函数 _lws_poll_listen_fd 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__setsockopt@20,该符号在函数 _lws_plat_set_socket_options 中被引用
1>websockets.lib(client.obj) : error LNK2001: 无法解析的外部符号 __imp__setsockopt@20
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__gethostbyname@4,该符号在函数 _lws_interface_to_sa 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__getprotobyname@4,该符号在函数 _lws_plat_set_socket_options 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__WSAStartup@8,该符号在函数 _lws_plat_context_early_init 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__WSACleanup@0,该符号在函数 _lws_plat_context_late_destroy 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__WSACloseEvent@4,该符号在函数 _lws_plat_context_early_destroy 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__WSACreateEvent@0,该符号在函数 _lws_plat_init 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__WSAEnumNetworkEvents@12,该符号在函数 _lws_plat_service 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__WSAEventSelect@12,该符号在函数 _lws_plat_change_pollfd 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__WSAIoctl@36,该符号在函数 _lws_plat_set_socket_options 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__WSAResetEvent@4,该符号在函数 _lws_plat_service 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__WSASetEvent@4,该符号在函数 _lws_cancel_service 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__WSAWaitForMultipleEvents@20,该符号在函数 _lws_plat_service 中被引用
1>websockets.lib(lws-plat-win.obj) : error LNK2019: 无法解析的外部符号 __imp__WSAAddressToStringW@20,该符号在函数 _lws_plat_inet_ntop 中被引用
1>G:\PhoneGameFrame\jd\Project\proj.win32\Debug.win32\libExtensions.dll : fatal error LNK1120: 30 个无法解析的外部命令
========== 生成:  成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

http://blog.csdn.net/tunnel115/article/details/3176282你看这个

OK 谢谢。

总结了下我们在 quick-3.3 适配 ipv6 的工作, QUICK-COCOS2D-X 适配 IPV6, 希望能给还没有适配的同学带来一些帮助.

1赞

我的2.x的也是这样,我启动就调用了这个,结果应用启动后闪退

@minggo 老大,我们用的是2.X的引擎为了支持IPv6升级了3rd-party-libs,提审也通过了,但是自己用5S以上的机子安装了释放的新包,结果闪退,iPhone5都没事,看了崩溃日志,调用了HttpClient造成的,不知道哪出问题了很奇怪,难道不支持64bit吗?XCode我把程序直接下载到我iPhone 5S都没事

Thread 11 Crashed:
0   XXXPoker                     	0x0000000100803374 curl_easy_cleanup + 24
1   XXXPoker                     	0x0000000100123b70 cocos2d::extension::CURLRaii::~CURLRaii() (HttpClient.cpp:288)
2   XXXPoker                     	0x00000001001233e4 cocos2d::extension::networkThread(void*) (HttpClient.cpp:192)
3   libsystem_pthread.dylib       	0x0000000180837b28 _pthread_body + 156
4   libsystem_pthread.dylib       	0x0000000180837a8c _pthread_body + 0
5   libsystem_pthread.dylib       	0x0000000180835028 thread_start + 4

[V2 branch]Fixed HttpClient crash on 64bit system.:joy:

请问你后来解决了吗 我也遇到了这个问题 审核被拒

请问您的问题解决了吗?我们也是这个问题,都拒绝2次了。解决了麻烦指教一下。

被拒绝都是因为IPV6的支持问题吗?我们也正在提交到苹果那边看看。

我也是自建IPV6网络可以,然后被拒2次,后面在网友那边得知是美国服务器IPV6访问IPV4很有可能连不上,就给服务器配了NAT64地址,并解析,然后本地ipv4网络websocket居然连接不上了。。。怎么破。

同一个网络。给域名加了AAAA解析,然后h5版本可以连接websocket连接没问题,真机就不行了。是不是本身库有什么问题啊

如楼上说的,可能是CURL库本身的问题:https://github.com/curl/curl/issues/863
不过CURL还没有发新版本,得等它发新版本。