[Cin] [spam?] Re: Upd2: I tried to run CinGG under valgrind, on application restart...

Georgy Salnikov sge at nmr.nioch.nsc.ru
Thu Nov 26 05:19:16 CET 2020


On Wed, 25 Nov 2020, Phyllis Smith via Cin wrote:

> Andrew, not sure but I think running Valgrind with lv2 plugins is just

My note has no direct relation to the topic, but nevertheless.

I realized that Cinelerra Makefiles do not have sufficient set of
dependencies of the .o files from all the relevant .h files.

For example, every plugin includes a number of headers from the directory
cinelerra but their Makefiles define no dependencies on these headers. If I
modify, let's say, cinelerra/pluginpopup.h to add one more button, then
execute `make' in Cinelerra's topdir, then pluginpopup.C will be rebuilt,
but all the plugins only relinked, not recompiled.

Then it can easily happen that the complete program works, but when run
under valgrind, it reports systematically some things like doubly freed
memories, illegal initializations, etc. And when working longer, Cinelerra
itself can experience sporadic crashes.

Then after fresh complete rebuild (preceded by removing all the object
files), memory problems disappear, and valgrind becomes quite happy.

To be safe - please always perform complete rebuild of the whole Cinelerra
project, with explicit cleaning all object files, after modifying any single
header. And do a complete rebuild, including complete cleaning in all the
thirdparty directories, after modifying something inside thirdparties.
Cinelerra's Makefiles themselves do not ensure adequate recompilation
through dependencies.
_______________________________________________________________________________

Georgy Salnikov
NMR Group
Novosibirsk Institute of Organic Chemistry
Lavrentjeva, 9, 630090 Novosibirsk, Russia
Phone   +7-383-3307864
Email   sge at nmr.nioch.nsc.ru
_______________________________________________________________________________



More information about the Cin mailing list