На Linux
file1.s:
.text
.globl MyFunc
Func:
....
call my_jump
ret
file2.h:
extern "C" FUNC_NO_RETURN void my_jump();
file3.cpp:
extern "C" __attribute__((noinline)) void my_jump()
{
return;
}
при связывании моего модуля, который вызывает «MyFunc», я получаю следующую ошибку: (прежде, чем добавить вызов my_jump внутри кода asm, все было в порядке)
"relocation R_X86_64_PC32 against 'longjmp_hack' can not be used when making a shared object; recompile with -fPIC"
есть идеи?