使用gcc 4.8.4和Eclipse Luna对`__gthrw___pthread_key_create进行未定义的引用

时间:2016-10-13 12:32:27

标签: eclipse c++11 gcc

我使用gcc(Ubuntu 4.8.4-2ubuntu1~14.04.1)4.8.4与Eclipse CDT版本:Luna Service Release 2(4.4.2)。

我的程序不使用任何库,而不使用pthread和更好的gthread。它使用C ++ 11标准,该标准使用C ++ - 编译器选项中的方言下拉菜单进行设置。

g ++的GCC链接器产生以下错误:

./ src / main.o:(.rodata + 0x1e8):未定义引用`__gthrw ___ pthread_key_create(unsigned int *,void()(void ))'

我已经搜索了如何禁用弱符号引用,但不幸运。

有人可以提供一些建议吗?

1 个答案:

答案 0 :(得分:0)

发现它与g ++ - 4.8有某种关联。

我安装了g ++ - 5,错误消失了。

以下是步骤:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install g++-5 libstdc++-5-dev

sudo rm -f /usr/bin/g++
sudo ln -s /usr/bin/g++-5 /usr/bin/g++