Avoir passé une certaine quantité d'effort sur ce, je me dis qu'il pourrait être intéressant de partager certaines de mes conclusions. J'ai réussi à construire Clang + LLVM 3.4 sur Cygwin 1.7.28 (x86).
Cygwin spécifiques
La fixation de la machine les types integer
Une mise à jour récente de Cygwin semble avoir brisé l'un des système les en-têtes utilisés par Clang. Incomplet, ce patch a été fournie sur la Cygwin liste de diffusion. Voici la patch complet.
Inclure des répertoires pour le C++ de la bibliothèque standard
Clang++ (3.4) toujours le code en dur inclure des répertoires pour le C++ de la bibliothèque standard (il s'appuie sur celles fournies par GCC). Si les chemins d'accès sont incorrectes (comme c'est souvent le cas sur Cygwin), vous rencontrez des problèmes lors de l'inclusion de tout en-tête C++ (comme <iostream>). Deux méthodes possibles pour résoudre ce problème:
Vous pouvez ajouter les chemins corrects pour le code. C'est plutôt inflexible puisque vous auriez à recompiler Clang++ à chaque fois que cela change et cela prend beaucoup de temps sur Cygwin. Si vous voulez faire cela, vous pouvez trouver le code à clang/lib/Frontend/InitHeaderSearch.cpp sur la ligne 389.
Sinon, vous pouvez créer un lien symbolique où Clang attend d'eux.
Identifier les répertoires recherché par Clang++ en exécutant:
echo | clang++ -v -x c++ -
Vous devriez trouver quelque chose le long des lignes de
Il y en a probablement plusieurs des numéros de version différents X.Y.Z. Choisissez l'un d'eux, puis créez un lien symbolique vers l'emplacement correct:
ln -s A.B.C /usr/lib/gcc/i686-pc-cygwin/X.Y.Z
où A.B.C est la version de GCC qui est actuellement installé.
Couleur de diagnostic
Si vous voulez la couleur des messages d'erreur de Clang, assurez-vous de installer le ncurses paquet de développement (libncurses-devel) avec Cygwin d'Installation au préalable. Sans elle, Clang se replie sur ses incolore parce que LLVM ne serait pas en mesure de détecter si le terminal prend en charge les couleurs.
Vous pouvez toujours forcer les couleurs apparaissent avec -fcolor-diagnostics, mais du CCG linker va s'étouffer sur ce drapeau, ce qui le rend très facile à utiliser.
Indépendante du système
C'est le plus simple (et la plus longue) partie, et pour la plupart, tout en LLVM + Bruit de la documentation s'applique ici.
Télécharger de la source. Même si vous avez seulement besoin de Clang, vous aurez toujours besoin de la VERSION du code source.
Après l'extraction de deux Clang et LLVM, déplacez le Cliquetis du répertoire dans la tools sous-répertoire de LLVM.
mv clang-X.Y llvm-X.Y/tools/clang
Commencer par la configuration:
./configure --enable-optimized
Clang préfère choisir lui-même comme le compilateur, donc si vous n'avez pas de travail Clang installation et pourtant, la CC et CXX variables d'environnement pour le forcer à utiliser GCC au lieu.
Si tout va bien, vous pouvez commencer à construire & installation, qui va construire à la fois clang et llvm:
Clang (x86, x86_64) et LLVM (x86, x86_64) sont actuellement disponibles en tant que Cygwin paquets.
L'installation de l'environnement Cygwin permettrait de réduire une grande partie de votre problème
Quels sont-ils appelés? Parce que je n'en trouve pas 64 bits. J'ai ajouté les liens directs pour vous; regarde comme il est maintenant disponible pour la version 64 bits.
Voulez-vous développer llvm/clang ou de développer avec llvm/clang? Pour ce dernier cas, pourquoi ne pas installer llvm-3.1/clang fichiers binaires à partir de cygwin référentiel? Ils fonctionnent assez bien sur mon Windows 7.
Avoir passé une certaine quantité d'effort sur ce, je me dis qu'il pourrait être intéressant de partager certaines de mes conclusions. J'ai réussi à construire Clang + LLVM 3.4 sur Cygwin 1.7.28 (x86).
Cygwin spécifiques
La fixation de la machine les types integer
Une mise à jour récente de Cygwin semble avoir brisé l'un des système les en-têtes utilisés par Clang. Incomplet, ce patch a été fournie sur la Cygwin liste de diffusion. Voici la patch complet.
Inclure des répertoires pour le C++ de la bibliothèque standard
Clang++ (3.4) toujours le code en dur inclure des répertoires pour le C++ de la bibliothèque standard (il s'appuie sur celles fournies par GCC). Si les chemins d'accès sont incorrectes (comme c'est souvent le cas sur Cygwin), vous rencontrez des problèmes lors de l'inclusion de tout en-tête C++ (comme
<iostream>
). Deux méthodes possibles pour résoudre ce problème:Vous pouvez ajouter les chemins corrects pour le code. C'est plutôt inflexible puisque vous auriez à recompiler Clang++ à chaque fois que cela change et cela prend beaucoup de temps sur Cygwin. Si vous voulez faire cela, vous pouvez trouver le code à
clang/lib/Frontend/InitHeaderSearch.cpp
sur la ligne 389.Sinon, vous pouvez créer un lien symbolique où Clang attend d'eux.
Identifier les répertoires recherché par Clang++ en exécutant:
Vous devriez trouver quelque chose le long des lignes de
Il y en a probablement plusieurs des numéros de version différents
X.Y.Z
. Choisissez l'un d'eux, puis créez un lien symbolique vers l'emplacement correct:où
A.B.C
est la version de GCC qui est actuellement installé.Couleur de diagnostic
Si vous voulez la couleur des messages d'erreur de Clang, assurez-vous de installer le ncurses paquet de développement (
libncurses-devel
) avec Cygwin d'Installation au préalable. Sans elle, Clang se replie sur ses incolore parce que LLVM ne serait pas en mesure de détecter si le terminal prend en charge les couleurs.Vous pouvez toujours forcer les couleurs apparaissent avec
-fcolor-diagnostics
, mais du CCG linker va s'étouffer sur ce drapeau, ce qui le rend très facile à utiliser.Indépendante du système
C'est le plus simple (et la plus longue) partie, et pour la plupart, tout en LLVM + Bruit de la documentation s'applique ici.
Télécharger de la source. Même si vous avez seulement besoin de Clang, vous aurez toujours besoin de la VERSION du code source.
Après l'extraction de deux Clang et LLVM, déplacez le Cliquetis du répertoire dans la
tools
sous-répertoire de LLVM.Commencer par la configuration:
Clang préfère choisir lui-même comme le compilateur, donc si vous n'avez pas de travail Clang installation et pourtant, la
CC
etCXX
variables d'environnement pour le forcer à utiliser GCC au lieu.Si tout va bien, vous pouvez commencer à construire & installation, qui va construire à la fois clang et llvm:
OriginalL'auteur Rufflewind
Clang (x86, x86_64) et LLVM (x86, x86_64) sont actuellement disponibles en tant que Cygwin paquets.
L'installation de l'environnement Cygwin permettrait de réduire une grande partie de votre problème
J'ai ajouté les liens directs pour vous; regarde comme il est maintenant disponible pour la version 64 bits.
OriginalL'auteur Shenal Silva
Voulez-vous développer llvm/clang ou de développer avec llvm/clang? Pour ce dernier cas, pourquoi ne pas installer llvm-3.1/clang fichiers binaires à partir de cygwin référentiel? Ils fonctionnent assez bien sur mon Windows 7.
OriginalL'auteur jichi