Je suis sur un Mac 10.9.5, et je suis en train d'installer Dlib pour python d'iciConda et Macports conflits X11 lors de l'installation Dlib
http://dlib.net/files/dlib-18.16.tar.bz2
Mon installation de python a été fait il y a longtemps, avec conda
:
Current conda install:
platform : osx-64
conda version : 3.16.0
conda-build version : 1.3.5
python version : 2.7.10.final.0
requests version : 2.7.0
root environment : //anaconda (writable)
default environment : //anaconda
envs directories : //anaconda/envs
package cache : //anaconda/pkgs
channel URLs : https://repo.continuum.io/pkgs/free/osx-64/
https://repo.continuum.io/pkgs/free/noarch/
https://repo.continuum.io/pkgs/pro/osx-64/
https://repo.continuum.io/pkgs/pro/noarch/
config file : None
is foreign system : False
Pour installer Dlib j'ai suivi la routine suivante:
$ tar xvjf dlib-18.16.tar.bz2
$ cd dlib-18.16/python_examples/
$ mkdir build
$ cd build
$ cmake ../../tools/python
$ cmake --build . --config Release --target install
comme spécifié dans le fichier compile_dlib_python_module.bat
à /Users/javier/dlib-18.16/python_examples
Je suis arrivé avec des erreurs liées Xlocale.h
et Xosdefs.h
.
Ces fichiers ont été trouvés à /opt/local/include/X11
et /opt/X11/include/X11
. J'ai copié ces fichiers dans /anaconda/include/X11
qui, je pense, a résolu le problème, car je ne reçois pas les messages d'erreur liés à ces deux.
Je cours:
$ cmake --build . --config Release --target install
et maintenant je BEAUCOUP des messages d'erreur comme:
[ 1%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_widgets/fonts.o
/Users/javier/dlib-18.16/dlib/gui_widgets/nativefont.h:313:21: error: use of undeclared identifier 'XAllocColor'
XAllocColor(d, cmap, &xcol);
/Users/javier/dlib-18.16/dlib/gui_widgets/nativefont.h:319:36: error: use of undeclared identifier 'XmbTextExtents'; did you mean 'XTextExtents'?
return XmbTextExtents(fs, str, len, ink, logical);
^~~~~~~~~~~~~~
XTextExtents
/Users/javier/dlib-18.16/dlib/gui_widgets/nativefont.h:318:43: note: 'XTextExtents' declared here
inline static int XTextExtents (XFontSet fs, char *str, int len, XRectangle *ink, XRectangle *logical){
Tous les fichiers connexes, comme XmbTextExtents
sont en /opt/X11/share/man/man3
et les versions zippées (XmbTextExtents.3.gz
) sont ici /opt/local/share/man/man3
.
L'erreur provient du fait que l'installation dlib se penche sur /anaconda/include/X11/
alors qu'elle devrait ressembler à /opt/X11/include/X11
(je suppose). J'ai essayé de modifier les touches correspondantes dans le fichier CMakeCache.txt
afin qu'ils regardent comme:
x11_path:FILEPATH=/opt/X11/include
//Path to a file.
xlib_path:PATH=/opt/X11/include/X11
Mais cela ne fonctionne pas. On m'a conseillé de commencer "frais" avec Homebrew (c.-à-d. Enlever toute trace de conda et macports et refaire toute l'installation avec Homebrew), mais cela ressemble à une "solution" plutôt drastique, étant donné que je avoir A LOT de choses déjà installées.
Juste au cas où est de toute utilisation, les lignes pertinentes dans mon fichier .profile ressemblent à ceci:
setenv PATH /opt/local/bin:/opt/local/sbin:$PATH
# anaconda path takes priority
setenv PATH /anaconda/bin:$PATH
Merci d'avance pour votre temps.
Essayez d'utiliser la version plus récente de dlib. Vous pouvez également installer pip maintenant dlib et cela devrait fonctionner. –
Bonjour David, merci pour votre réponse. pip install dlib renvoie la même erreur (car suit la même routine :)) et il en va de même pour la dernière version de dlib, puisque le problème est lié à l'installation de X11 et au fait que cmake regarde/anaconda/include et DEVRAIT Ne pas regarder là-bas. Changer le 'CMakeCache.Le fichier txt (comme suggéré dans les instructions) n'a aucun effet pour moi. Je pourrais faire quelque chose de mal. Je suis presque convaincu de passer à Homebrew. – Javier