Ich testete SCons Standard-Hardlink-Verhalten.Wie SCons Hardlinks Quellen in Variantenverzeichnis?
Ich erwarte, dass eine Änderung in der Hardlink-Datei in der Variante dir auch in der ursprünglichen Datei widerspiegelt wird. Aber das passiert nicht.
Ist Hardlinking wirklich ein Standardverhalten wie in SCons doc angegeben oder es kopiert nur die Dateien im Variantenverzeichnis?
EDIT:
Einzelheiten über meine Implementierungen/Konfigurationen:
Ich verwende VariantDir mit einem SConscript in der Wurzel des Projekts
Doppelte Option ist in VariantDir
Keine doppelte Option in der Befehlszeile (Standard).
Ich benutze meine eigenen benutzerdefinierten Tools. Ich verwende nur den Programm-Builder aus den standardmäßig in SCons verfügbaren Builders.
Ich habe versucht, die folgenden Flags: Hard-Soft-Copy (Standard), Soft-Hard-Copy, Hard-Copy, Soft-Copy oder Kopie.
Keine von ihnen wird mir eine echte harte Link-Kopie zur Verfügung stellen.
Ich erwarte, dass die folgende:
Wenn ich eine Quelldatei in Variante dir die Änderung in der Originaldatei reflektiert wird ändern (an der ursprünglichen Stelle), da die Datei in Variante dir ein harter Link ist.
Stattdessen wird eine Änderung in der Quelldatei im Variantenverzeichnis nicht in der Originaldatei wiedergegeben.
EDIT 2:
Nach dem Ausführen --debug = duplizieren ich für jede Datei bekam im Abhängigkeitszyklus ähnlich eine Meldung berücksichtigt dies:
dup: relinking variant 'relative_path_to_file' from 'absolute_path'
Dies hängt weitgehend von den Einstellungen in Ihren SConstruct (s) ab, insbesondere von der Option "duplizieren". Kannst du etwas mehr darüber erzählen, was du versucht hast, welche Befehle du ausführst und welche Art von Ausgabe du erwartest? – dirkbaechle
Ich habe einige Kommentare zu meiner Implementierung hinzugefügt. –
Bitte überprüfen Sie, ob Ihr Betriebssystem und Ihre Python-Version die erforderliche "os.link" -Methode/das entsprechende Attribut für eine ordnungsgemäße feste Verbindung bieten. Sie können auch die Befehlszeile '' --debug = duplicate'' angeben, um zu überprüfen, ob SCons überhaupt versucht, Hard/Soft Links zu erstellen, wenn Sie Ihre aktuelle Konfiguration verwenden. Bitte melde zurück, was du in der Ausgabe siehst ... – dirkbaechle