2017-09-20 9 views
0

私はPs4用に設定されたVisual Studioのプロジェクトを生成しようとしています。私のプロジェクトで 私はこの追加:premake5でarchFromConfigを無効にするalpha12

require "orbis" 

... 

platforms { "x64", "ORBIS" } 
filter "platforms:ORBIS" 
    toolset "Clang" 
    targetextension(".elf") 
    architecture "Orbis" 

をし、私は私のセットアップはPremake5のアルファ4で正常に動作していたorbis.lua

local p = premake 
local vs = p.modules.vstudio 

p.api.addAllowed("architecture", { "Orbis" }) 

local function archFromConfig_cb(base, cfg, win32) 
    if cfg.system == "Orbis" or cfg.architecture == "Orbis" then 
     return "ORBIS" 
    end 
    return base(cfg, win32) 
end 

p.override(vs, "archFromConfig", archFromConfig_cb) 

を書いたが、私はPremake5のalpha12に更新したときに、私はこのエラーを持っています。

orbis.lua:54: unable to override 'archFromConfig'; no such function

私はそう...私はこれを持っているappeningているものを理解すること

Overriding 
Building configurations... 
loading modules vsstudio 
Running action 'vs2017'... 

をいくつかの印刷を追加し、私のorbis.luaはvsstudioモジュールの前にロードされているので、何の機能がまだ定義されていません。私は間違って何をしたのですか?これをどうやって解決するのですか?

ありがとうございます。

答えて

1

これは少し困惑しました。 Visual Studioのコードは、実際に必要な場合にのみロードされる内部モジュールに移動されました。上書きを試みる前に、そのモジュールを必要とするだけです。

local p = premake 
local vs = require("vstudio") 

p.api.addAllowed("architecture", { "Orbis" }) 

local function archFromConfig_cb(base, cfg, win32) 
    if cfg.system == "Orbis" or cfg.architecture == "Orbis" then 
     return "ORBIS" 
    end 
    return base(cfg, win32) 
end 

p.override(vs, "archFromConfig", archFromConfig_cb) 
+0

これは多くの意味があります。大いに感謝する。 – ilmale

関連する問題