On 03/04/2010 02:58 PM, alanklm wrote: > > Hello, > > I have next problem with linker: > > /usr/bin/ld: arithmetics_simple: hidden symbol `void > std::__ostream_fill<char, std::char_traits<char> >(std::basic_ostream<char, > std::char_traits<char> >&, long)' isn't defined > > It's appears when I add one additional flag - -m32 to compilation. > > Can somebody, please, tell me what this error (hidden symbol) means? And may > be - why it usually happens and how to fix it. > > One reason, which I found in google, are usage gcc for compilation and g++ > for link, but this not seems like my case. The linker is telling you that the symbol for std::__ostream_fill has its visibility set to hidden, i.e. it's not exported from a shard library. The most likely cause of this is an installation problem with the 32-bit libraries of your gcc. Andrew.