This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: Make Problems



<snip>
> include ../make.$(COMPILER)
>
> CCC   = $(CPPCOMPILER)
>
> SOURCES.cc    =  \
>                 VRMLVisitor.cc \
>                 SGGTVisitor.cc \
>                 TransformNode.cc \
>                 RootNode.cc \
>                 GroupNode.cc \
>                 LODNode.cc \
>                 MaterialNode.cc \
>                 DirectionalLightNode.cc \
>                 PointLightNode.cc \
>                 SpotLightNode.cc \
>                 GeometryBoxNode.cc \
>                 GeometryConeNode.cc \
>                 GeometryCylinderNode.cc \
>                 GeometrySphereNode.cc \
>                 GeometryFileNode.cc \
>                 Vec3.cc \
>                 RotationVec.cc
>
> SOURCES               = $(SOURCES.cc)
>
> OBJECTS.cc    = $(SOURCES.cc:.cc=.o)
>
> OBJECTS               = $(OBJECTS.cc)
>
> CFLAGS                = -DDEBUG=1 -I../inc
> -I/usr/local/gcc2.95/include
> CCFLAGS       = $(CFLAGS)
>
> LISGGT_SO     = ../lib/libSGGT.so
 - - - - - - - >~~~~~~~~~~~~~~~~~ (.so extension is for unix shared library)
Sorry I wanted to make a .a library with AR
> LISGGT_A      = ../lib/libSGGT.a
Therefore I replaced the following section:
> # Standard targets.
>
> all: $(LISGGT_SO)
>
>  $(LISGGT_SO): $(OBJECTS)
>       @echo ">>>"
>       @echo ">>> Making library $@
>       @echo ">>>"
>       $(RM) $@
>       $(LD) $(SHARED_LDFLAGS) -o $@ $(OBJECTS)
 ------------^^^^^^^^^^^^^^^^^ (Cygwin ld does not support that type of
shared library
                               (you need to create a DLL instead
Again sorry I want to make .a library
> .cc.o:
>       @echo ">>>"
>       @echo ">>> Compiling $<"
>       @echo ">>>"
>       $(COMPILE.cc) $(PIC) $<
With:
all: $(LISGGT_A)
 $(LISGGT_A): $(OBJECTS)
 @echo ">>>"
 @echo ">>> Making library $@
 @echo ">>>"
 $(RM) $@
 $(AR) $(STATIC_LDFLAGS) -o $@ $(OBJECTS) #where STATIC_LDFLAGS=rc

.cc.o:
 @echo ">>>"
 @echo ">>> Compiling $<"
 @echo ">>>"
 $(COMPILE.cc) $(PIC) $<

 <snip>
> depend:
>       makedepend $(CPPFLAGS) -w30 -I$(COMP_INC) $(SOURCES)
> # DO NOT DELETE THIS LINE -- make depend depends on it.

>Please scan the mailing list and read the FAQ about Cygwin shared
libraries.  And scan the mailing list about DLL files.
I know this is possible to make a .a library, as I have done it with another
simpler makefile.
But I don't see how my making a .so or .a library has anything to do with
the fact that it doesn't know howto make a .o file
e.g.
file://MAYA/.../sandro $ make --unix
cd src;make all
make[1]: *** No rule to make target `VRMLVisitor.o', needed by
`../lib/libSGGT.a'.  Stop.
make: *** [all] Error 2

Make version 3.75
This must be a problem with make as it works on un*x machines.
Any Ideas ?

Thank You
Satpal Chander


--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]