* Link error - getting undefined symbols when using stl
@ 2003-01-02 21:33 Ryan Cuprak
2003-01-02 21:46 ` LLeweLLyn Reese
0 siblings, 1 reply; 2+ messages in thread
From: Ryan Cuprak @ 2003-01-02 21:33 UTC (permalink / raw)
To: gcc-help
Hello,
I am having trouble with linking together a simple project which uses stl
(string,list, and vector). I am using Apple's gcc (3.1). The undefined symbol
errors are below the makefile. Any suggestions?
BTW: My project does compile and run perfectly inside of ProjectBuilder so I
am guessing it has something to do with my linking/compiler directives. I have
been hunting through the gcc manual and doing goodle searches all day. I am
guessing that it has someting to do with templates but I am not terribly sure.
Thanks,
Ryan Cuprak
build : attribute.o element.o parser.o
gcc -c main.cpp -o obj/main.o
gcc -o test.out obj/Attribute.o obj/Element.o obj/Parser.o obj/main.o
attribute.o :
gcc -c xml/model/Attribute.cpp -o obj/Attribute.o
element.o : attribute.o
gcc -c xml/model/Element.cpp -o obj/Element.o
parser.o : attribute.o element.o
gcc -c xml/parsers/Parser.cpp -o obj/Parser.o
[wsp218666wss:~/Documents/Development/XMLProcessor] rcuprak% make
gcc -c xml/model/Attribute.cpp -o obj/Attribute.o
gcc -c xml/model/Element.cpp -o obj/Element.o
gcc -c xml/parsers/Parser.cpp -o obj/Parser.o
gcc -c main.cpp -o obj/main.o
gcc -o test.out obj/Attribute.o obj/Element.o obj/Parser.o obj/main.o
ld: Undefined symbols:
std::basic_string<char, std::char_traits<char>, std::allocator<char> >::size()
const
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_M_data() const
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_M_iend() const
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::max_size() const
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_M_ibegin() const
std::allocator<char>::allocator[in-charge]()
std::allocator<char>::~allocator [in-charge]()
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_Alloc_hider::_Alloc_hider[in-charge](char*, std::allocator<char> const&)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_S_empty_rep()
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_S_copy_chars(char*, __gnu_cxx::__normal_iterator<char*,
std::basic_string<char, std::char_traits<char>, std::allocator<char> > >,
__gnu_cxx::__normal_iterator<char*, std::basic_string<char,
std::char_traits<char>, std::allocator<char> > >)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_S_copy_chars(char*, char const*, char const*)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_Rep::_M_destroy(std::allocator<char> const&)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_Rep::_M_refcopy()
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_Rep::_M_refdata()
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_Rep::_S_terminal
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_Rep::_S_create(unsigned long, std::allocator<char> const&)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::append(char const*)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::append(std::basic_string<char, std::char_traits<char>, std::allocator<char>
> const&)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::reserve(unsigned long)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::_M_mutate(unsigned long, unsigned long, unsigned long)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::basic_string[in-charge](std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::basic_string[in-charge]()
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::~basic_string [in-charge]()
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::operator=(std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&)
std::__throw_logic_error(char const*)
std::__throw_length_error(char const*)
___cxa_begin_catch
___cxa_end_catch
___cxa_rethrow
___gxx_personality_v0
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::compare(std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&) const
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::operator=(char const*)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::operator+=(char const*)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::operator+=(std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&)
std::__default_alloc_template<(bool)1, (int)0>::deallocate(void*, unsigned
long)
std::__default_alloc_template<(bool)1, (int)0>::allocate(unsigned long)
std::ios_base::Init::Init[in-charge]()
std::ios_base::Init::~Init [in-charge]()
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::find(char const*, unsigned long) const
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::find(std::basic_string<char, std::char_traits<char>, std::allocator<char> >
const&, unsigned long) const
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::c_str() const
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::substr(unsigned long, unsigned long) const
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::compare(char const*) const
std::basic_ios<char, std::char_traits<char> >::eof() const
std::basic_ios<char, std::char_traits<char> >::good() const
std::basic_ostream<char, std::char_traits<char>
>::operator<<(std::basic_ostream<char, std::char_traits<char> >&
(*)(std::basic_ostream<char, std::char_traits<char> >&))
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::erase(unsigned long, unsigned long)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::replace(unsigned long, unsigned long, char const*)
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>::basic_string[in-charge](char const*, std::allocator<char> const&)
std::basic_ifstream<char, std::char_traits<char>
>::basic_ifstream[in-charge](char const*, std::_Ios_Openmode)
std::basic_ifstream<char, std::char_traits<char> >::~basic_ifstream
[in-charge]()
std::cout
std::basic_ostream<char, std::char_traits<char> >& std::endl<char,
std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)
std::basic_istream<char, std::char_traits<char> >& std::getline<char,
std::char_traits<char>, std::allocator<char> >(std::basic_istream<char,
std::char_traits<char> >&, std::basic_string<char, std::char_traits<char>,
std::allocator<char> >&)
std::basic_ostream<char, std::char_traits<char> >& std::operator<<
<std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&,
char const*)
std::basic_ostream<char, std::char_traits<char> >& std::operator<< <char,
std::char_traits<char>, std::allocator<char> >(std::basic_ostream<char,
std::char_traits<char> >&, std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&)
make: *** [build] Error 1
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Link error - getting undefined symbols when using stl
2003-01-02 21:33 Link error - getting undefined symbols when using stl Ryan Cuprak
@ 2003-01-02 21:46 ` LLeweLLyn Reese
0 siblings, 0 replies; 2+ messages in thread
From: LLeweLLyn Reese @ 2003-01-02 21:46 UTC (permalink / raw)
To: rcuprak; +Cc: gcc-help
"Ryan Cuprak"<cuprakr@earthlink.net> writes:
> Hello,
> I am having trouble with linking together a simple project which uses stl
> (string,list, and vector). I am using Apple's gcc (3.1). The undefined symbol
> errors are below the makefile. Any suggestions?
Link with g++, *not* with gcc. gcc does not link in the standard
c++ library (libstdc++) or the c++ runtime library. g++ will link
these in automagicly.
> BTW: My project does compile and run perfectly inside of ProjectBuilder so I
> am guessing it has something to do with my linking/compiler directives. I have
> been hunting through the gcc manual and doing goodle searches all day. I am
> guessing that it has someting to do with templates but I am not terribly sure.
>
> Thanks,
> Ryan Cuprak
>
>
> build : attribute.o element.o parser.o
> gcc -c main.cpp -o obj/main.o
> gcc -o test.out obj/Attribute.o obj/Element.o obj/Parser.o obj/main.o
> attribute.o :
> gcc -c xml/model/Attribute.cpp -o obj/Attribute.o
> element.o : attribute.o
> gcc -c xml/model/Element.cpp -o obj/Element.o
> parser.o : attribute.o element.o
> gcc -c xml/parsers/Parser.cpp -o obj/Parser.o
build : attribute.o element.o parser.o
g++ -c main.cpp -o obj/main.o
g++ -o test.out obj/Attribute.o obj/Element.o obj/Parser.o obj/main.o
attribute.o :
g++ -c xml/model/Attribute.cpp -o obj/Attribute.o
element.o : attribute.o
g++ -c xml/model/Element.cpp -o obj/Element.o
parser.o : attribute.o element.o
g++ -c xml/parsers/Parser.cpp -o obj/Parser.o
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2003-01-02 21:46 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-01-02 21:33 Link error - getting undefined symbols when using stl Ryan Cuprak
2003-01-02 21:46 ` LLeweLLyn Reese
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).