Объединение ядра Linux с использованием CIL
Я пытаюсь использовать слияние CIL для объединения ядра Linux и анализа. Я пробовал это на другой версии ядра. каждый дал разные ошибки.
Linux-3.4.2:
В исходной папке Linux Kernel-3.4.2 я использовал следующую команду
$ make CC="cilly --save-temps --dofsvd --merge"
и это дало следующую ошибку
/home/srikanth/projects2test/linux-3.4.2/arch/x86/include/asm/cpufeature.h[345:0-0]: синтаксическая ошибка Parsing errorFatal error: исключение Frontc.ParseError("Parse error")
ошибка связана с этой строкой:
asm goto (...:: "i" (бит):: t_no);
Он не может распознать инструкции "asm". Я погуглил за это. В отчетах об ошибках BLAST ( здесь) я обнаружил, что мы можем использовать некоторые параметры аспектатора, чтобы предотвратить такие конструкции. Но я не знаю, какие варианты использовать. Как я могу игнорировать asm(или любые другие конструкции, которые не поддерживаются)?
Linux-2.4.5:
В исходной папке Linux Kernel-2.4.5 я использовал следующую команду
$ make CC="cilly --save-temps --dofsvd --merge"
Приведенная выше команда выдала следующую ошибку
Makefile:229: arch/x86_64/Makefile: такого файла или каталога нет: make: * Нет правил для создания цели `arch/x86_64/Makefile'. Стоп.
для этого я включил опцию ARCH=i386 для создания файла.
$ make ARCH=i386 CC = "cilly --save-temps --dofsvd --merge"
и сказал
init/main.c:1:0: ошибка: выбранный вами процессор не поддерживает набор команд x86-64
Как исправить эту ошибку?
Я хочу запустить анализ на ядре Linux (любой версии). Я не могу объединить его из-за этих ошибок. пожалуйста, помогите мне решить эти проблемы.