我正在尝试将32位代码移植到64位linux机器上。在Linux上有64位后置警告的编译器标志吗?
SUN有+ w2 -m64标志。任何人都可以给我类似这个标志的信息吗?
提前谢谢你,
答案 0 :(得分:0)
这不是您正在寻找的答案,但您可以尝试在第一个移植阶段使用int32_t替换尽可能多的int
。
另请看另一个答案。
(不,我不能评论,似乎我的代表太少......)
答案 1 :(得分:0)
尝试gcc -Wall -Wconversion -Wpointer-arith -Wtype-limits -Wcast-qual
实际上,阅读gcc手册页,有大量警告,只有当你的代码没有为你知道实际上不是问题的东西产生大量的警告时,其中一些可能会有所帮助。 -Wall,-pedantic和-Wextra是打开一堆警告的元标志。 -Wall包含许多重要的内容,当您尝试使用64位版本的代码执行错误操作时会发生这些重要内容。
-Werror
(将警告变为错误)可能有助于避免在修复一些但不是所有错误后make clean
。