私は Makefile を作成するのが初めてです。動的リンクを使用するとプログラムを正常にコンパイルできますが、静的にコンパイルしようとすると「未定義の参照」エラーが発生します。
CC=g++
CXXFLAGS= -g -Wall -Wextra
#LDFLAGS= -g -l boost_iostreams #this works for dynamic linking
LDFLAGS= -Wl,-Bstatic -lboost_iostreams -Wl,-Bdynamic
default: zoneParserTester
zoneParser:
$(CC) $(CXXFLAGS) $(LDFLAGS) $@.cpp
zoneParserTester: zoneParser.o
$(CC) $(CXXFLAGS) $(LDFLAGS) zoneParser.o -o $@ $@.cpp
gzExample:
$(CC) $(CXXFLAGS) $(LDFLAGS) -o $@ $@.cpp
オンラインで検索したところ、使用する正しい引数は次のように見えました: "-Wl,-Bstatic -lboost_iostreams -Wl,-Bdynamic"。誰かが私が間違っていることを教えてもらえますか?