如何在没有GUI支持的情况下为python构建和安装dlib? 背景:问题:

问题描述

背景:

我正在AWS jupyter‍ ec2实例(使用Fedora Linux)上运行‍ sagemaker笔记本,我的要求之一是dlib。 但是,dlib认情况下)使用xorg's x11库来提供GUI支持,并且这些库未安装在sagemaker实例上。我不需要GUI支持,并且sagemaker不支持yum安装,因此我试图在没有它们的情况下进行构建。

我已经克隆了dlib的github存储库,并尝试使用python setup.py进行构建,这会引发x11错误。我通读了网站,上面写着you can define the DLIB_NO_GUI_SUPPORT preprocessor directive to compile without GUI support。听起来不错!我通读了setup.py文件,发现可以通过运行python setup.py x DLIB_NO_GUI_SUPPORT添加文件,其中x是[--no--set--compiler-flags之一,和-G]。 我不知道是哪一个,所以我都尝试了:

  • python setup.py --no DLIB_NO_GUI_SUPPORT
  • python setup.py --set DLIB_NO_GUI_SUPPORT
  • python setup.py --compiler-flags DLIB_NO_GUI_SUPPORT
  • python setup.py -G DLIB_NO_GUI_SUPPORT

他们都没有工作。

问题:

使用DLIB_NO_GUI_SUPPORTdlib设置setup.py的预处理器指令的正确语法是什么?

解决方法

您可以尝试先构建源,将-D DLIB_NO_GUI_SUPPORT传递给cmake。然后,您可以像以前一样安装python包装器。