0
nasm在Windows(至少可能是其他平臺)上有一個錯誤,它要求包含路徑具有尾部斜線。 waf通過設計去除路徑上的尾部斜線。 Bug report。將nasm與waf一起使用,包含路徑
顯然這會導致問題; asm文件不能提供包含文件。優雅的解決方案是修復nasm,但是,由於nasm的公開發行版中存在此錯誤,並且該錯誤未指定,所以這對大多數人來說是站不住腳的。
另一種選擇是讓waf容忍這個bug。
nasm在Windows(至少可能是其他平臺)上有一個錯誤,它要求包含路徑具有尾部斜線。 waf通過設計去除路徑上的尾部斜線。 Bug report。將nasm與waf一起使用,包含路徑
顯然這會導致問題; asm文件不能提供包含文件。優雅的解決方案是修復nasm,但是,由於nasm的公開發行版中存在此錯誤,並且該錯誤未指定,所以這對大多數人來說是站不住腳的。
另一種選擇是讓waf容忍這個bug。
這個hack在所有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]