【发布时间】:2011-05-28 10:14:43
【问题描述】:
编译 C++ 代码时出现此错误:
undefined reference to `__stack_chk_fail'
已经尝试过的选项:
- 在编译时添加了 -fno-stack-protector - 不起作用,错误仍然存在
- 在我的代码中添加了 void __stack_chk_fail(void) 的虚拟实现。仍然出现同样的错误。
详细错误:
/u/ac/alanger/gurobi/gurobi400/linux64/lib/libgurobi_c++.a(Env.o)(.text+0x1034): In function `GRBEnv::getPar/u/ac/alanger/gurobi/gurobi400/linux64/lib/libgurobi_c++.a(Env.o)(.text+0x1034): In function `GRBEnv::getParamInfo(GRB_StringParam, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)':
: undefined reference to `__stack_chk_fail'
amInfo(GRB_StringParam, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)':
: **undefined reference to `__stack_chk_fail'**
早些时候,我收到了 10 个这样的错误。发现我正在使用的预编译库的gcc 与我用来编译代码的gcc 版本之间存在版本不匹配。更新了gcc,现在我只收到其中两个错误。
有什么帮助吗?
【问题讨论】:
标签: c++ gcc undefined-reference