В коде пользовательского пространства используется макрос __WORDSIZE
, включенный в <bits/wordsize.h>
. Однако, когда я занимаюсь программированием ядра Linux, __WORDSIZE
кажется недоступным.Как определить словосочетание в программировании ядра Linux?
Если <bits/wordsize.h>
включен, он получит сообщение об ошибке компиляции, говоря:
error: bits/wordsize.h: No such file or directory
но если <bits/wordsize.h>
не включен, он получит другую ошибку компиляции, говоря:
error: ‘__WORDSIZE’ undeclared.
кажется что программирование ядра не поддерживает заголовочный файл <bits/wordsize.h>
. Что я должен сделать, чтобы определить словосочетание в программировании ядра Linux?
P.S. моя версия компилятора - gcc (GCC) 4.4.6
.
Стратегия решения такой проблемы может заключаться в том, чтобы подумать о том, почему вы должны знать. Затем подумайте о существующих функциональных возможностях ядра с тем же требованием и посмотрите, как это делается там. –
Потому что я хочу написать другую цель кода на x86 и x64, а '#if __WORDSIZE == 32' - хороший способ сделать это. – Victor
Как насчет цели, которой нет? –