我正在尝试使用cygwin和g ++编译一个相对简单的c ++程序。我可以使用以下命令编译它:
g++ -o main main.cpp -lgmpxx -lgmp
(注意:最后两个反映了gmp库的包含)。
我想提高编译的优化级别。我以为我可以将此命令行更改为:
g++ -o3 main main.cpp -lgmpxx -lgmp
但这完全爆发了。我得到两个完整的错误消息。
如何在此处增加优化?谢谢!
答案 0 :(得分:10)
应该是-O3
,而不是-o3
。否则,你告诉g ++将编译后的可执行文件放入一个名为3
的文件中,并将它作为输入提供给你以前编译过的可执行文件main
。它可能试图将其解释为源代码,因此错误。
答案 1 :(得分:10)
选项区分大小写:-o
选项允许您指定输出文件的名称,-O
设置优化量,因此您需要:
g++ -O3 -o main main.cpp -lgmpxx -lgmp