La opción no reconocida de g++ no forma parte del comando

La opción no reconocida de g++ no forma parte del comando

Estoy intentando compilar un proyecto, lo usé makey obtuve el siguiente resultado

g++ -g -Wall -std=c++11 -I include/ -o build/example.o -c example/example.cpp
as: unrecognized option '--64'

El error indica que la opción --64se utiliza y no se reconoce mientras no está en el comando.
Otras apariciones en línea de este error sugieren cambiar --64a --m64. Este problema está relacionado con la versión de gcc utilizada.

Pero la opción no está presente en mi caso, ¿cómo puede aparecer este error si el comando no contiene la opción especificada?

Editar: make -mda como resultado el mismo resultado.
Y el error ocurre incluso cuando se ejecuta el comando g++ manualmente.

Editar: el error aparece en la terminal después de obtener un archivo: source setup.bash(requerido por el proyecto para alguna operación)

El script exporta la siguiente variable pero no parece estar relacionada con gcc.

  • OPENOCD_SCRIPTS
  • IDF_PATH
  • IDF_TOOLS_EXPORT_CMD
  • IDF_PYTHON_INSTALL_CMD
  • IDF_PYTHON_ENv_PATH

También agrega algún camino aPATH

Incluso con esta información, todavía no entiendo por qué ocurre el error.
Incluso si la versión de gcc se cambió debido a las rutas agregadas PATH, la opción no forma parte del comando.

Editar: Después source setup.bash,

gccsigue siendo el mismo

$ type gcc
gcc is /usr/bin/gcc
$ gcc --version
gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
...

ascambios

$ type as
as is /usr/bin/as
$ as --version
GNU assembler (GNU Binutils for Ubuntu) 2.34
...
$ type as
as is /path/.espressif/tools/xtensa-esp32-elf/esp-2020r3-8.4.0/xtensa-esp32-elf/xtensa-esp32-elf/bin/as
$ as --version
GNU assembler (crosstool-NG esp-2020r3) 2.31.1
...

Respuesta1

gcc.gnu.orgEstablece que

gcc es un programa controlador. Realiza su trabajo invocando una secuencia de otros programas para realizar el trabajo de compilar, ensamblar y vincular.

ases uno de los programas invocados por gcc.

El setup.bashscript no cambió la ruta gccpero sí lo hizo para as.
Por tanto, el error lo genera el asprograma de sustitución.

información relacionada