Ich habe ein Projekt, wo ich einen Abschnitt einer ELF-Datei entfernen und durch einen anderen Abschnitt mit leicht modifizierten Inhalten ersetzen muss. Ich konnte zuerst den ursprünglichen Abschnitt entfernen und dann meinen gewünschten Abschnitt mit objcopy hinzufügen. Aber ich bekomme immer die Warnung, dass:Wie ersetzt man einen Abschnitt einer Elf-Datei durch einen anderen mit objcopy oder libelf, so dass es in den Speicher geladen wird?
warning: allocated section `.nv_fatbin' not in segment
Diese im Abschnitt führt nicht in den Speicher geladen zu werden und damit die gewünschte Funktionalität nicht erreicht wird.
Was wäre der beste Weg, um es hinzuzufügen und es zurück in das Segment zu bringen?
libelf? Oder kann dies mit objcopy auch erreicht werden?
Linker-Skript, denke ich. https://cygwin.com/ml/binutils/2003-05/msg00704.html. Es wäre klug zu sagen, was platofrm/tools verwenden Sie –
Ich habe versucht, eine Binärdatei auf einem Standard-Ubuntu-System zu bearbeiten. Da ich neu dabei bin, verstehe ich den Ansatz des Linker-Scripts leider nicht ganz. Ich habe auch keinen Zugriff auf den Quellcode. Würde das Linker-Skript nur auf der Binärdatei arbeiten? – Abhay
Nein, Linker-Skript funktioniert, wenn Sie die Dinge miteinander verknüpfen, um die Binärdatei zu erstellen. –