Les fichiers sources en question se trouvent sur un partage réseau hébergé sur une machine Win7, mais les liens symboliques sont créés sur ce Mac à l'aide de la méthode suivante ln -sf
Ce sont des fichiers .h, et parfois un ou plusieurs d'entre eux ne sont pas trouvés par le compilateur C++. J'obtiens une erreur du type "foo.h is not found", alors que je peux le voir et lire son contenu (lié) à l'aide du Finder.
Ma solution consiste à copier le fichier au lieu de créer un lien symbolique vers celui-ci. Ensuite, je constate que les autres fichiers (fichiers symlink .h dans le même répertoire, liant des fichiers dans le même répertoire source ; tout comme le "mauvais" fichier) n'ont aucun problème.
Le choix de la ou des personnes concernées varie également.
Une idée de ce qui pourrait causer cela ? Cela a commencé lors de la mise à jour de Mac OSX vers Mavericks, qui a un code réseau CIFS différent. Cela se produit toujours avec Yosemite.
Notez que le lien symbolique fait le travail sur le Mac en général ; je le fais sur ce Mac, et même quand il y a une erreur dans Xcode, je peux voir le contenu du fichier résolu comme prévu dans la vue Colonnes du Finder, ou avec cat
à l'invite de bash. C'est seulement le problème du compilateur de Xcode.
Plus de détails
Les fichiers font partie d'un "cadre" et le lien (exemple)
cd /Volumes/There/blah/blah2/blah3/blah3/CocoaPods/Pods/BuildHeaders/Cheeseburger
ln -sf ../../Cheeseburger/Burger/head1.h
a bunch of files in same path, head2.h, head3.h, etc.
cd ../../Headers/Cheeseburger
ln -sf ../../Cheeseburger/Burger/head1.h
etc.
J'obtiens une erreur en trouvant head5.h, et les autres fonctionnent bien.