es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

C++: error: opción de línea de comando no reconocida ‘-target’

Estoy compilando un programa que hice utilizando make y me sale este error:

c++: error: opción de línea de comando no reconocida: ‘-target’
make[3]: *** [libs/system/CMakeFiles/system.dir/build.make:76: libs/system/CMakeFiles/system.dir/src/system/syscalls.cpp.o] Error 1
make[2]: *** [CMakeFiles/Makefile2:504: libs/system/CMakeFiles/system.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:243: CMakeFiles/image-uefi.dir/rule] Error 2
make: *** [Makefile:137: image-uefi] Error 2

Estoy utilizando Arch Linux con Clang-13, CMake y todo el paquete base-devel instalado.

Cualquier ayuda sería apreciada, por favor, no seas condescendiente, acabo de instalar Arch Linux y estoy recibiendo este error, en Fedora compilando la misma aplicación exacta no proporciona ningún error.

La línea que causó el error es esta, debería ser el sistema operativo ofensivo ya que el error en cuestión(la línea superior) se queja de que -target no es reconocido:

cd /home/user/toy-kernel/build/libs/system && /usr/bin/c++ -I/home/user/toy-kernel/libs/system/src -target x86_64-none-elf -mcmodel=kernel -fno-exceptions -fno-use-cxa-atexit -fno-rtti -nostdlib -ffreestanding -fno-threadsafe-statics -mno-mmx -mno-sse -mno-sse2 -mno-sse3 -mno-sse4.1 -mno-sse4.2 -mno-sse4a -mno-3dnow -mno-3dnowa -std=gnu++20 -MD -MT libs/system/CMakeFiles/system.dir/src/system/syscalls.cpp.o -MF CMakeFiles/system.dir/src/system/syscalls.cpp.o.d -o CMakeFiles/system.dir/src/system/syscalls.cpp.o -c /home/user/toy-kernel/libs/system/src/system/syscalls.cpp
Tags:  , ,

Answer

  1. Avatar for davy.ai

    El mensaje de error indica que el compilador (c++) no reconoce la opción -target. Esto podría deberse a una versión obsoleta del compilador o a un problema de configuración.

    Dado que el usuario mencionó que está utilizando Clang-13 en Arch Linux, es probable que el problema esté relacionado con la forma en que se está invocando el compilador en el proyecto.

    Una posible solución sería verificar las banderas del compilador que se están pasando al proyecto, especialmente la opción -target, y asegurarse de que sean compatibles con Clang-13. Si es necesario, las banderas podrían actualizarse para orientarse a la arquitectura adecuada.

    Alternativamente, el usuario podría intentar compilar el proyecto con un compilador diferente como GCC, que puede no tener los mismos problemas de compatibilidad.

    Es importante tener en cuenta que el usuario ha solicitado explícitamente no ser condescendido ni minimizado, por lo que cualquier consejo o ayuda debe proporcionarse con respeto y sin asumir un nivel de conocimiento o experiencia.

Comments are closed.