From 7dd06567bb14e4fc72c4bfe77e5b7557bb795920 Mon Sep 17 00:00:00 2001 From: sofia Date: Sun, 17 Aug 2025 17:33:11 +0300 Subject: [PATCH] Make some logs better --- libtest.sh | 2 +- reid/src/ld.rs | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/libtest.sh b/libtest.sh index 948afbf..a013ade 100755 --- a/libtest.sh +++ b/libtest.sh @@ -16,7 +16,7 @@ BINARY="$(echo $1 | cut -d'.' -f1)"".out" echo $1 -cargo run -p reid $@ && \ +cargo run -p reid -- $@ && \ ./$BINARY ; echo "Return value: ""$?" ## Command from: clang -v hello.o -o test diff --git a/reid/src/ld.rs b/reid/src/ld.rs index fca2fa5..10959d6 100644 --- a/reid/src/ld.rs +++ b/reid/src/ld.rs @@ -25,20 +25,28 @@ impl LDRunner { let dyn_linker_path = find_objectfile(&self.dynamic_linker); let crt1_path = find_objectfile("crt1.o"); + let crti_path = find_objectfile("crti.o"); + let crtn_path = find_objectfile("crtn.o"); log::debug!("LDRunner: Using dynamic linker at: {:?}", dyn_linker_path); let mut ld = Command::new(&self.command); - ld.arg("-dynamic-linker").arg(dyn_linker_path).arg(crt1_path); + ld.arg("-dynamic-linker") + .arg(dyn_linker_path) + .arg(crt1_path) + .arg(crti_path); for library in &self.libraries { ld.arg(format!("-l{}", library)); } + ld.arg(crtn_path); ld.arg(input_path.to_str().unwrap()) .arg("-o") .arg(out_path.to_str().unwrap()); + log::debug!("{:#?}", ld); + log::debug!( "LDRunner: Executing linker to objfile at {:?} => {:?}", input_path,