collect2: error: ld вернул 1 состояние выхода при компиляции openssl - PullRequest
0 голосов
/ 27 октября 2019

Я пытаюсь кросс-компилировать openssl.

./Configure linux-generic32 --prefix=/usr/myopenssl

make CC=/usr/bin/arm-linux-gnueabi-gcc AR=/usr/bin/arm-linux-gnueabi-ar RANLIB=/usr/bin/arm-linux-gnueabi-ranlib CFLAGS="-march=armv6 -static"

Но в итоге получаю эту ошибку:

/usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/lib/libc.a(malloc.o): in function `tcache_init.part.0':
(.text+0x3eb8): dangerous relocation: unsupported relocation
/usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/bin/ld: /usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/lib/libc.a(malloc.o)(.text+0x4e9c): R_ARM_TLS_LE32 relocation not permitted in shared object
/usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/lib/libc.a(malloc.o): in function `__malloc':
(.text+0x4e9c): dangerous relocation: unsupported relocation
/usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/bin/ld: /usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/lib/libc.a(malloc.o)(.text+0x5330): R_ARM_TLS_LE32 relocation not permitted in shared object
/usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/lib/libc.a(malloc.o): in function `__free':
(.text+0x5330): dangerous relocation: unsupported relocation
/usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/bin/ld: /usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/lib/libc.a(malloc.o)(.text+0x549c): R_ARM_TLS_LE32 relocation not permitted in shared object
/usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/lib/libc.a(malloc.o): in function `__malloc_arena_thread_freeres':
(.text+0x549c): dangerous relocation: unsupported relocation
/usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/bin/ld: /usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/lib/libc.a(malloc.o)(.text+0x5810): R_ARM_TLS_LE32 relocation not permitted in shared object
/usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/lib/libc.a(malloc.o): in function `__realloc':
(.text+0x5810): dangerous relocation: unsupported relocation
/usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/bin/ld: /usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/lib/libc.a(malloc.o)(.text+0x5cec): R_ARM_TLS_LE32 relocation not permitted in shared object
/usr/lib/gcc-cross/arm-linux-gnueabi/9/../../../../arm-linux-gnueabi/lib/libc.a(malloc.o): in function `__calloc':
(.text+0x5cec): dangerous relocation: unsupported relocation
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:3240: libcrypto.so.3] Error 1
make[1]: Leaving directory '/root/Desktop/openssl-master'
    make: *** [Makefile:1800: all] Error 2


Что это значит? Если я попытаюсь скомпилировать без "-static" - это сработает.

...