解决 Chrome Native Client SDK 证书错误

316 阅读1分钟

这两天在研究 Chrome 的 Native Client,就是那个建议用 WebAssembly 替代的技术。

研究这个过时的技术,是有个需求要和 v8 交互,而 Native Client 里面的 PPAPI 似乎能实现这个需求。

Chrome Developers 的文档写的是真不错,学习的目前只碰到一个坑 —— 安装 SDK 的时候,当执行 naclsdk list 的时候,会提示说 ca_certs 不合法(如下图)

image.png

解决方法首先打开 SDK 里面的 sdk_tools/download.py,然后注释掉 UrlOpen 里面的下面两行代码

def UrlOpen(url):
  request = fancy_urllib.FancyRequest(url)
  # ca_certs = os.path.join(SCRIPT_DIR, 'cacerts.txt')
  # request.set_ssl_info(ca_certs=ca_certs)
  url_opener = urllib2.build_opener(
      fancy_urllib.FancyProxyHandler(),
      fancy_urllib.FancyRedirectHandler(),
      fancy_urllib.FancyHTTPSHandler())
  return url_opener.open(request)

保存再次执行应该就能成功了。