解决 "darknet.elf" 编译错误: 无法找到库文件
'Building target: darknet.elf' 'Invoking: ARM v8 gcc linker' aarch64-none-elf-gcc -LF:/AXU7EV/vivido_test/axi_gpio/axi_darknet/axi_darknet/export/axi_darknet/sw/axi_darknet/standalone_domain/bsplib/lib -o 'darknet.elf' ./src/main.o ./src/platform.o -l-Wl,--start-group,-lxil,-lgcc,-lc,--end-group -l'F:/project/darknet-master/libdarknet.a' d:/xilinx/vitis/2020.1/gnu/aarch64/nt/aarch64-none/x86_64-oesdk-mingw32/usr/bin/aarch64-xilinx-elf/../../libexec/aarch64-xilinx-elf/gcc/aarch64-xilinx-elf/9.2.0/real-ld.exe: cannot find -l-Wl,--start-group,-lxil,-lgcc,-lc,--end-group d:/xilinx/vitis/2020.1/gnu/aarch64/nt/aarch64-none/x86_64-oesdk-mingw32/usr/bin/aarch64-xilinx-elf/../../libexec/aarch64-xilinx-elf/gcc/aarch64-xilinx-elf/9.2.0/real-ld.exe: cannot find -lF:/project/darknet-master/libdarknet.a collect2.exe: error: ld returned 1 exit status 'Finished building target: darknet.elf' ' ' 这个错误表明编译器无法找到特定的库文件,即 -l-Wl,--start-group,-lxil,-lgcc,-lc,--end-group 和 -lF:/project/darknet-master/libdarknet.a。为解决这个错误,可以尝试以下几个步骤:
-
确保库文件实际存在于指定的目录中。如果库文件不存在,编译器将无法找到它并报告错误。
-
检查库文件路径是否正确。在本例中,-lF:/project/darknet-master/libdarknet.a 中的路径似乎不正确。如果路径错误,编译器将无法找到库文件并报告错误。
-
确保编译器有足够的权限访问库文件。如果编译器没有足够的权限,它将无法找到库文件并报告错误。
-
尝试使用完整路径来指定库文件。例如,使用 -l/path/to/library.a 来指定库文件路径。
-
检查编译器的链接选项和参数是否正确。在本例中,-l-Wl,--start-group,-lxil,-lgcc,-lc,--end-group 可能不是正确的链接选项。如果链接选项和参数不正确,编译器将无法链接库文件并报告错误。
-
如果以上步骤都无法解决问题,考虑更新编译器或使用不同的编译器。有时,编译器本身可能存在问题,需要更新或更换。
原文地址: https://www.cveoy.top/t/topic/nPOY 著作权归作者所有。请勿转载和采集!