LearnOS
                                
                                
                                
                                    LearnOS copied to clipboard
                            
                            
                            
                        loader.elf seems to output as "executable" and ld refuses to link it
I'm not sure if this is just because of changes in the new versions, but i'm getting the following:
ld: cannot use executable file 'debug/elf/loader.elf' as input to a link
If I run file on it it says:
debug/elf/loader.elf: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, with debug_info, not stripped
                                    
                                    
                                    
                                
Looks like starting from ld version 2.36.1 you need to pass the -r flag to make it output a relocatable object.
- wsl ld -m elf_i386 -nostdlib -T ld/loader.ld debug/obj/*.o -o debug/elf/loader.elf
+ wsl ld -r -m elf_i386 -nostdlib -T ld/loader.ld debug/obj/*.o -o debug/elf/loader.elf
https://stackoverflow.com/questions/68622938/new-versions-of-ld-cannot-take-elf-files-as-input-to-link