Advertisement

Crossing over/ makefiles... wtf?

Started by April 20, 2005 11:21 AM
13 comments, last by Leffe 19 years, 7 months ago
There are other make variants, for instance qmake from trolltech. Qmake works on linux as well as on windows and also may create a makefile from a visual studio project and vice versa.

Or you may want to use Ant from apache.
http://ant.apache.org/
This tool is cross-platform and does not have those quirks that make has.
NAnt is like Ant, but for/using .NET. I haven't used Ant, but NAnt sure is nice (but slow).

Quote: Original post by Aly
but in SCons there is no need.


And neither is there in GNU make.
Advertisement
Thanks for the help everybody! This has helped me out quite a bit. Makefiles aren't so bad. Will take a little getting used to, but it works. And again, thanks for the help on the autoload for my fat32 file system.
HxRender | Cornerstone SDL TutorialsCurrently picking on: Hedos, Programmer One
Quote: Original post by Leffe
...

And neither is there in GNU make.


Interesting, I guess for small stuff GNU make and SCons both do a pretty good job. From my experience with autotools I would say that SCons is a much nicer system. Just to complete my example here's what a GNU Makefile would look like:

OBJS = Xinterface.o universe.o backprop.o main.oLIBS = -lX11 -lmmain: $(OBJS)  g++ -o main $(OBJS) $(LIBS)clean:  rm -rf *.o main


I'm not sure if there's a way for GNU make to automatically figure out which compiler to use or to automatically generate a clean target. In any case I don't think you'll have a problem with make.
Quote: Original post by Aly
OBJS = Xinterface.o universe.o backprop.o main.oLIBS = -lX11 -lmmain: $(OBJS)  g++ -o main $(OBJS) $(LIBS)clean:  rm -rf *.o main


I'm not sure if there's a way for GNU make to automatically figure out which compiler to use or to automatically generate a clean target. In any case I don't think you'll have a problem with make.


As far as I know there is no way of generating clean rules, that's the thing I like the most about SCons. This example however, could be shortened and improved a little :)

OBJS = Xinterface.o universe.o backprop.o main.oLDFLAGS = -lX11 -lm # Used when linkingEXE = main$(EXE): $(OBJS)clean:  $(RM) $(OBJS) $(EXE)


OK, it's probably as long, but now you only have to change things at one place.

This topic is closed to new replies.

Advertisement