running different version from its build directory?

Kevin Funk kfunk at kde.org
Mon Sep 30 12:25:10 BST 2019


On Sunday, 29 September 2019 10:56:09 CEST René J.V. Bertin wrote:
> On Saturday September 28 2019 19:30:05 Kevin Funk wrote:
> 
> Hi,
> 
> >> Nothing wrong, probably, I just didn't think of that. I build with full
> >> rpath info on Linux (it's the default on Mac) so I shouldn't have to set
> >> LD_LIBRARY_PATH. I'd have to figure out how to let Qt look for plugins in
> >> an additional directory though.
> >
> >Hint: QT_PLUGIN_PATH
> 
> This turns out to be a lot trickier than I hoped... I *think* I'm getting
> the test build to load its own plugins but then I get the weird transition
> below from a test library to an installed one. Evidently that leads to a
> crash later on because of an unititialised member variable:

Heya,

Ideally you should /not/ have KDevelop libraries or plugins installed into a 
prefix which is automatically picked up by the runtime linker [1]; so, for 
instance, "/usr/lib".

Best is to install KDevelop solely into distinct prefixes, think of $HOME/opt/
kdevelop-53, $HOME/opt/kdevelop-54, etc.. This probably circumvents the 
problem(s) you're seeing.

[1] http://man7.org/linux/man-pages/man8/ld.so.8.html

Regards,
Kevin

> * thread #10, name = 'Queue(0x10c09d0', stop reason = signal SIGSEGV:
> invalid address (fault address: 0x10) frame #0: 0x00007fffa81aa377
> libKDevPlatformLanguage.so.53`KDevelop::TypeFactory<KDevelop::FunctionType,
> KDevelop::FunctionTypeData>::dynamicSize(KDevelop::AbstractTypeData const&)
> const [inlined] QArrayData::data(this=0x0000000000000000) at
> qarraydata.h:61:47 frame #1: 0x00007fffa81aa377
> libKDevPlatformLanguage.so.53`KDevelop::TypeFactory<KDevelop::FunctionType,
> KDevelop::FunctionTypeData>::dynamicSize(KDevelop::AbstractTypeData const&)
> const [inlined] QTypedArrayData<KDevVarLengthArray<KDevelop::IndexedType,
> 10>*>::data(this=0x0000000000000000) at qarraydata.h:206 ..SNIP..
>     frame #9: 0x00007fffa81aa357
> libKDevPlatformLanguage.so.53`KDevelop::TypeFactory<KDevelop::FunctionType,
> KDevelop::FunctionTypeData>::dynamicSize(this=<unavailable>,
> data=0x00007fff78d90ec0) const at typeregister.h:117 frame #10:
> 0x00007ffff69865e3
> libKDevPlatformLanguage.so.54`KDevelop::TypeSystem::dynamicSize(this=0x0000
> 7ffff7a56d50, data=0x00007fff78d90ec0) const at typeregister.cpp:47:49 frame
> #11: 0x00007ffff69872c5
> libKDevPlatformLanguage.so.54`KDevelop::ItemRepository<KDevelop::AbstractTy
> peData, KDevelop::AbstractTypeDataRequest, true, true, 0u,
> 1048576u>::index(KDevelop::AbstractTypeDataRequest const&) [inlined]
> KDevelop::AbstractTypeDataRequest::itemSize(this=0x00007fff9cfa9b08) const
> at typerepository.cpp:52:35 * frame #12: 0x00007ffff69872b0
> libKDevPlatformLanguage.so.54`KDevelop::ItemRepository<KDevelop::AbstractTy
> peData, KDevelop::AbstractTypeDataRequest, true, true, 0u,
> 1048576u>::index(this=0x00007fffc9d8f010, request=0x00007fff9cfa9b08) at
> itemrepository.h:1194 frame #13: 0x00007ffff6986ee7
> libKDevPlatformLanguage.so.54`KDevelop::TypeRepository::indexForType(input=
> 0x00007fff9cfa9b70) at typerepository.cpp:122:32 frame #14:
> 0x00007ffff69908d4
> libKDevPlatformLanguage.so.54`KDevelop::IndexedType::IndexedType(this=0x000
> 07fff9cfa9b98, type=<unavailable>) at indexedtype.cpp:26:15 frame #15:
> 0x00007ffff698d048
> libKDevPlatformLanguage.so.54`KDevelop::AbstractType::indexed(this=<unavail
> able>) const at abstracttype.cpp:99:12 frame #16: 0x00007ffff692eecf
> libKDevPlatformLanguage.so.54`KDevelop::Declaration::setAbstractType(this=0
> x00007fff78d91d10, type=Ptr @ 0x00007fff9cfa9bc8) at declaration.cpp:254:30
> frame #17: 0x00007ffff694ee22
> libKDevPlatformLanguage.so.54`KDevelop::FunctionDeclaration::setAbstractTyp
> e(this=0x00007fff78d91d10, type=<unavailable>) at
> functiondeclaration.cpp:74:18 frame #18: 0x00007fffa51f19b9
> libKDevClangPrivate.so.32`CXChildVisitResult (anonymous
> namespace)::Visitor::dispatchCursor<(CXCursorKind)30, (Decision)2,
> (detail::enabler)0>(CXCursor, CXCursor) [inlined] void (anonymous
> namespace)::Visitor::setDeclType<(CXCursorKind)30>(KDevelop::Declaration*,
> KDevelop::AbstractType*) at builder.cpp:862:15


-- 
Kevin Funk | kfunk at kde.org | http://kfunk.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20190930/e500f8f6/attachment.sig>


More information about the KDevelop-devel mailing list