我使用 C++ 创建了一个独立的可执行文件,我希望它可供尽可能多的人使用。就编译器选项而言,我可以做什么来确保这一点?我使用 MinGW 和链接器选项
-static-libgcc -static-libstdc++
。我的可能用户将使用 Windows 7。
编辑:我已经使我的源代码尽可能地可移植。 此网页提到了 ANSI (-A)“为了最大可移植性”这一论点。使其兼容 ANSI 有什么影响?
使用 g++,您可以使用很多警告标志。 -Wall 已经有帮助了,但是还有很多其他的,例如:
-Werror -Wall -Wextra -pedantic -std=gnu++0x -Wcast-align -Wcast-qual -Wctor-dtor-privacy -Wdisabled-optimization -Winit-self -W逻辑操作 -Wmissing-include-dirs -Woverloaded -virtual -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++ 的手册页或信息页。