13

MinGW でプリコンパイル済みヘッダー ファイルを使用すると問題が発生します。コンパイラはプリコンパイル済みヘッダー ファイルを見つけたようですが、cc1plus.exe は直後にクラッシュします (cc1plus.exe は動作を停止しました)。

これは cc1plus.exe のスタック サイズが小さいことに関連している可能性があることを理解したので、次のようにしてスタック サイズを増やしました。

editbin cc1plus.exe /STACK 33554432

そして私も無駄にしようとしました:

editbin cc1plus.exe /STACK 32768k

ただし、アプリケーションをコンパイルしようとするとクラッシュし続けるため、これは解決しませんでした。

ちなみに、私は最新の MinGw (gcc v 4.6.2) と最新の Eclipse CDT を使用しています。

cc1plus.exe のスタック サイズを正しく増やしていますか? 数え切れないほどの記事やトピックを読んでいるので、どうすればよいか手がかりを持っている人はいますか?

g++ は、私のプリコンパイル済みヘッダー ファイルを見つけて受け入れるようです。

Building file: ../src/AdvancedOgreFramework.cpp
Invoking: GCC C++ Compiler
g++ -DHAVE_W32API_H -DNO_GCC_PRAGMA -I"C:\DevelopmentTools\workspaces\workspace_cpp
\MyGame\inc" -I"C:\docs\ogre3d\CEGUI\CEGUI-0.7.6\cegui\include\falagard" -I"C:\docs 
\ogre3d\CEGUI\CEGUI-0.7.6\cegui\include\RendererModules\Ogre" -I"C:\docs\ogre3d\CEGUI
\CEGUI-0.7.6\cegui\include" -I"C:\docs\ogre3d\ogre1.8.0_mingw_sdk\OgreSDK_MinGW_v1-8-0
\include" -O0 -g3 -H -Wall -c -Winvalid-pch -MMD -MP -MF"src/AdvancedOgreFramework.d" 
-MT"src/AdvancedOgreFramework.d" -o "src/AdvancedOgreFramework.o" "../src 
/AdvancedOgreFramework.cpp"
! C:\DevelopmentTools\workspaces\workspace_cpp\MyGame\inc/Precompiled.h.gch

.gch を生成するビルド前の make として実行する makefile は次のとおりです。

C_FLAGS = -O0 -g3 -Wall -c -MMD -MP
INC_PATH = -IC:/docs/ogre3d/ogre1.8.0_mingw_sdk/OgreSDK_MinGW_v1-8-0/include -IC:/docs
/ogre3d/CEGUI/CEGUI-0.7.6-mingw/cegui/include -IC:/docs/ogre3d/CEGUI/CEGUI-0.7.6-
mingw/cegui/include/RendererModules/Ogre -IC:/docs/ogre3d/CEGUI/CEGUI-0.7.6-mingw/cegui
/include/falagard


all: Precompiled.h.gch

@echo 'Finished precompiling headers....'

Precompiled.h.gch: Precompiled.h    
    @echo 'Building target: $@'
g++.exe Precompiled.h $(INC_PATH) $(C_FLAGS)     

clean:
rm Precompiled.h.gch

Ogre3D および CEGUI ヘッダーのほとんどをプリコンパイルしようとしているため、.gch のサイズは 169 MB を超えています。

ありがとう、アダム。

4

2 に答える 2

0

同様の問題があり、mingwを更新して解決しました:

  1. シェルを実行 (cmd または sh)
  2. パッケージ リストの更新:

    mingw-get update

  3. この実行アップグレードの後

    mingw-get upgrade

この後、mingw パッケージは最新バージョンにアップグレードされ、エラーを解消できるはずです。

于 2016-11-05T19:13:59.513 に答える