перенос кода с 32 бит на 64 бит - PullRequest
0 голосов
/ 21 октября 2009

Я пытаюсь перенести 32-битный код на 64-битную машину Linux. Существуют ли какие-либо флаги компилятора для предупреждения о 64-битном постринге в Linux.

Для SUN есть флаги + w2 -m64. Может ли кто-нибудь дать мне информацию о флагах, похожих на этот?

Заранее спасибо,

Ответы [ 2 ]

0 голосов
/ 10 декабря 2009

Попробуйте gcc -Wall -Wconversion -Wpointer-arith -Wtype-limits -Wcast-qual

На самом деле, прочитайте справочную страницу gcc, есть множество предупреждений, и некоторые из них могут быть полезны, только если ваш код не производит их из-за того, что вы знаете, на самом деле не проблема. -Wall, -pedantic и -Wextra - это мета-флаги, которые включают кучу предупреждений. -Все включены многие из важных, которые произойдут при попытке 64-битной сборки кода, который делает плохие вещи.

-Werror (превратить предупреждения в ошибки) может быть полезно, чтобы избежать необходимости make clean после исправления некоторых, но не всех ошибок.

0 голосов
/ 21 октября 2009

Это не совсем тот ответ, который вы ищете, но вы можете попробовать заменить как можно больше int на int32_t на первом этапе портирования.Также посмотрите на другой ответ.(Нет, я не могу комментировать, кажется, у меня слишком мало представителей ...)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...