1

最新の premake 5 アルファを使用して Visual Studio プロジェクトを生成しています。プロジェクト構造は次のようになります。

root
----include
--------Core
------------Window
----------------Window.h
----src
--------Core
------------Window
----------------Window.cpp
----project
--------Core
------------Core.vcxproj
--------Engine.sln
----premake5.lua

事前作成スクリプト:

solution "Engine"
configurations { "Debug", "Release" }
includedirs { 
    "external/include",
    "include"
    }

filter "configurations:Debug"
    defines { "DEBUG" }
    flags { "Symbols" }
    targetname "%{prj.name}_D"

filter "configurations:Release"
    defines { "NDEBUG" }
    optimize "on"
    targetname "%{prj.name}_R"

project "Engine-Core"
    kind "StaticLib"
    language "C++"
    files {
        "include/Core/**.h",
        "src/Core/**.h",
        "src/Core/**.cpp"
    }
    includedirs {
        "include/Core/"
    }
    targetdir "lib"
    location "project/Core"

ロケーション関数を使用してルート ディレクトリのプロジェクト フォルダーにプロジェクト ファイルが生成されるように、プリメイク スクリプトをセットアップしました。includeirs 関数を使用して、ルート フォルダーにインクルード フォルダーを追加しました。premake スクリプトに関連するように指定しました。Visual Studio で自分のプロジェクトのインクルード ディレクトリを見ると、ディレクトリはプロジェクトが生成されたフォルダーに対して相対的です。この場合、「....\include」になります。結局、Window.cpp ファイルに含めようとすると、Window.h ファイルが見つからないということになります。

ソリューション ファイルとプロジェクト ファイルをルート フォルダーに直接生成すると、すべてを機能させることができます。できればこれは避けたいです。

Visual Studio 用に別のフォルダーにプロジェクト ファイルを生成しながら、入れ子になったフォルダー構造でソース コードを整理できるように、スクリプトを変更する方法はありますか?

ありがとう!

4

0 に答える 0