[RQt-devel] disabling native symbol registration

Michael Lawrence lawrence.michael at gene.com
Mon Mar 21 01:09:11 CET 2011


Hi guys,

On Windows, we want to embed the Qt DLLs in the package. Looks like it makes
the package about 60 MB in size, which is probably OK. The main issue is
that we need to load the library in .onLoad(), after we set the PATH, which
means we cannot use the NAMESPACE useDynLib(qtbase, .registration=TRUE).
Thus, we lose automatic assignment of the registered native symbols in the
namespace. This means using .Call("foo", PACKAGE="qtbase") instead of
.Call(foo). The latter is obviously a lot cleaner, but it's a small price to
pay to get things smoothly working on Windows. One alternative would be
statically linking with Qt. That would require us to maintain our own Qt
static libs (converted from the DLLs). That in my opinion is worse than the
more complex .Call syntax.

Suggestions?

Michael
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.r-forge.r-project.org/pipermail/qtinterfaces-devel/attachments/20110320/4a0c75ab/attachment.htm>


More information about the Qtinterfaces-devel mailing list