Hi,
ich soll in ein bestehendes Programm meines einbinden. Das makefile des bisherigen Programms wird mit automake erstellt, von dem ich ehrlich gesagt keine Ahnung habe. Mein Problem ist nun, dass ich für meinen Programmteil eine library einbinden und einige Flaggs setzen muss. Wie schaffe ich es, dass er die Flaggs nur für mein c++ File verwendet und für die anderen die alten läßt?
mein altes makefile für mein Programm sah wie folgt aus:
SYSTEM = i86_linux2_glibc2.3_gcc3.2
LIBFORMAT = static_pic
CPLEXDIR = /usr/ilog/cplex90
CONCERTDIR = /usr/ilog/concert20
CCC = g++
CCOPT = -O -fPIC -fexceptions -DNDEBUG -DIL_STD
CPLEXBINDIR = $(CPLEXDIR)/bin/$(BINDIST)
CPLEXJARDIR = $(CPLEXDIR)/lib/cplex.jar
CPLEXLIBDIR = $(CPLEXDIR)/lib/$(SYSTEM)/$(LIBFORMAT)
CONCERTLIBDIR = $(CONCERTDIR)/lib/$(SYSTEM)/$(LIBFORMAT)
CCLNFLAGS = -L$(CPLEXLIBDIR) -lilocplex -lcplex -L$(CONCERTLIBDIR) -lconcert -lm -lpthread
CLNFLAGS = -L$(CPLEXLIBDIR) -lcplex -lm -lpthread
all:
make all_cpp
execute: all
make execute_cpp
CONCERTINCDIR = $(CONCERTDIR)/include
CPLEXINCDIR = $(CPLEXDIR)/include
EXDIR = $(CPLEXDIR)/examples
EXSRC = $(EXDIR)/src
EXINC = $(EXDIR)/include
EXDATA = $(EXDIR)/data
CCFLAGS = $(CCOPT) -I$(CPLEXINCDIR) -I$(CONCERTINCDIR)
CPP_EX = ocstCpp
all_cpp: $(CPP_EX)
execute_cpp: $(CPP_EX)
ocstCpp
ocstCpp:
$(CCC) $(CCFLAGS) ocstCpp.cpp -o ocstCpp $(CCLNFLAGS)
ich soll in ein bestehendes Programm meines einbinden. Das makefile des bisherigen Programms wird mit automake erstellt, von dem ich ehrlich gesagt keine Ahnung habe. Mein Problem ist nun, dass ich für meinen Programmteil eine library einbinden und einige Flaggs setzen muss. Wie schaffe ich es, dass er die Flaggs nur für mein c++ File verwendet und für die anderen die alten läßt?
mein altes makefile für mein Programm sah wie folgt aus:
SYSTEM = i86_linux2_glibc2.3_gcc3.2
LIBFORMAT = static_pic
CPLEXDIR = /usr/ilog/cplex90
CONCERTDIR = /usr/ilog/concert20
CCC = g++
CCOPT = -O -fPIC -fexceptions -DNDEBUG -DIL_STD
CPLEXBINDIR = $(CPLEXDIR)/bin/$(BINDIST)
CPLEXJARDIR = $(CPLEXDIR)/lib/cplex.jar
CPLEXLIBDIR = $(CPLEXDIR)/lib/$(SYSTEM)/$(LIBFORMAT)
CONCERTLIBDIR = $(CONCERTDIR)/lib/$(SYSTEM)/$(LIBFORMAT)
CCLNFLAGS = -L$(CPLEXLIBDIR) -lilocplex -lcplex -L$(CONCERTLIBDIR) -lconcert -lm -lpthread
CLNFLAGS = -L$(CPLEXLIBDIR) -lcplex -lm -lpthread
all:
make all_cpp
execute: all
make execute_cpp
CONCERTINCDIR = $(CONCERTDIR)/include
CPLEXINCDIR = $(CPLEXDIR)/include
EXDIR = $(CPLEXDIR)/examples
EXSRC = $(EXDIR)/src
EXINC = $(EXDIR)/include
EXDATA = $(EXDIR)/data
CCFLAGS = $(CCOPT) -I$(CPLEXINCDIR) -I$(CONCERTINCDIR)
CPP_EX = ocstCpp
all_cpp: $(CPP_EX)
execute_cpp: $(CPP_EX)
ocstCpp
ocstCpp:
$(CCC) $(CCFLAGS) ocstCpp.cpp -o ocstCpp $(CCLNFLAGS)