C++ Library/Link Question

Douglas Jerome plug-devel@lists.PLUG.phoenix.az.us
Thu Jul 12 16:21:02 2001


Oops!

I had the constructor declared in the .h file
but not defined in the .cc file.  :/


Rob Wehrli wrote:
> 
> Douglas Jerome wrote:
> >
> > So, if this list is not apropriate for this sort of direct
> > question, let me know and I wont do it (anymore). But, I
> > have a question about linking together C++ code.
> >
> > I compile several C++ files (f1.cc, f2.cc, and f3.cc) and
> > incrementally link them together:
> >
> >         ld -r -o lib.o f1.o f2.o f3.o
> >                 or
> >         ar r lib.a f1.o f2.o f3.o
> >
> > then I compile some other files (main.cc, p1.cc, and p2.cc)
> > with a main and link them together with lib.o from above:
> >
> >         g++ -o prog main.o p1.o p2.o lib.o
> >                 or
> >         g++ -o prog main.o p1.o p2.o lib.a
> >
> 
> You'll want to name your library file as follows:  lib(NAME).a
> 
> EG:     ar -r libmylib.a *.o
> 
> Then specify on your commandline:
> 
> g++ -o prog main.o -L. -lNAME (any .o files not in libNAME.a)
> 
> ...or you could simply rename your current lib.a file to liblib.a and
> your
> 
> >         g++ -o prog main.o p1.o p2.o lib.a
> 
> Should work with the -L. -llib switches added...you can also add the
> -static switch to the commandline.
> 
> > It works fine for gcc, but doesn't work for g++; the
> > code in main.cc, p1.cc, and p2.cc that try to make objects
> > from the classes in lib.o can't find them. There are
> > unresolved references, as if I didn't have lib.o involved
> > at all.
> >
> > Anyone know where I can find information on making and using
> > a library with C++?
> 
> man ar :)
> 
> >
> > Thanks.
> >
> > --
> > Douglas Jerome <djerome@users.sourceforge.net>
> 
> Take Care.
> 
> Rob!
> _______________________________________________
> PLUG-devel mailing list  -  PLUG-devel@lists.PLUG.phoenix.az.us
> http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-devel

-- 
Douglas Jerome
http://www.primenet.com/~jerome
http://hackerlabs.sourceforge.net