2

我正在尝试使用 cygwin 和 g++ 编译一个相对简单的 c++ 程序。我可以使用以下命令编译它:

g++ -o main main.cpp -lgmpxx -lgmp

(注意:最后两个反映了 gmp 库的包含)。

我想提高编译时的优化级别。我以为我可以将此命令行更改为:

g++ -o3 main main.cpp -lgmpxx -lgmp

但这完全爆炸了。我收到大约两个完整的错误消息屏幕。

我怎样才能在这里增加优化?谢谢!

4

2 回答 2

10

应该是-O3,不是-o3。否则,您是在告诉 g++ 将已编译的可执行文件放入名为 的文件3中,然后您将它main(您之前编译的可执行文件)作为input 提供。它可能试图将其解释为源代码,因此会出现错误。

于 2012-04-05T01:34:53.067 回答
10

选项区分大小写:该-o选项允许您指定输出文件的名称,-O设置优化量,因此您需要:

g++ -O3 -o main main.cpp -lgmpxx -lgmp
于 2012-04-05T01:35:10.590 回答