x86_64-linux-gnu-gcc 和普通的旧 gcc 之间有什么区别?

x86_64-linux-gnu-gcc 和普通的旧 gcc 之间有什么区别?

我正在尝试为 Festival 和 HTS 编译一个称为“语音克隆工具包”的东西。(参见:http://homepages.inf.ed.ac.uk/jyamagis/software/page37/page37.html

我发现 gcc-4.7 有很多问题,所以我将 gcc 降级到 4.6,如下所示: sudo apt-get remove gcc-4.7 cpp-4.7 g++-4.7 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 50 sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 50 sudo update-alternatives --install /usr/bin/cpp cpp /usr/bin/cpp-4.6 50

但是现在我遇到:x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I./portaudio-v19/include/ -I/usr/include/python2.7 -c src/_portaudiomodule.c -o build/temp.linux-x86_64-2.7/src/_portaudiomodule.o -fno-strict-aliasing 无法执行 x86_64-linux-gnu-gcc:没有此文件或目录错误:命令“x86_64-linux-gnu-gcc”失败,退出状态为 1 make:*[全部] 错误 1

显然,我可以使用 apt-get install gcc 来恢复 x86_64-linux-gnu-gcc 程序,但其他 HTKLib 内容将无法编译(因为安装 gcc 总是给我 4.7 版本)。

那么,x86_64-linux-gnu-gcc 命令到底是什么?我可以保留 gcc-4.6 的同时拥有它吗?

答案1

# ls /usr/bin/x86* -l
lrwxrwxrwx 1 root root    7 Jun  3 01:27 /usr/bin/x86_64 -> setarch
lrwxrwxrwx 1 root root    7 Jun  3 01:27 /usr/bin/x86_64-linux-gnu-cpp -> cpp-4.7
lrwxrwxrwx 1 root root    7 Jan 30 13:55 /usr/bin/x86_64-linux-gnu-cpp-4.4 -> cpp-4.4
lrwxrwxrwx 1 root root    7 Apr 13 06:08 /usr/bin/x86_64-linux-gnu-cpp-4.6 -> cpp-4.6
lrwxrwxrwx 1 root root    7 Jun  3 01:27 /usr/bin/x86_64-linux-gnu-cpp-4.7 -> cpp-4.7
lrwxrwxrwx 1 root root    7 Apr 22 02:44 /usr/bin/x86_64-linux-gnu-g++ -> g++-4.7
lrwxrwxrwx 1 root root    7 Apr 15 07:12 /usr/bin/x86_64-linux-gnu-g++-4.7 -> g++-4.7
lrwxrwxrwx 1 root root    7 Apr 22 02:44 /usr/bin/x86_64-linux-gnu-gcc -> gcc-4.7
lrwxrwxrwx 1 root root    7 Jan 30 13:57 /usr/bin/x86_64-linux-gnu-gcc-4.4 -> gcc-4.4
lrwxrwxrwx 1 root root    7 Apr 13 06:10 /usr/bin/x86_64-linux-gnu-gcc-4.6 -> gcc-4.6
lrwxrwxrwx 1 root root    7 Jun  3 01:27 /usr/bin/x86_64-linux-gnu-gcc-4.7 -> gcc-4.7

... 看起来没有什么区别;尝试更改链接,看看它是否有效。

相关内容