我将在一台不属于我的计算机上工作一个月,因此我会在完成后将其还原。但是,我可以成为root。
问题是我无法运行C ++ 11。我对最新的编译器不感兴趣,只是一个可以支持某些C ++ 11的编译器(例如,我不关心正则表达式)。
我尝试了所有这些:
sudo yum install gcc-c++
给出:
Loaded plugins: dellsysidplugin, kernel-module, refresh-packagekit
Setting up Install Process
Package gcc-c++-4.3.2-7.i386 already installed and latest version
Nothing to do
sudo update-alternatives --config gcc
什么都没有
bash-3.2$ g++ --version
给出:
g++ (GCC) 4.3.2 20081105 (Red Hat 4.3.2-7)
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
yum groupinstall "Development Tools"
说到最新版本
一些汇编:
bash-3.2$ g++ px.cpp -std=c++0x -o px
px.cpp:2:18: error: chrono: No such file or directory
我该怎么办?问题在于fedora 10?我不知道是否允许我更新计算机的操作系统(这是古老的,启动时的电池信息,只是为了一目了然)。而且,由于它很古老,我恐怕不会破坏它(通过升级)。
答案 0 :(得分:1)
只需将binutils和gcc以及其他先决条件源下载为tarball即可。解压缩并编译到您想要的每个目录。编译大概需要10分钟,你就完成了。我也非常!旧的suse linux并行编译器的广泛变体。
编辑:添加指向gcc wiki的链接
http://gcc.gnu.org/wiki/InstallingGCC
BTW并不是OP问题的真正答案,而是快速解决方案:您如何看待下载Fedora 20,刻录CD或使用足够大的USB棒,从CD或USB棒启动并将音量装在笔记本电脑上并享受乐趣。在fedora 20中,gcc 4.8.2已经存在。应该是某些退出任务的替代方案。
如果您只想运行非常小的示例,您还可以使用唯一的编译器: http://www.compileonline.com/compile_cpp11_online.php 例如。 G *和其他人可以找到更多。
答案 1 :(得分:1)
问题解决了。
对于其他人:需要下载并构建最后一个版本。
在此之后,有必要知道编译器在哪里使用它而不是旧编译器:
答案 2 :(得分:0)
我决定写下这个答案,以便它有完整的答案。
您无法通过常规方法安装编译器(例如sudo yum install gcc-c++
),因为Fedora 10太旧了。您必须手动下载并安装它。
从gnu,下载所需的编译器。我下载了 gcc-4.6.2.tar.gz (在gcc-4.6.2文件夹下)。
然后,是时候配置和构建编译器了。进入你想要的目录并执行以下操作(我只是留在下载文件夹中):
注意:这可能需要一些时间(我使用的电脑真的很旧,耗时超过45分钟)
tar xzf gcc-4.6.2.tar.gz
cd gcc-4.6.2
./contrib/download_prerequisites
cd ..
mkdir objdir
cd objdir
$PWD/../gcc-4.6.2/configure --prefix=$HOME/gcc-4.6.2
make
make install
资料来源:gcc wiki(感谢Klaus)
然后,为了编译C ++ 11,我必须提供新编译器的完整路径并添加-static
标志(Why?)。
就我而言,我会将px.cpp文件编译为px可执行文件,如下所示:
/user/gsamaras/home/gcc-4.6.2/bin/g++ px.cpp -static -std=gnu++0x -o px
更多方法可以在Jepessen的答案和此{3}的stackoverflow中找到。
将向Klaus和Jepensen提供积分,但我认为将所有人聚在一起可能有助于下一个人(如果有的话,对于Fedora 10 ..:P)