Re: Newbie question - installation/linking issue

"Matthew A. Nicholson" <[email protected]> Wed, 27 Sep 2006 21:55:23 -0500
Newsgroups gmane.comp.gcc.cgicc.general
Message-ID <[email protected]>
When building the program, make sure you you link with cgicc.

g++ -o my-proggy my-proggy.cc -lcgicc

Tal Reichert wrote:
> Hi,
>  
> I installed cgicc-3.2.3 on WhiteBox Linux (in effect RedHat ES). I 
> downloaded the tar, untarred it, did "configure", "make" and "make 
> install", and now I'm trying to compile a simple test program I've taken 
> from the tutorial.
>  
> I obviously either didn't install something properly or I'm not 
> including some library, as the linker is not happy with me. Any help 
> would be appreciated - I attached what I got at the bottom of this message.
>  
> Any help would be appreciated, thanks.
>  
> Tal.
>  
>  
> /tmp/ccv17W3J.o(.text+0x12a): In function `main':
> : undefined reference to `cgicc::Cgicc::Cgicc(cgicc::CgiInput*)'
> /tmp/ccv17W3J.o(.text+0x147): In function `main':
> : undefined reference to `cgicc::HTTPHTMLHeader::HTTPHTMLHeader()'
> /tmp/ccv17W3J.o(.text+0x15b): In function `main':
> : undefined reference to `cgicc::operator<<(std::basic_ostream<char, 
> std::char_traits<char> >&, cgicc::MStreamable const&)'
> /tmp/ccv17W3J.o(.text+0x190): In function `main':
> : undefined reference to `cgicc::HTTPHTMLHeader::~HTTPHTMLHeader()'
> /tmp/ccv17W3J.o(.text+0x1b3): In function `main':
> : undefined reference to `cgicc::HTTPHTMLHeader::~HTTPHTMLHeader()'
> /tmp/ccv17W3J.o(.text+0x24a): In function `main':
> : undefined reference to `cgicc::operator<<(std::basic_ostream<char, 
> std::char_traits<char> >&, cgicc::MStreamable const&)'
> /tmp/ccv17W3J.o(.text+0x253): In function `main':
> : undefined reference to `cgicc::operator<<(std::basic_ostream<char, 
> std::char_traits<char> >&, cgicc::MStreamable const&)'
> /tmp/ccv17W3J.o(.text+0x40c): In function `main':
> : undefined reference to `cgicc::operator<<(std::basic_ostream<char, 
> std::char_traits<char> >&, cgicc::MStreamable const&)'
> /tmp/ccv17W3J.o(.text+0x4bc): In function `main':
> : undefined reference to 
> `cgicc::Cgicc::getElement(std::basic_string<char, 
> std::char_traits<char>, std::allocator<char> > const&)'
> /tmp/ccv17W3J.o(.text+0x572): In function `main':
> : undefined reference to `cgicc::Cgicc::getElements() const'
> /tmp/ccv17W3J.o(.text+0x5d2): In function `main':
> : undefined reference to `cgicc::FormEntry::operator*() const'
> /tmp/ccv17W3J.o(.text+0x694): In function `main':
> : undefined reference to `cgicc::operator<<(std::basic_ostream<char, 
> std::char_traits<char> >&, cgicc::MStreamable const&)'
> /tmp/ccv17W3J.o(.text+0x69d): In function `main':
> : undefined reference to `cgicc::operator<<(std::basic_ostream<char, 
> std::char_traits<char> >&, cgicc::MStreamable const&)'
> /tmp/ccv17W3J.o(.text+0x761): In function `main':
> : undefined reference to `cgicc::Cgicc::~Cgicc()'
> /tmp/ccv17W3J.o(.text+0x781): In function `main':
> : undefined reference to `cgicc::Cgicc::~Cgicc()'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_7htmlTagEEC1Ev+0x15): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::htmlTag>::HTMLBooleanElement()':
> : undefined reference to 
> `cgicc::HTMLElement::HTMLElement(cgicc::HTMLAttributeList const*, 
> cgicc::HTMLElement const*, std::basic_string<char, 
> std::char_traits<char>, std::allocator<char> > const*, 
> cgicc::HTMLElement::EElementType)'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_7htmlTagEED1Ev+0x16): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::htmlTag>::~HTMLBooleanElement()':
> : undefined reference to `cgicc::HTMLElement::~HTMLElement()'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_8titleTagEEC1ERKSs+0x16): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::titleTag>::HTMLBooleanElement(std::basic_string<char, 
> std::char_traits<char>, std::allocator<char> > const&)':
> : undefined reference to 
> `cgicc::HTMLElement::HTMLElement(cgicc::HTMLAttributeList const*, 
> cgicc::HTMLElement const*, std::basic_string<char, 
> std::char_traits<char>, std::allocator<char> > const*, 
> cgicc::HTMLElement::EElementType)'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_8titleTagEED1Ev+0x16): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::titleTag>::~HTMLBooleanElement()':
> : undefined reference to `cgicc::HTMLElement::~HTMLElement()'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_7headTagEEC1ERKNS_11HTMLElementE+0x16): 
> In function `cgicc::HTMLBooleanElement<cgicc::headTag>:
> :HTMLBooleanElement(cgicc::HTMLElement const&)':
> : undefined reference to 
> `cgicc::HTMLElement::HTMLElement(cgicc::HTMLAttributeList const*, 
> cgicc::HTMLElement const*, std::basic_string<char, 
> std::char_traits<char>, std::allocator<char> > const*, 
> cgicc::HTMLElement::EElementType)'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_7headTagEED1Ev+0x16): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::headTag>::~HTMLBooleanElement()':
> : undefined reference to `cgicc::HTMLElement::~HTMLElement()'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_7bodyTagEEC1Ev+0x15): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::bodyTag>::HTMLBooleanElement()':
> : undefined reference to 
> `cgicc::HTMLElement::HTMLElement(cgicc::HTMLAttributeList const*, 
> cgicc::HTMLElement const*, std::basic_string<char, 
> std::char_traits<char>, std::allocator<char> > const*, 
> cgicc::HTMLElement::EElementType)'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_7bodyTagEED1Ev+0x16): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::bodyTag>::~HTMLBooleanElement()':
> : undefined reference to `cgicc::HTMLElement::~HTMLElement()'
> /tmp/ccv17W3J.o(.gnu.linkonce.r._ZTVN5cgicc18HTMLBooleanElementINS_7bodyTagEEE+0x10): 
> undefined reference to 
> `cgicc::HTMLElement::render(std::basic_ostream<char, 
> std::char_traits<char> >&) const'
> /tmp/ccv17W3J.o(.gnu.linkonce.r._ZTVN5cgicc18HTMLBooleanElementINS_7headTagEEE+0x10): 
> undefined reference to 
> `cgicc::HTMLElement::render(std::basic_ostream<char, 
> std::char_traits<char> >&) const'
> /tmp/ccv17W3J.o(.gnu.linkonce.r._ZTVN5cgicc18HTMLBooleanElementINS_8titleTagEEE+0x10): 
> undefined reference to 
> `cgicc::HTMLElement::render(std::basic_ostream<char, 
> std::char_traits<char> >&) const'
> /tmp/ccv17W3J.o(.gnu.linkonce.r._ZTVN5cgicc18HTMLBooleanElementINS_7htmlTagEEE+0x10): 
> undefined reference to 
> `cgicc::HTMLElement::render(std::basic_ostream<char, 
> std::char_traits<char> >&) const'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_7htmlTagEED0Ev+0x16): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::htmlTag>::~HTMLBooleanElement()':
> : undefined reference to `cgicc::HTMLElement::~HTMLElement()'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_8titleTagEED0Ev+0x16): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::titleTag>::~HTMLBooleanElement()':
> : undefined reference to `cgicc::HTMLElement::~HTMLElement()'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_7headTagEED0Ev+0x16): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::headTag>::~HTMLBooleanElement()':
> : undefined reference to `cgicc::HTMLElement::~HTMLElement()'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_7bodyTagEED0Ev+0x16): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::bodyTag>::~HTMLBooleanElement()':
> : undefined reference to `cgicc::HTMLElement::~HTMLElement()'
> /tmp/ccv17W3J.o(.gnu.linkonce.r._ZTIN5cgicc18HTMLBooleanElementINS_7htmlTagEEE+0x8): 
> undefined reference to `typeinfo for cgicc::HTMLElement'
> /tmp/ccv17W3J.o(.gnu.linkonce.r._ZTIN5cgicc18HTMLBooleanElementINS_8titleTagEEE+0x8): 
> undefined reference to `typeinfo for cgicc::HTMLElement'
> /tmp/ccv17W3J.o(.gnu.linkonce.r._ZTIN5cgicc18HTMLBooleanElementINS_7headTagEEE+0x8): 
> undefined reference to `typeinfo for cgicc::HTMLElement'
> /tmp/ccv17W3J.o(.gnu.linkonce.r._ZTIN5cgicc18HTMLBooleanElementINS_7bodyTagEEE+0x8): 
> undefined reference to `typeinfo for cgicc::HTMLElement'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_7bodyTagEEC1ERKS2_+0x10): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::bodyTag>::HTMLBooleanElement(cgicc::HTMLBooleanElement<cgicc::bodyTag> 
> const&)':
> : undefined reference to 
> `cgicc::HTMLElement::HTMLElement(cgicc::HTMLElement const&)'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_7headTagEEC1ERKS2_+0x10): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::headTag>::HTMLBooleanElement(cgicc::HTMLBooleanElement<cgicc::headTag> 
> const&)':
> : undefined reference to 
> `cgicc::HTMLElement::HTMLElement(cgicc::HTMLElement const&)'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_8titleTagEEC1ERKS2_+0x10): 
> In function `cgicc::HTMLBooleanElement<cgicc::titleTag>::HTMLBoolean
> Element(cgicc::HTMLBooleanElement<cgicc::titleTag> const&)':
> : undefined reference to 
> `cgicc::HTMLElement::HTMLElement(cgicc::HTMLElement const&)'
> /tmp/ccv17W3J.o(.gnu.linkonce.t._ZN5cgicc18HTMLBooleanElementINS_7htmlTagEEC1ERKS2_+0x10): 
> In function 
> `cgicc::HTMLBooleanElement<cgicc::htmlTag>::HTMLBooleanElement(cgicc::HTMLBooleanElement<cgicc::htmlTag> 
> const&)':
> : undefined reference to 
> `cgicc::HTMLElement::HTMLElement(cgicc::HTMLElement const&)'
> collect2: ld returned 1 exit status
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> help-cgicc mailing list
> [email protected]
> http://lists.gnu.org/mailman/listinfo/help-cgicc

-- 
Matthew A. Nicholson
matt-land.com