私はLinuxを学んでいます。私の最初のステップは、projectをLinux上で動作させることです。ここでは、ファイルを生成する単純なメイクファイル(主に教育目的で)、次のとおりです。g ++でデバッグシンボルが生成されない
#------------------------BUILD VARIABLES-----------------------------
# Directories, containing headers
INCLUDE_DIR = ../Include/
# Output directory which will contain output compiled file
OUTPUT_DIR = ../Bin/Debug/
SOURCES = EngineManager.cpp Geometry.cpp Main.cpp Model.cpp \
Shaders.cpp TGAImage.cpp
HEADERS = EngineManager.h Geometry.h Line.h Model.h Shaders.h \
TGAImage.h Triangle.h
#------------------------BUILD_RULES---------------------------------
TinyRenderBuilding : $(addprefix $(INCLUDE_DIR), $(HEADERS)) $(SOURCES)
mkdir -p $(OUTPUT_DIR)
g++ -std=c++14 -o $(OUTPUT_DIR)TinyRender.out -g -I$(INCLUDE_DIR) $(SOURCES)
は私がなぜg++
はデバッグシンボルを生成しない、理解できないのですか? -g
オプションが表示されます
が-ggdbフラグを使用してみてくださいだけではなく-gの(出力で
with debug_info
文字列に注意してください)。 –[DWARF](https://en.wikipedia.org/wiki/DWARF)形式のデバッグ情報が生成されないことを確認しますか?あなたの[GCC](http://gcc.gnu.org/)バージョンは何ですか? 'g ++ -v'を使ってみてください。 **あなたの質問を編集して**改善してください。 –
ビルドする前にすべてのオブジェクトファイルを削除しましたか( 'make clean'を試してください)? –