[Kalzium] crash because kalzium still links to libavogadro.so !!
Marcus D. Hanwell
marcus at cryos.org
Mon May 21 12:06:39 CEST 2007
On Monday 21 May 2007 06:00:54 Benoît Jacob wrote:
> Actually, the cause of the problem was much simpler than I had imagined,
> and that also might explain why I triggered it while Marcus didn't:
>
> These lines were still present in toolgroup.cpp:
>
> if(getenv("AVOGADRO_TOOLS") != NULL)
> {
> pluginPaths = QString(getenv("AVOGADRO_TOOLS")).split(':');
> }
>
> Removing them obviously fixes the problem :) in other words: don't honor
> the AVOGADRO_TOOLS variable.
>
> But since I've already renamed the engines and tools with -kalzium suffix,
> I'll take this occasion to add an extra security mechanism: check before
> loading a plugin that it filename contains "kalzium".
>
I stopped using any of the environment variables and so I missed that. I
thought the environment variable stuff had all been removed from the kalzium
snapshot of libavogadro though. I knew I had installed everything in
lib/avogadro-kalzium/ and then made sure the tools loaded from there which is
why I couldn't see how you were getting that.
We do need to look at both avogadro and kalzium at some point though - they
shouldn't hard code in lib. Strictly 64 bit systems can just have lib64 for
the 64 bit libs and lib is a separate directory for 32 bit libs and
architecture neutral libs/files. So we should look in the installed lib dir
for engines/tools etc.
More information about the Kalzium
mailing list