raspberry pi 向けの qemu の開発をしており、一部機能の不具合対応(ext4 でマウントエラーが発生)のため kernel を最適化なし(-O0)でコンパイルしたいのですが、コンパイルエラーが発生してしまっています。(-O1や-O2ではコンパイルできます)
解決策を探しているのですが、見つかっていません。どなたか情報を持っていないでしょうか?(「 -O0 はサポートしていないよ」とか)
../include/linux/compiler-gcc4.h:77:38: error: impossible constraint in ‘asm’ #define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0) ^ ... In file included from ../include/linux/linkage.h:4:0, from ../include/linux/fs.h:5, from ../fs/ext4/ext4_jbd2.h:18, from ../fs/ext4/mballoc.c:24: In function ‘__list_add_rcu’, inlined from ‘list_add_tail_rcu’ at ../include/linux/rculist.h:102:16, inlined from ‘ext4_mb_add_n_trim’ at ../fs/ext4/mballoc.c:4301:21: ../include/linux/compiler.h:412:20: error: call to ‘__compiletime_assert_54’ declared with attribute error: Need native word sized stores/loads for atomicity. prefix ## suffix(); \ ^
他にも、以下のような note や warning が出ていますが、関連がわかっていません。
../arch/arm/include/asm/jump_label.h: In function ‘ext4_mb_init_cache’: ../include/linux/compiler-gcc4.h:77:38: warning: asm operand 0 probably doesn’t match constraints [enabled by default] #define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0) ^ ../arch/arm/include/asm/jump_label.h:18:2: note: in expansion of macro ‘asm_volatile_goto’ asm_volatile_goto("1:\n\t" ^ ../include/linux/compiler-gcc4.h:77:38: warning: asm operand 0 probably doesn’t match constraints [enabled by default] #define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0) ^ ../arch/arm/include/asm/jump_label.h:18:2: note: in expansion of macro ‘asm_volatile_goto’ asm_volatile_goto("1:\n\t" ^ ... ../include/linux/compiler.h:417:2: note: in expansion of macro ‘__compiletime_assert’ __compiletime_assert(condition, msg, prefix, suffix) ^ ... ../arch/arm/include/asm/barrier.h:68:2: note: in expansion of macro ‘compiletime_assert_atomic_type’ compiletime_assert_atomic_type(*p); \ ^
開発環境は以下のような感じです。
項目 | 内容 |
---|---|
kernel | 4.1.21 |
gcc | 4.8.3 |
host | linux mint 17.3 64bit |
コンパイル | make -j8 CFLAGS_mballoc.o="-O0" |
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー