On Mon, Feb 18, 2008 at 11:18:54PM +0300, Sergey Vlasov wrote: > On Mon, Feb 18, 2008 at 11:00:52PM +0300, Dmitry V. Levin wrote: [...] > > Выбран неправильный фронтенд для линковки приложений на c++. > > Если хотя бы один объектный файл скомпилирован g++, то и линковать следует > > тоже с помощью g++ а не gcc. > > Там какой-то странный апстрим - похоже, такую линковку сделали > специально; файл c_lgcc.cpp содержит ужас следующего вида: > > /* Tue Sep 3 18:24:26 CEST 2002 > * empirical g++-3.2 helper routines for gcc version 3.2.1 20020830 (Debian prerelease) > */ > void* operator new XMALLOC_CODE() > void* operator new[] XMALLOC_CODE() > void operator delete XFREE_CODE() > void operator delete[] XFREE_CODE() > void* __cxa_pure_virtual=0; > > Впрочем, c_lgcc3.cpp ещё лучше: > > /* at Wed Dec 11 16:31:42 CET 2002 > * This helper is here for gcc-2.95: c_lgcc3.cpp should be compiled by > * gcc-2.95, remaining files are compiled by g++-3.2 > */ > void* __cxa_pure_virtual=0; > extern "C" void _ZdlPv (void*); > extern "C" void* _Znwj (unsigned); > extern "C" void _ZdaPv (void*); > extern "C" void* _Znaj (unsigned); > void _ZdlPv XFREE_CODE() > void* _Znwj XMALLOC_CODE() > void _ZdaPv XFREE_CODE() > void* _Znaj XMALLOC_CODE() Выкинуть это надо, лучше не задумываясь о причудливости сознания авторов. > И вот такие перлы в README: > > Q31. Why not use libjpeg/libtiff/libpng/zlib or any other library with > sam2p? > > A31. -- library and .h incompatibilities (the binary would be less portable > across Linux systems) > -- to avoid forced dependencies > -- checkergcc wouldn't work Какие убогие там люди, однако. -- ldv