РЕШЕНО: Ошибка построения программы с использованием плагина gcc из дерева исходных кодов ядра Linux.
Я пытаюсь использовать плагин grsecurity gcc, который я нашел в их неофициальном дереве исходных текстов ядра Linux (respectre_plugin/
один). Моя версия GCC - 4.7, я модифицировалscripts/gcc-plugins/Makefile
чтобы он скомпилировал плагин, и я собрал его с корневым Makefile, используя make gcc-plugins
, что не показывает ошибок. Затем, когда я пытаюсь скомпилировать файл C с ошибкой, подобной Spectre, я получил следующую ошибку сборки:
file.c:36:31: error: array_index_mask_nospec is not defined
Эта функция определена в respectre_plugin/respectre_plugin.c
, и я понятия не имею, почему у меня эта странная ошибка сборки, если кто-то знает об этом... Мой вызов сборки следующий:
gcc -Wall -Wextra -std=c99 -fplugin=/path/to/respectre_plugin.so -c file.c -o file.o
Спасибо за любую помощь!