Skip to content

executor: read-only segment has dynamic relocations #5330

@koulq

Description

@koulq

Describe the bug
For arm64 environment, executor compilation error:

mkdir -p ./bin/linux_arm64
g++ -o ./bin/linux_arm64/syz-executor executor/executor.cc \
        -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -Wno-stringop-overflow -Wno-array-bounds -Wno-format-overflow -Wno-unused-but-set-variable -Wno-unused-command-line-argument -static-pie -std=c++17 -I. -Iexecutor/_include  -DGOOS_linux=1 -DGOARCH_arm64=1 \
        -DHOSTGOOS_linux=1 -DGIT_REVISION=\"6f888b7530906167ecb1f5a35e060fec736d6d32\"
/bin/ld: /tmp/ccbc8Dof.o: in function `test_cover_filter()':
executor.cc:(.text+0x102bc): warning: the use of `tempnam' is dangerous, better use `mkstemp'
/bin/ld: /tmp/ccbc8Dof.o: in function `Connection::Connect(char const*, char const*)':
executor.cc:(.text._ZN10Connection7ConnectEPKcS1_[_ZN10Connection7ConnectEPKcS1_]+0xd0): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/bin/ld: read-only segment has dynamic relocations
collect2: error: ld returned 1 exit status
make: *** [Makefile:135: executor] Error 1
make: *** Waiting for unfinished jobs....

Modify the sys/targets/targets.go file, the arm64 architecture plus the compilation parameters: -fPIC, then the compilation passes:
image

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugBug in the syzkaller project (e.g. a crash or misbehavior).

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions