[英]SCons: misterious Configure() failure in SConscript
我有一個scons項目,在子目錄中有許多SConscript文件。 在那些SConscript文件之一中,我想檢查特定的庫是否安裝在構建主機上。 這是代碼片段:
Import("env")
conf = Configure(env)
if conf.CheckLibWithHeader(...):
doSomething()
env.Library(...)
當我執行構建時,scons失敗,出現strnge錯誤,沒有錯誤消息,如下所示:
scons: ***
File "/path/to/SConscript", line 3, in <module>
第3行是我調用Configure()的地方。 我想我正在執行Configure()函數所不允許的操作,但是在scons文檔中找不到任何解釋。
請幫我調試一下。
因此問題出在同級SConscript文件之一中。 調用了Configure(env)
但未使用conf.Finish()
調用處置配置對象。
這是一個問題,因為SCons不允許在任何時候創建多個配置對象。 我通過分析SCons來源發現了此規則-我不知道是否已記錄在案。
因此,當我對Configure(env)
SCons進行調用時,拋出異常,因為它看到另一個同級SConscript使孤立的活動配置對象成為孤兒。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.