我正在使用 cmake
在 MacOS 中为 ARM
构建一个 *.elf
文件。 CMake
正在自动添加标志 -Wl,-search_paths_first -Wl,-headerpad_max_install_name
,这会导致生成无效的 *.elf
文件。我得到错误 warning: cannot find entry symbol arch_paths_first;默认为 00000000080001e0
.
我尝试在没有该选项的情况下执行 arm gcc 命令,它运行良好。
如何阻止 cmake
添加这些标志?
最佳答案
我已经找到了一种方法来做到这一点。
需要添加如下指令:
set(HAVE_FLAG_SEARCH_PATHS_FIRST 0)
我很确定必须在 project
指令之前添加它。
为了删除标志 -headerpad_max_install_names
,我在 project
指令之后写了以下内容:
set(CMAKE_C_LINK_FLAGS "")
我想如果我使用 g++
我应该需要添加
set(CMAKE_CXX_LINK_FLAGS "")
关于macos - 避免 cmake 在 MacOS 中添加标志 -search_paths_first 和 -headerpad_max_install_names,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54482519/