1

nasm には、インクルード パスに末尾のスラッシュが必要な Windows (少なくとも、おそらく他のプラットフォーム) にバグがあります。waf は、設計上、パスの末尾のスラッシュを取り除きます。バグ報告

明らかにこれは問題を引き起こします。asm ファイルはインクルード ファイルをソース化できません。洗練された解決策は nasm を修正することですが、このバグが nasm のパブリック ディストリビューションに存在し、バグが割り当てられていないことを考えると、これはほとんどの場合支持できません。

もう 1 つのオプションは、waf をこのバグに耐えられるようにすることです。

4

1 に答える 1

0

このハックは、すべての asm タスクのインクルード パス リストに末尾のスラッシュを削除した後、再度追加します。

次のコードを最上位の wscript に追加するだけです。

import os

from waflib import TaskGen

@TaskGen.feature("asm")
@TaskGen.after_method("apply_incpaths")
def add_includes_paths(self):
    self.env.INCPATHS = [os.path.join(x, "") for x in self.env.INCPATHS]
于 2013-10-30T03:23:03.380 に答える