2013-02-27 55 views
1

我正在開發一個項目,並決定使用Boost的正則表達式類。所以我只編譯了正則表達式類,並將libboost_regex.a移到了我的項目目錄中的子文件夾正則表達式中。我怎樣才能得到這個文件鏈接?沒有找到相關庫的Makefile

我有以下生成文件:

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) [email protected] 
    $(CC) $(CFLAGS) -c $*.cpp -o $*.o 

all: $(PROGNAME) 

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

任何人可以幫助我嗎?

感謝

回答

1

這兩條線:

CFLAGS= -L ./regex 
LIBS=-llibboost_regex 

應該是:

LDFLAGS= -L./regex 
LIBS= -lboost_regex 

LDFLAGS用於連接器,而lib前綴不是庫所需要的。

+1

真棒,所以我在正確的軌道上哈哈。謝謝 – crasx 2013-02-27 22:57:16

1

在你的情況下,最簡單的方法可能只是:

LIBS=-L./regex -lboost_regex 

LIBS=./regex/libboost_regex.a