Skip to content

gcc required -no-pie (at least for hello_world, at least for me) #1

Description

@rowanthorpe

When building and running hello_world.asm (on my GNU/Linux system) as per the README I got the following error:

% nasm -f elf64 hello_world.asm && gcc -o hello_world hello_world.o && ./hello_world
./hello_world: Symbol `printf' causes overflow in R_X86_64_PC32 relocation
[1]    24557 segmentation fault  ./hello_world

The -no-pie GCC flag was required to solve it, as per this stack-overflow answer:

% nasm -f elf64 hello_world.asm && gcc -no-pie -o hello_world hello_world.o && ./hello_world 
Res: Hello world!

It would be useful to add a note about this to the README, even as a footnote for people whose (more recent) GCC defaults to PIE.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions