2017-03-18 16 views
0
[email protected]@ 
[email protected][email protected] 
[email protected]@ 

CFLAGS = -pipe -O2 -g `freetype-config --cflags` -c -Wall -Wno-multichar `cat @[email protected]/madlax.specs` 
CPPFLAGS= $(CFLAGS) -Woverloaded-virtual -Wnon-virtual-dtor 

CC  = @[email protected] 
EXE = jpegtranslator 
MLXLIBDIR = @[email protected]/src/kits/objs 

SUBDIR = libjpeg 
SRC := $(SUBDIR)/jcapimin.c jcapistd.c jccoefct.c jccolor.c jcdctmgr.c jcdiffct.c \ 
jchuff.c jcinit.c jclhuff.c jclossls.c jclossy.c jcmainct.c jcmarker.c jcmaster.c jcodec.c \ 
jcomapi.c jcparam.c jcphuff.c jcpred.c jcprepct.c jcsample.c jcscale.c jcshuff.c jctrans.c \ 
jdapimin.c jdapistd.c jdatadst.c jdatasrc.c jdcoefct.c jdcolor.c jddctmgr.c jddiffct.c jdhuff.c \ 
jdinput.c jdlhuff.c jdlossls.c jdlossy.c jdmainct.c jdmarker.c jdmaster.c jdmerge.c jdphuff.c \ 
jdpostct.c jdpred.c jdsample.c jdscale.c jdshuff.c jdtrans.c jerror.c jfdctflt.c jfdctfst.c \ 
jfdctint.c jidctflt.c jidctfst.c jidctint.c jidctred.c jmemmgr.c jmemnobs.c jquant1.c jquant2.c \ 
jutils.c 

OBJS = be_jdatadst.o be_jdatasrc.o be_jerror.o JPEGTranslator.o $(SRC) 
OBJDIR := objs 

include @[email protected]/makefile.rules 

all : $(OBJDIR) $(OBJDIR)/$(EXE) 

$(OBJDIR): 
    mkdir $(OBJDIR) -C $(SUBDIR) 

メイクファイルにサブディレクトリを含めるための正しい方法です

+0

サブディレクトリの* all *ソースファイルに '$(SUBDIR)/'接頭辞を使用する必要があることに注意してください。そして、 'OBJS'の定義に' $(SRC) 'を使うのはおそらく間違っています。また、最終的なプログラムとともにライブラリのすべてのソースをビルドしているので、おそらくリンクするライブラリはありません。 –

答えて

0

最初は、-lオプション(小文字のL)はライブラリにリンクするためのもので、-Lはパスを追加するためのものである(小文字はL)リンカのライブラリ検索パスリストに追加します。

-lを使用して、非標準の場所にあるライブラリにリンクする場合は、-Lが必要です。

のオプションも、-L-lのオプションを省略し、代わりにライブラリのフルパスを指定してください。

関連する問題