Fix Build Process for Apple M3 Processors #605
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description:
This PR introduces changes to the
CMakeLists.txt
file to support compilation for the Apple M3 architecture. Initially, the following errors were encountered due to incorrect or unsupported compiler flags for the M3 processor.Errors Encountered:
-march
During the build, the following error was thrown:
This error occurred because the compiler does not recognize
-march=apple-m3
, but rather, it suggests using-mcpu=apple-m3
.-mtune
After correcting the
-march
flag, the following error was encountered:This error occurred because the
-mtune
flag does not supportapple-m3
as a valid argument.Changes Made:
To address these issues, the following changes were made to the
CMakeLists.txt
file:A check was added for detecting the Apple M3 architecture using
sysctl -n machdep.cpu.brand_string
to get the processer name. If the brand string contains Apple M3, the code changes certain compiler flags-march
: The incorrect-march=native
was replaced with-mcpu=native
, which is the correct flag to target Apple M3 processors.-mtune
: The-mtune=native
flag was removed, as it is not supported.