project management with make

 the question is 

 

The code in project2 is for a program that plays a simple game called Chomp.

The programmers of this project have opted to package some of their code in a “module” called chomp.adt, from which the related files cookie.h and cookie.cpp files can be generated.

The steps necessary to produce this program are:

  1. Run the command
    csplit chomp.adt "/Split Here/"
    and copy the resulting file xx00 to cookie.h.
  2. Run the command
    csplit chomp.adt "/Split Here/"
    and copy the resulting file xx01 to cookie.cpp.
  3. Compile cookie.cpp to produce cookie.o.
  4. Compile mainProg.cpp to produce mainProg.o.
  5. Link the the .o files to produce an executable program named playChomp

Write a makefile that will carry out these steps. Your makefile should result in only the minimum required amount of steps when any input file to this process is changed. (Note: you will probably not be able to base this makefile upon my self-updating makefile as in the earlier part of the assignment. Instead, you will probably find it necessary to write this one from scratch.

_________________________________________________

I am currently having an issuewith the question above. I am meant to create a makefile that runsthe program like stated above, and currently this is mymakefile:

all: cookie.h cookie.cpp playChomp cookie.o mainProg.o

cookie.h: chomp.adt
csplit chomp.adt “/Split Here/”
cp xx00 cookie.h
cp xx01 cookie.cpp
 

playChomp: cookie.o mainProg.o
g++ -o playChomp cookie.o mainProg.o

cookie.o: cookie.cpp
g++ -c cookie.cpp

mainProg.o: mainProg.cpp
g++ -c mainProg.cpp

However, I am receiving this error code:

Your makefile does not build playChomp in 3 distinct g++ stepswhen chomp.adt has been changed:
csplit chomp.adt “/Split Here/”
1372
8632
cp xx00 cookie.h
cp xx01 cookie.cpp
g++ -c cookie.cpp
g++ -o playChomp cookie.o mainProg.o

is there anything that I can do to fix my makefile?

Tags: No tags