Relative Symlinks werden im Unterverzeichnis nicht aufgelöst

Relative Symlinks werden im Unterverzeichnis nicht aufgelöst

Ich habe folgendes Verzeichnislayout:

/home/me/mydir
  \- tiller -> ./cache/git-repo1/subdir1/tiller
  \- makefiles -> ./cache/git-repo2/subdir2/makefiles

Wenn ich drin bin /home/me/mydirund tippe, ls -lerhalte ich wie erwartet das oben genannte.

Wenn ich jedoch in ändere /home/me/mydir/tillerund eingebe, ls ../makefileserhalte ich eine Fehlermeldung:ls: ../makefiles: No such file or directory

Wie kann ich /home/me/mydir/makefilesüber einen relativen Pfad darauf zugreifen /home/me/mydir/tiller, oder ist die Verwendung eines absoluten Pfads meine einzige Option?

Bearbeiten: Ich glaube, ich treffeDas. Gibt es eine Lösung? Ich muss wirklich <cmd> ../makefilesvon innen heraus arbeiten /home/me/mydir/tiller.

Antwort1

Da ich tatsächlich möchte, dass Includes in Makefiles funktionieren, habe ich mein so geändert, includedass es einen Wert aus einer Umgebungsvariablen übernimmt, die ich auf den absoluten Pfad von gesetzt habe /home/me/mydir, also:

CACHE_ROOT?=..
include $(CACHE_ROOT)/makefiles/base.mk

Nach dem Lesendiese tolle Antwortwurde mir klar, dass absolute Pfade die einzige Lösung waren.

verwandte Informationen