4

現在のプロジェクトはかなり複雑な構造 (私は変更できません) を持っており、CMake を使用しています。しかし、コンパイル可能な Makefile を作成するのに問題があります。

主な問題は次のとおりです。プロジェクトが に保存されD:\a\b\c\、一部のソースがD:\a\b\c\src\d\eに、ビルド フォルダーが に保存されている場合D:\a\b\c\build、cmake は のようなフォルダーをいくつか作成しますD:\a\b\c\build\SubProjectName\CMakeFiles\DetailedSubPrjectName.dir\D_\a\b\c\src\d\e。結果のパスが 260 文字を超えることがあります。

プロジェクト構造を平坦化できません(コードではありません)。これを機能させる唯一の方法は、プロジェクト全体をフォルダー構造のどこか高い場所に配置することです-(非常に)ドライブルートの近くに配置します(約10〜15文字の余裕があります)。しかし、これは実際には受け入れられません。より多くの文字が必要になる場合があります。

ビルドディレクトリにフラットな構造を作成するか、より長いパス名を使用するように CMake を納得させる方法はありますか (WinXP の場合)? それとも他のアイデア?

4

2 に答える 2

0

CMAKE_USE_RELATIVE_PATHSを使用してパスを少し短くすることもできますが、うまくいかなかったという記録があるようです…</p>

いずれにせよ、問題は CMake よりも Windows に起因するものであり、システムの最大パス長を増やすことをお勧めします。残念ながら、ここではお手伝いできません。

ただし、CMake はおそらく Windows XP のパスの長さの制限を認識しているはずなので、CMake 開発者がそれについて何かできるようにバグを報告することをお勧めします。

于 2012-04-13T16:19:13.677 に答える