我正在使用Cygwin环境在Windows 7下构建gnu C / C ++编译器工具。 构建glibc时出现以下错误。我已经尝试通过glibc 2.30的源glibc 2.23。 在构建它们的所有过程中,链接器都显示相同的错误:对'_DYNAMIC'的未定义引用
我正在尝试构建一个将在Windows下运行的交叉工具,该工具将生成在Linux OS上运行的linux elf可执行文件。
我想知道是否有人可以帮助
我使用了bin utils 2.30和2.32
Linux标头3.xx至5.xx
Gcc 4.9.1至9.1.0 Glibc 2.23到2.30
target = i686-elf
mv -f /home/RahmanA/src/gcc_port_4.9.1/build-glibc/elf/rtld-libc.aT /home/RahmanA/src/gcc_port_4.9.1/build-glibc/elf/rtld-libc.a
make[3]: Leaving directory '/home/RahmanA/src/gcc_port_4.9.1/glibc-2.23/elf'
i686-elf-gcc -nostdlib -nostartfiles -r -o /home/RahmanA/src/gcc_port_4.9.1/build-glibc/elf/librtld.os '-Wl,-(' /home/RahmanA/src/gcc_port_4.9.1/build-glibc/elf/dl-allobjs.os /home/RahmanA/src/gcc_port_4.9.1/build-glibc/elf/rtld-libc.a -lgcc '-Wl,-)' \
-Wl,-Map,/home/RahmanA/src/gcc_port_4.9.1/build-glibc/elf/librtld.os.map
i686-elf-gcc -nostdlib -nostartfiles -shared -o /home/RahmanA/src/gcc_port_4.9.1/build-glibc/elf/ld.so.new \
-Wl,-z,relro -Wl,--hash-style=both -Wl,-z,defs \
/home/RahmanA/src/gcc_port_4.9.1/build-glibc/elf/librtld.os -Wl,--version-script=/home/RahmanA/src/gcc_port_4.9.1/build-glibc/ld.map \
-Wl,-soname=ld-linux.so.2 \
-Wl,-defsym=_begin=0
/home/RahmanA/src/gcc_port_4.9.1/build-glibc/elf/librtld.os: In function `elf_machine_load_address':
**/home/RahmanA/src/gcc_port_4.9.1/glibc-2.23/elf/../sysdeps/i386/dl-machine.h:58: undefined reference to `_DYNAMIC'
/home/RahmanA/src/gcc_port_4.9.1/build-glibc/elf/librtld.os: In function `elf_get_dynamic_info':
/home/RahmanA/src/gcc_port_4.9.1/glibc-2.23/elf/get-dynamic-info.h:45: undefined reference to `_DYNAMIC'**