加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 警告:自从更新到Mac OSX Sierra后,“__ textcoal_nt”部分

发布时间:2020-12-14 17:47:39 所属栏目:百科 来源:网络整理
导读:参见英文答案 Disable assembler warning “.section __TEXT,__textcoal_nt,coalesced,pure_instructions”????????????????????????????????????2个 更新到Sierra之后,我将我的Xcode从7.2.1更新为Xcode 8.因此,只需更新Xcode就可能出现问题.我降级回到7.2.1
参见英文答案 > Disable assembler warning “.section __TEXT,__textcoal_nt,coalesced,pure_instructions”????????????????????????????????????2个
更新到Sierra之后,我将我的Xcode从7.2.1更新为Xcode 8.因此,只需更新Xcode就可能出现问题.我降级回到7.2.1但仍然遇到了同样的问题.

这是我编译C程序时遇到的错误

/var/folders/cj/1h3_84h56c9bgzt_ryhpf4940000gn/T//ccgjxtCM.s:4:11: warning: section "__textcoal_nt" is deprecated
        .section __TEXT,pure_instructions
                 ^      ~~~~~~~~~~~~~
/var/folders/cj/1h3_84h56c9bgzt_ryhpf4940000gn/T//ccgjxtCM.s:4:11: note: change section name to "__text"
        .section __TEXT,pure_instructions
                 ^      ~~~~~~~~~~~~~
/var/folders/cj/1h3_84h56c9bgzt_ryhpf4940000gn/T//ccgjxtCM.s:54:11: warning: section "__textcoal_nt" is deprecated
        .section __TEXT,pure_instructions
                 ^      ~~~~~~~~~~~~~
/var/folders/cj/1h3_84h56c9bgzt_ryhpf4940000gn/T//ccgjxtCM.s:54:11: note: change section name to "__text"
        .section __TEXT,pure_instructions

程序仍在运行,但会显示此消息.即使代码中唯一的东西是我创建的类称为图形,并且我有这样的代码,也会出现错误.

void explore(Graph & G,int x)
{
  Node* nodePtr = &G.changeNode(x);
}

我尝试在命令行中执行此操作,但它无法正常工作

sudo xcode-select -s /Library/Developer/CommandLineTools

这是我在Sublime Text中使用的构建,但即使使用不是c 11的其他c编译器,我也会得到相同的错误.命令行上也出现错误.

{
    "shell_cmd": "g++ -std=c++11 "${file}" -o "${file_path}/${file_base_name}"","file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$","working_dir": "${file_path}","selector": "source.c,source.c++","shell_cmd": "g++ -std=c++11 "${file}" -o "${file_path}/${file_base_name}" && "${file_path}/${file_base_name}""
}

我认为唯一可行的是使用我在本网站上的某些线程上看到的补丁

http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20151012/305992.html

我不知道如何使用它们或运行.

解决方法

答案来自: https://solarianprogrammer.com/2016/09/22/compiling-gcc-6-macos/

您可以放心地忽略所有这些警告,这些警告与GCC生成的汇编代码有关,与C代码无关.

不幸的是,目前还没有办法指示GCC不使用__textcoal_nt,或者沉默上述警告.快速而肮脏的解决方法是使用以下内容过滤编译器的输出:

g++-6 main.cpp -o main 2>&1 >/dev/null | grep -v -e '^/var/folders/*' -e '^[[:space:]]*.section' -e '^[[:space:]]*^[[:space:]]*~*'

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读