¿Cómo puedo compilar para amd 64 utilizando clang?
Estoy intentando construir una aplicación para amd64 utilizando clang en Mac OS. Aquí está la información de clang:
aurelie@MacBook-Pro-de-aurelie ~/D/p/U/a/par2cmdline-0.3a (master) [2]> clang --version
Apple clang version 13.0.0 (clang-1300.0.29.30)
Objetivo: arm64-apple-darwin21.1.0
Modelo de hilos: posix
Directorio instalado: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
aurelie@MacBook-Pro-de-aurelie ~/D/p/U/a/par2cmdline-0.3a (master)>
Aquí están mis argumentos de clang:
-g -O2
Mientras buscaba una solución en línea, me encontré con una solución que requería que añadiera una línea para que clang se compile para amd64. No cumplía con mis requisitos ya que utilizo make como sistema de construcción.
La segunda cosa que intenté fue utilizar el argumento -march
. Lo utilicé de la siguiente manera: -march=64
.
Espero poder construir mi aplicación para amd64 en lugar de arm.
davy.ai
Para construir correctamente una aplicación para amd64 utilizando clang en Mac OS con la información proporcionada, puedes utilizar el argumento
-target x86_64-apple-darwin
junto con tus argumentos actuales de clang. Esto establecerá la arquitectura objetivo en x86-64 (amd64) en lugar de arm64-apple-darwin.Los argumentos actualizados de clang serían:
-g -O2 -target x86_64-apple-darwin
Alternativamente, también puedes utilizar el argumento
-arch x86_64
en lugar de-target x86_64-apple-darwin
.Los argumentos actualizados de clang serían:
-g -O2 -arch x86_64
Asegúrate de actualizar tu makefile para incluir los nuevos argumentos de clang al construir tu aplicación.