Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/143.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在windows上安装CLD库并绑定到Python_C++_Python_Github_Language Detection - Fatal编程技术网

C++ 在windows上安装CLD库并绑定到Python

C++ 在windows上安装CLD库并绑定到Python,c++,python,github,language-detection,C++,Python,Github,Language Detection,我需要在Python脚本中使用Chromium的Compact语言检测器库 顺便说一下,有两个项目利用了这个库,但是我在Windows7机器上设置它们时遇到了麻烦 我在()方面也遇到了一些类似的问题,但后来我发现了()。出于这个问题的目的,我将重点讨论Matts项目,因为它似乎更新得更频繁(但很高兴得到一个适用于任何一个项目的答案) 作为zip下载,并解压缩到本地驱动器 从CMD运行vcvarsall.bat 然后运行build.win.cmd批处理文件。这个 将生成的libcld.lib复制

我需要在Python脚本中使用Chromium的Compact语言检测器库

顺便说一下,有两个项目利用了这个库,但是我在Windows7机器上设置它们时遇到了麻烦

我在()方面也遇到了一些类似的问题,但后来我发现了()。出于这个问题的目的,我将重点讨论Matts项目,因为它似乎更新得更频繁(但很高兴得到一个适用于任何一个项目的答案)

  • 作为zip下载,并解压缩到本地驱动器
  • 从CMD运行vcvarsall.bat
  • 然后运行build.win.cmd批处理文件。这个
  • 将生成的libcld.lib复制到ports/python/cld.lib
  • 已尝试运行,但它返回以下第12行

    exceptions.TypeError:init()关键字必须是字符串

++编辑++ 我们发现:

setup.py在Windows上失败。解决这个问题的黑客解决方案是 pkgconfig返回dict{'define_macros':[('WIN32',None)], “库”:包}

我是一个新手,但不完全确定如何实施这项技术。有人能给我一些更详细的步骤吗?

试试这个补丁():


我运行了32位安装程序(我使用的是32位Python),现在可以从Python导入CLD,但它的行为不正确,并且有错误。我是git新手,我在哪里运行上面的代码,只需将n paste复制到CMD中?您可能需要安装。手动应用补丁可能是最快的:将
**pkgconfig('cld'))
中的
setup.py
行替换为
define\u macros=[('WIN32',None)],库=['libcld',include\u dirs=['\\\\\\\\\\\\\\\\']、库\\\\\'])
i尝试在另一台机器上运行此程序(具有类似的设置),并以相同的方式运行setup.py,这给了我一些错误。你有没有可能对这些可能的原因发表评论?最终使用了链接到的.exe。我在这两台机器上都使用了VS2010,python在这两台机器上都是2.7。不确定exe的最新版本,但它可以达到目的。谢谢
diff --git a/ports/python/setup.py b/ports/python/setup.py
index e1950c3..889f21a 100644
--- a/ports/python/setup.py
+++ b/ports/python/setup.py
@@ -9,7 +9,10 @@ def pkgconfig(*packages, **kw):

 module = Extension('cld',
                    ['pycldmodule.cc'],
-                   **pkgconfig('cld'))
+                   define_macros=[('WIN32', None)],
+                   libraries=['libcld'], 
+                   include_dirs=['..\\..\\'],
+                   library_dirs=['..\\..\\'])

 setup(name='cld',
       version='0.031415',