2

qmake(qmake -project; qmake; nmake)を使用してプロジェクトをコンパイルしました。ファイル.proを開いたときに、プロジェクトをリロードすると、次のエラーが発生しました。

アイテム「debug\moc_Rls.cpp」は、「生成されたファイル」フィルターの下にすでに存在します

私がソリューションを開いたとき、現在、魂の一部であるプロジェクトは利用できません。

証拠となる質問:何をすべきか?

4

3 に答える 3

6

ああ、申し訳ありませんが、Linux を使用していると思っていたのは私の間違いでした。

次の手順に従います。

1.[Project_Name].vcxproj.filtersプロジェクトディレクトリ配下のファイルを開きます。

2.次の行を参照してください(私は私のものを貼り付けています)

  <ItemGroup>
    <ClCompile Include="Main.c">
      <Filter>Source Files</Filter>
    </ClCompile>
    <ClCompile Include="FunctBank.c">
      <Filter>Source Files</Filter>
    </ClCompile>
  </ItemGroup>
  <ItemGroup>
    <ClInclude Include="funcDef.h">
      <Filter>Header Files</Filter>
    </ClInclude>
  </ItemGroup>

debug\moc_Rls.cpp3.ここでは、2 つのフィルターの下で 2 回定義されていることがわかります。

4.私が推測できるそれらの1つは

<ClInclude Include="debug\moc_Rls.cpp">
  <Filter>Generated Files</Filter>
</ClInclude>

もう 1 つは、自分で検出する必要があります。

見つけた後、そのフィルターを削除すると、プロジェクトがスムーズに実行されます。

于 2012-08-08T11:09:11.123 に答える
1

これは古い質問ですが、この問題を経験したばかりなので、解決策を共有しています。QTCreator を使用して、別のサブフォルダーにフォーム クラスを作成しました。そうすることで、「重複した」ファイルがqrcファイルに追加され、何らかの理由でQTCreatorがプロジェクトファイルとして認識しました。qrc からエントリを削除すると修正されました。

于 2014-07-24T20:16:36.047 に答える