我使用C ++创建了一个独立的可执行文件,我希望它能被尽可能多的人使用。在编译器选项方面,我该怎么做才能确保这一点?我将MinGW与链接器选项-static-libgcc -static-libstdc++一起使用。我可能的用户将使用Windows 7。

编辑:我已经使我的源代码尽可能地可移植。 This webpage提到参数ANSI(-A)“以实现最大的可移植性”。使它与ANSI兼容有什么影响?

最佳答案

使用g ++,您可以使用很多警告标志。 -Wall已经可以提供帮助,但是还有许多其他类似的东西:

-Werror -Wall -Wextra -pedantic -std = gnu ++ 0x -Wcast-align -Wcast-qual -Wctor-dtor-privacy -Wdisabled-optimization -Winit-self -Wologic-op -Wmissing-include-dirs -Woverloaded-虚拟-Wredundant-decls -Wshadow -Wsign-promo -Wstrict-null-Sentinel -Wstrict-overflow = 1 -Wundef -Wno-unused -Wunused-variable -Wno-variadic-macros -Wno-括号-Wno-unknown-pragmas- Wwrite-strings -Wswitch -fdiagnostics-show-option -Wnoexcept -Wold-style-cast -Wformat = 2

它不会使您的代码与所有C ++编译器兼容,但是,一旦您尝试其他编译器,它将有助于减少所需的工作。

要查看所有这些警告标志,请查看g ++的手册页或信息页。

关于c++ - 编译C++源代码以实现最大的可移植性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16755290/

10-08 22:25