1

私はプロジェクトに取り組んでおり、Boost の正規表現クラスを使用することにしました。そこで、正規表現クラスのみをコンパイルし、libboost_regex.a をプロジェクト ディレクトリのサブフォルダー regex に移動しました。このファイルをリンクするにはどうすればよいですか?

次のメイクファイルがあります。

rm=/bin/rm -f
CC= clang++
PROGNAME= story
CFLAGS= -L ./regex
LIBS=-llibboost_regex

SRCS = main.cpp  Environment.cpp 
OBJS = main.o Environment.o 

.cpp.o:
    $(rm) $@
    $(CC) $(CFLAGS) -c $*.cpp -o $*.o

all: $(PROGNAME)

$(PROGNAME) : $(OBJS)
    $(CC) $(CFLAGS) -o $(PROGNAME) $(OBJS) $(LIBS)

誰でもこれで私を助けることができますか?

ありがとう

4

2 に答える 2

1

あなたの場合の最も簡単な方法は、おそらく次のとおりです。

LIBS=-L./regex -lboost_regex

また

LIBS=./regex/libboost_regex.a
于 2013-02-27T21:35:51.347 に答える
1

これらの 2 行:

CFLAGS= -L ./regex
LIBS=-llibboost_regex

次のようにする必要があります。

LDFLAGS= -L./regex
LIBS= -lboost_regex

LDFLAGSリンカー用であり、libプレフィックスはライブラリには必要ありません。

于 2013-02-27T21:45:00.307 に答える