With 2.7.0 (master) the location of the vfs plugin changes.
2.6.3 and below have the plugin in
With 2.7.0 (master) the plugin is installed at
The plugin is not loaded. Snippet from the build log:
[ 127s] install -d obj-x86_64-linux-gnu
[ 127s] cd obj-x86_64-linux-gnu && cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_SYSCONFDIR=/etc -DCMAKE_INSTALL_LOCALSTATEDIR=/var -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON -DMIRALL_VERSION_BUILD=2253 -DQT_QMAKE_EXECUTABLE=/opt/ownCloud/qt-5.12.7/bin/qmake -DCMAKE_INSTALL_PREFIX=/opt/ownCloud/ownCloud -DCMAKE_INSTALL_DOCDIR=/usr/share/doc -DCMAKE_INSTALL_DATAROOTDIR:PATH=/usr/share -DDATA_INSTALL_DIR:PATH=/usr/share -DSYSCONF_INSTALL_DIR=/etc -DWITH_DOC=FALSE -DCMAKE_SKIP_BUILD_RPATH=OFF -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON -DCMAKE_INSTALL_RPATH=/opt/ownCloud/ownCloud/lib/x86_64-linux-gnu\;/opt/ownCloud/qt-5.12.7/lib/x86_64-linux-gnu -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=ON -DOEM_THEME_DIR=/usr/src/packages/BUILD/ownCloud/syncclient -DCMAKE_FIND_ROOT_PATH=/opt/ownCloud/qt-5.12.7 -DQTKEYCHAIN_INCLUDE_DIR=/opt/ownCloud/qt-5.12.7/include/qt5keychain -DQTKEYCHAIN_LIBRARY=/opt/ownCloud/qt-5.12.7/lib/x86_64-linux-gnu/libqt5keychain.so -DBUILD_SHELL_INTEGRATION=OFF
Workaround: move it manually to /opt/ownCloud/qt-5.12.7/lib/x86_64-linux-gnu/qt5/plugins/owncloudsync_vfs_suffix.so
Then it is loaded.
@dschmidt @TheOneRing any ideas?
With DEB we don't have -DKDE_INSTALL_PLUGINDIR=1 here. The RPM builds have that.
Yep, that seems to make the difference. Now the plugin appears in
/opt/ownCloud/qt-5.12.7/lib/x86_64-linux-gnu/qt5/plugins/owncloudsync_vfs_suffix.so
@dschmidt should we default KDE_INSTALL_PLUGINDIR to ON?
@jnweiger did you mean KDE_INSTALL_USE_QT_SYS_PATHS
OOps. sorry. yes, I've added -DKDE_INSTALL_USE_QT_SYS_PATHS=1 to fix that.
I'll have to edit above again. sigh.
For our linux builds KDE_INSTALL_USE_QT_SYS_PATHS feels wrong as they break the folder layout(plugins outside of the branded folder)
I will find a solution...
Without KDE_INSTALL_USE_QT_SYS_PATHS the build is inconsistent. At compiletime it installs the plugin in one place. At runtime it expects the plugin in another place.
With KDE_INSTALL_USE_QT_SYS_PATHS=1 it is consistent.
The plugin is installed inside our qt-tree, rather than in our client-tree. As both live under /opt/ownCloud, I have no strong opinion which tree is more correct.
I think Qt tree is a bad idea, as we have the qt version hardcoded in that :-/
Should be fixed before a 2.7.0 release. RPM and DEB Packages should both be built with the same KDE_INSTALL_USE_QT_SYS_PATHS setting.
I can patch the build scripts to e.g. make the plugin appear in two locations, if that is needed for a transitional period.
Ah right I need to fix that before we release....