I have a project with a makefile. I need to run it. I am under windows 7. I do not know how to exactly run it. Can someone help please. I have downloaded cygwin, and tried to use the "make" command but I get an
error saying that "make command not found". I tried installing the make package but I think it didn't work or I installed the wrong package. Please help me.
makefiles
When you ran make, did you do so from the cygwin bash environment or the standard cmd.exe shell?
Thanks for the reply, I got the make command to work but I am still not able to run the makefile. This is what the makefile contains :
[source]
CC = g++
GLPK = glpk-4.34
CFLAGS = -O3 -Wall -Iglpk-4.34/include -D LPSOLVER_GLPK
LIBPATH = glpk-4.34/src
#CFLAGS = -O3 -Wall
#LIBPATH =
#LIBPATH = .
ifneq ($(MAKECMDGOALS), CPLEX)
CFLAGS = -O3 -Wall -I$(GLPK)/include -D LPSOLVER_GLPK
LIBPATH = $(GLPK)/src
#LIBPATH = .
else
CFLAGS = -O3 -lpthread -Wall -D LPSOLVER_CPLEX -I/usr/ilog/cplex101/include/ilcplex/
LIBPATH = /usr/ilog/cplex101/lib/x86-64_RHEL3.0_3.2/static_pic
endif
all: GLPK
BioSequenceMatrix.o: BioSequenceMatrix.cpp BioSequenceMatrix.h Utils.h
$(CC) $(CFLAGS) -c BioSequenceMatrix.cpp
BinaryMatrix.o: BinaryMatrix.cpp BinaryMatrix.h Utils.h
$(CC) $(CFLAGS) -c BinaryMatrix.cpp
GenotypeMatrix.o: GenotypeMatrix.cpp GenotypeMatrix.h Utils.h
$(CC) $(CFLAGS) -c GenotypeMatrix.cpp
UnWeightedGraph.o: UnWeightedGraph.cpp UnWeightedGraph.h Utils.h
$(CC) $(CFLAGS) -c UnWeightedGraph.cpp
Utils.o : Utils.cpp Utils.h
$(CC) $(CFLAGS) -c Utils.cpp
Utils2.o : Utils2.cpp Utils2.h Utils.h
$(CC) $(CFLAGS) -c Utils2.cpp
Utils3.o : Utils3.cpp Utils3.h Utils.h
$(CC) $(CFLAGS) -c Utils3.cpp
SNPUtils.o : SNPUtils.cpp SNPUtils.h Utils.h
$(CC) $(CFLAGS) -c SNPUtils.cpp
BlockUtils.o : BlockUtils.cpp BlockUtils.h Utils.h
$(CC) $(CFLAGS) -c BlockUtils.cpp
BlockILP.o : BlockILP.cpp BlockILP.h Utils.h
$(CC) $(CFLAGS) -c BlockILP.cpp
HeuristicBlock.o : HeuristicBlock.cpp BlockUtils.h Utils.h
$(CC) $(CFLAGS) -c HeuristicBlock.cpp
BlockMCMC.o : BlockMCMC.cpp BlockMCMC.h Utils.h
$(CC) $(CFLAGS) -c BlockMCMC.cpp
ExactBlock.o : ExactBlock.cpp ExactBlock.h Utils.h
$(CC) $(CFLAGS) -c ExactBlock.cpp
ILPSolver.o : ILPSolver.cpp ILPSolver.h Utils.h
$(CC) $(CFLAGS) -c ILPSolver.cpp
glpk_wraper.o : glpk_wraper.c
gcc $(CFLAGS) -c glpk_wraper.c
main.o: main.cpp BinaryMatrix.h Utils.h
$(CC) $(CFLAGS) -c main.cpp
GLPK: main.o BioSequenceMatrix.o BinaryMatrix.o UnWeightedGraph.o Utils.o Utils2.o \
SNPUtils.o BlockUtils.o HeuristicBlock.o Utils3.o BlockMCMC.o ExactBlock.o GenotypeMatrix.o \
ILPSolver.o glpk_wraper.o BlockILP.o
$(CC) $(CFLAGS) -o RecBlock main.o BioSequenceMatrix.o BinaryMatrix.o UnWeightedGraph.o SNPUtils.o \
Utils.o Utils2.o BlockUtils.o HeuristicBlock.o Utils3.o BlockMCMC.o \
ExactBlock.o GenotypeMatrix.o ILPSolver.o glpk_wraper.o BlockILP.o \
$(LIBPATH)/libglpk.a
CPLEX: main.o BioSequenceMatrix.o BinaryMatrix.o UnWeightedGraph.o Utils.o Utils2.o \
SNPUtils.o BlockUtils.o HeuristicBlock.o Utils3.o BlockMCMC.o ExactBlock.o GenotypeMatrix.o \
ILPSolver.o glpk_wraper.o BlockILP.o
$(CC) $(CFLAGS) -o RecBlock main.o BioSequenceMatrix.o BinaryMatrix.o UnWeightedGraph.o SNPUtils.o \
Utils.o Utils2.o BlockUtils.o HeuristicBlock.o Utils3.o BlockMCMC.o \
ExactBlock.o GenotypeMatrix.o ILPSolver.o glpk_wraper.o BlockILP.o \
$(LIBPATH)/libilocplex.a $(LIBPATH)/libcplex.a
[/source]
I'm not sure what to do. I have never worked with cygwin. Currently the command I'm doing is "make Makefile" but I get an error saying "nothing to be done for 'Makefile'" where 'Makefile' is the actual Makefile filename that contains the above data. Please help.
[source]
CC = g++
GLPK = glpk-4.34
CFLAGS = -O3 -Wall -Iglpk-4.34/include -D LPSOLVER_GLPK
LIBPATH = glpk-4.34/src
#CFLAGS = -O3 -Wall
#LIBPATH =
#LIBPATH = .
ifneq ($(MAKECMDGOALS), CPLEX)
CFLAGS = -O3 -Wall -I$(GLPK)/include -D LPSOLVER_GLPK
LIBPATH = $(GLPK)/src
#LIBPATH = .
else
CFLAGS = -O3 -lpthread -Wall -D LPSOLVER_CPLEX -I/usr/ilog/cplex101/include/ilcplex/
LIBPATH = /usr/ilog/cplex101/lib/x86-64_RHEL3.0_3.2/static_pic
endif
all: GLPK
BioSequenceMatrix.o: BioSequenceMatrix.cpp BioSequenceMatrix.h Utils.h
$(CC) $(CFLAGS) -c BioSequenceMatrix.cpp
BinaryMatrix.o: BinaryMatrix.cpp BinaryMatrix.h Utils.h
$(CC) $(CFLAGS) -c BinaryMatrix.cpp
GenotypeMatrix.o: GenotypeMatrix.cpp GenotypeMatrix.h Utils.h
$(CC) $(CFLAGS) -c GenotypeMatrix.cpp
UnWeightedGraph.o: UnWeightedGraph.cpp UnWeightedGraph.h Utils.h
$(CC) $(CFLAGS) -c UnWeightedGraph.cpp
Utils.o : Utils.cpp Utils.h
$(CC) $(CFLAGS) -c Utils.cpp
Utils2.o : Utils2.cpp Utils2.h Utils.h
$(CC) $(CFLAGS) -c Utils2.cpp
Utils3.o : Utils3.cpp Utils3.h Utils.h
$(CC) $(CFLAGS) -c Utils3.cpp
SNPUtils.o : SNPUtils.cpp SNPUtils.h Utils.h
$(CC) $(CFLAGS) -c SNPUtils.cpp
BlockUtils.o : BlockUtils.cpp BlockUtils.h Utils.h
$(CC) $(CFLAGS) -c BlockUtils.cpp
BlockILP.o : BlockILP.cpp BlockILP.h Utils.h
$(CC) $(CFLAGS) -c BlockILP.cpp
HeuristicBlock.o : HeuristicBlock.cpp BlockUtils.h Utils.h
$(CC) $(CFLAGS) -c HeuristicBlock.cpp
BlockMCMC.o : BlockMCMC.cpp BlockMCMC.h Utils.h
$(CC) $(CFLAGS) -c BlockMCMC.cpp
ExactBlock.o : ExactBlock.cpp ExactBlock.h Utils.h
$(CC) $(CFLAGS) -c ExactBlock.cpp
ILPSolver.o : ILPSolver.cpp ILPSolver.h Utils.h
$(CC) $(CFLAGS) -c ILPSolver.cpp
glpk_wraper.o : glpk_wraper.c
gcc $(CFLAGS) -c glpk_wraper.c
main.o: main.cpp BinaryMatrix.h Utils.h
$(CC) $(CFLAGS) -c main.cpp
GLPK: main.o BioSequenceMatrix.o BinaryMatrix.o UnWeightedGraph.o Utils.o Utils2.o \
SNPUtils.o BlockUtils.o HeuristicBlock.o Utils3.o BlockMCMC.o ExactBlock.o GenotypeMatrix.o \
ILPSolver.o glpk_wraper.o BlockILP.o
$(CC) $(CFLAGS) -o RecBlock main.o BioSequenceMatrix.o BinaryMatrix.o UnWeightedGraph.o SNPUtils.o \
Utils.o Utils2.o BlockUtils.o HeuristicBlock.o Utils3.o BlockMCMC.o \
ExactBlock.o GenotypeMatrix.o ILPSolver.o glpk_wraper.o BlockILP.o \
$(LIBPATH)/libglpk.a
CPLEX: main.o BioSequenceMatrix.o BinaryMatrix.o UnWeightedGraph.o Utils.o Utils2.o \
SNPUtils.o BlockUtils.o HeuristicBlock.o Utils3.o BlockMCMC.o ExactBlock.o GenotypeMatrix.o \
ILPSolver.o glpk_wraper.o BlockILP.o
$(CC) $(CFLAGS) -o RecBlock main.o BioSequenceMatrix.o BinaryMatrix.o UnWeightedGraph.o SNPUtils.o \
Utils.o Utils2.o BlockUtils.o HeuristicBlock.o Utils3.o BlockMCMC.o \
ExactBlock.o GenotypeMatrix.o ILPSolver.o glpk_wraper.o BlockILP.o \
$(LIBPATH)/libilocplex.a $(LIBPATH)/libcplex.a
[/source]
I'm not sure what to do. I have never worked with cygwin. Currently the command I'm doing is "make Makefile" but I get an error saying "nothing to be done for 'Makefile'" where 'Makefile' is the actual Makefile filename that contains the above data. Please help.
If you want to specify a particular make file to use you use "make -f [filename]". Just "make [filename]" will try to build the target with the same name as the file in the default make file. If no such target exists you get the message that there's nothing to do.
Thanks for the help. I tried this command : "make -f Makefile" and got this :
$ make -f Makefile
g++ -O3 -Wall -Iglpk-4.34/include -D LPSOLVER_GLPK -c main.cpp
make: g++: Command not found
make: *** [main.o] Error 127
I'm not sure what to do?
$ make -f Makefile
g++ -O3 -Wall -Iglpk-4.34/include -D LPSOLVER_GLPK -c main.cpp
make: g++: Command not found
make: *** [main.o] Error 127
I'm not sure what to do?
I probably didn't. Because I only installed the base package + make package. I will try to install the gcc/g++. Any instruction on the exact name on the installation package? Thanks.
Hey Thanks for the help. I installed the gcc-g++ and I got it to build the program. I used the "make" command to build the file, and I got it to build the file, and looking at the directory, I do see the object files. Now Can you
help me run the program and possibly produce an executable. Thanks
help me run the program and possibly produce an executable. Thanks
Hey Thanks for the help. I installed the gcc-g++ and I got it to build the program. I used the "make" command to build the file, and I got it to build the file, and looking at the directory, I do see the object files. Now Can you
help me run the program and possibly produce an executable. Thanks
From what I see, typing "make" should give you the binary. Without parameters, make will look for the first target in the makefile. Typically, this is "all". "all" depends on "GLPK". So look at the rule to make GLPK, which tells it depends on ...
GLPK: main.o BioSequenceMatrix.o BinaryMatrix.o UnWeightedGraph.o Utils.o Utils2.o \
SNPUtils.o BlockUtils.o HeuristicBlock.o Utils3.o BlockMCMC.o ExactBlock.o GenotypeMatrix.o \
ILPSolver.o glpk_wraper.o BlockILP.o
and in the next line it says ...
$(CC) $(CFLAGS) -o RecBlock main.o BioSequenceMatrix.o BinaryMatrix.o UnWeightedGraph.o SNPUtils.o \
Utils.o Utils2.o BlockUtils.o HeuristicBlock.o Utils3.o BlockMCMC.o \
ExactBlock.o GenotypeMatrix.o ILPSolver.o glpk_wraper.o BlockILP.o \
$(LIBPATH)/libglpk.a
the parameter -o RecBlock says that the name of the output file should be RecBlock.
Hey thanks a lot. So I managed to get the executable from your suggestion, I just had to add the appropriate dll from cygwin into the folder. Sorry for nagging, but I have one more problem. When I run the executable, it pops up and exits quickly. I don't think that should happen, because I know the executable expects inputs so I thought it should stay visible. Any advice on how to fix this? Thanks again.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement