From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Wed, 8 Oct 2003 19:03:56 +0400 From: Sergey Vlasov To: devel@altlinux.ru Subject: Re: [devel] not stripped; FHS reminder Message-ID: <20031008150356.GD29075@master.mivlgu.local> Mail-Followup-To: devel@altlinux.ru References: <20031008145538.GV1726@julia.office.altlinux.ru> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="q9KOos5vDmpwPx9o" Content-Disposition: inline In-Reply-To: <20031008145538.GV1726@julia.office.altlinux.ru> X-BeenThere: devel@altlinux.ru X-Mailman-Version: 2.1.2 Precedence: list Reply-To: ALT Devel discussion list List-Id: ALT Devel discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 08 Oct 2003 15:03:57 -0000 Archived-At: List-Archive: List-Post: --q9KOos5vDmpwPx9o Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit On Wed, Oct 08, 2003 at 06:55:38PM +0400, Alexey Tourbin wrote: > Господа, > > not stripped binaries также не является ошибкой, но их наличие в каком-либо > пакете должно иметь какую-нибудь причину. Налачие же binaries в /usr/share вне > зависимости от их дополнительным характеристик является злостным FHS violation. [skip] > 140 /usr/lib/valgrind/libpthread.so > 1224 /usr/lib/valgrind/valgrind.so > 8 /usr/lib/valgrind/valgrinq.so > 68 /usr/lib/valgrind/vgskin_addrcheck.so > 104 /usr/lib/valgrind/vgskin_cachegrind.so > 16 /usr/lib/valgrind/vgskin_corecheck.so > 80 /usr/lib/valgrind/vgskin_helgrind.so > 48 /usr/lib/valgrind/vgskin_lackey.so > 148 /usr/lib/valgrind/vgskin_memcheck.so > 16 /usr/lib/valgrind/vgskin_none.so Так и должно быть - это же инструмент для отладки. Без отладочных символов использовать его очень неудобно - см. README_PACKAGERS: -- Don't strip the debug info off valgrind.so or libpthread.so. Valgrind will still work if you do, but it will generate less helpful error messages. Here's an example: Mismatched free() / delete / delete [] at 0x40043249: free (vg_clientfuncs.c:171) by 0x4102BB4E: QGArray::~QGArray(void) (tools/qgarray.cpp:149) by 0x4C261C41: PptDoc::~PptDoc(void) (include/qmemarray.h:60) by 0x4C261F0E: PptXml::~PptXml(void) (pptxml.cc:44) Address 0x4BB292A8 is 0 bytes inside a block of size 64 alloc'd at 0x4004318C: __builtin_vec_new (vg_clientfuncs.c:152) by 0x4C21BC15: KLaola::readSBStream(int) const (klaola.cc:314) by 0x4C21C155: KLaola::stream(KLaola::OLENode const *) (klaola.cc:416) by 0x4C21788F: OLEFilter::convert(QCString const &) (olefilter.cc:272) This tells you that some memory allocated with new[] was freed with free(). If valgrind.so was stripped the message would look like this: Mismatched free() / delete / delete [] at 0x40043249: (inside valgrind.so) by 0x4102BB4E: QGArray::~QGArray(void) (tools/qgarray.cpp:149) by 0x4C261C41: PptDoc::~PptDoc(void) (include/qmemarray.h:60) by 0x4C261F0E: PptXml::~PptXml(void) (pptxml.cc:44) Address 0x4BB292A8 is 0 bytes inside a block of size 64 alloc'd at 0x4004318C: (inside valgrind.so) by 0x4C21BC15: KLaola::readSBStream(int) const (klaola.cc:314) by 0x4C21C155: KLaola::stream(KLaola::OLENode const *) (klaola.cc:416) by 0x4C21788F: OLEFilter::convert(QCString const &) (olefilter.cc:272) This isn't so helpful. Although you can tell there is a mismatch, the names of the allocating and deallocating functions are no longer visible. The same kind of thing occurs in various other messages from valgrind. --q9KOos5vDmpwPx9o Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.3 (GNU/Linux) iD8DBQE/hCdcW82GfkQfsqIRAkX+AJ0T0qkYXn4tqmyJXUkN6RLedvMSBwCfbYQt IrTt1Ys5yyi3Ob5r6xDkxyk= =CiBn -----END PGP SIGNATURE----- --q9KOos5vDmpwPx9o--