在Windows10中编译dilb时,出现了以下错误:

!图片

PS E:\dlib-19.22> py setup.py install
...
C:\ProgramData\Anaconda3\Library\include\gif_lib.h(286,61): error C2734: “GifAsciiTable8x8”: 如果不是外部的,则必须初始化常量对象 (编译源文件
E:\dlib-19.22\tools\python\src\vector.cpp) [E:\dlib-19.22\build\temp.win-amd64-3.9\Release\_dlib_pybind11.vcxproj]
C:\ProgramData\Anaconda3\Library\include\gif_lib.h(286,61): error C2734: “GifAsciiTable8x8”: 如果不是外部的,则必须初始化常量对象 (编译源文件
E:\dlib-19.22\tools\python\src\matrix.cpp) [E:\dlib-19.22\build\temp.win-amd64-3.9\Release\_dlib_pybind11.vcxproj]
C:\ProgramData\Anaconda3\Library\include\gif_lib.h(286,61): error C2734: “GifAsciiTable8x8”: 如果不是外部的,则必须初始化常量对象 (编译源文件
E:\dlib-19.22\tools\python\src\dlib.cpp) [E:\dlib-19.22\build\temp.win-amd64-3.9\Release\_dlib_pybind11.vcxproj]
C:\ProgramData\Anaconda3\Library\include\gif_lib.h(286,61): error C2734: “GifAsciiTable8x8”: 如果不是外部的,则必须初始化常量对象 (编译源文件
E:\dlib-19.22\tools\python\src\svm_c_trainer.cpp) [E:\dlib-19.22\build\temp.win-amd64-3.9\Release\_dlib_pybind11.vcxproj]
...

随后在Github上找到了问题的原因。
原来是因为Anaconda3附带的giflib有问题,导致编译错误。
只需要在命令后添加就可以解决
如:--no DLIB_GIF_SUPPORT

PS E:\dlib-19.22> py setup.py install --no DLIB_GIF_SUPPORT
...
Finished processing dependencies for dlib==19.22.0

成功!

Last modification:June 22, 2022
如果你觉得我文章对你有用的话,请我喝杯奶茶吧~