预制“无活动解决方案,项目或配置”错误

时间:2016-05-19 12:32:24

标签: premake

我正在尝试使用像这样的自定义脚本运行premake

  

premake4.exe -file = proj4_shared.lua vs2010

我得到了

  

proj4_shared.lua:2:没有活动的解决方案,项目或配置

proj4_shared.lua的观点:

#!lua
solution ("Proj4")
    project "proj4"
        language "C++"
        kind     "SharedLib"
        files  { "proj4/*.h", "src/src/*.c", "src/src/proj4.def" }
        excludes { "src/src/cs2cs.c", "src/src/geod.c", "src/src/nad2bin.c", "src/src/nad2nad.c" }
        location (BUILD_DIR .. "vcproj")
        includedirs { "src/src" }
        defines { "WIN32", "_CRT_SECURE_NO_WARNINGS" }
        buildoptions { "/W1" }

        local p = project()
        p.uuid = GetExistingUuid(p) or p.uuid

        configuration { "Debug*" }
            defines { "_DEBUG", "DEBUG" }
            flags   { "Symbols" }
            targetsuffix "D"

        configuration { "Release*" }
            defines { "NDEBUG" }
            flags   { "Optimize" }
            if (not DISABLE_RELEASE_SYMBOLS) then flags { "Symbols" } end
            targetsuffix ""

根据https://github.com/premake/premake-4.x/wiki/solution

  

解决方案功能会创建一个新解决方案并使其处于活动状态

那么问题是什么?

1 个答案:

答案 0 :(得分:0)

我建议您尝试:

solution ("Proj4")
  local p = project "proj4"
  ...

我怀疑对project()的调用没有任何争论会使系统混乱。

可替换地:

您可以尝试:

local p = premake.api.current.project

这也应该可以帮助您了解当前项目。

注意:我使用的是premake5.exe,而不是premake 4,因此有些事情可能在过渡期间发生了变化。

相关问题