That explains why it did't look right in Launchpad! What happens is that when you build in an x86_64 environment, some files are put in lib and lib/mysql/plugin, instead of lib64 and lib64/mysql/plugin. The %files section then fails, because it's looking for the lib64 location, using the %{_libdir} variable. You end up with this output: Checking for unpackaged file(s): /usr/lib/rpm/check-files /var/tmp/iworx-db-55-5.5.30-build RPM build errors: File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/daemon_example.ini File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/adt_null.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/libdaemon_example.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/mypluglib.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/semisync_master.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/semisync_slave.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/auth.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/auth_socket.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/auth_test_plugin.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/qa_auth_client.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/qa_auth_interface.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/qa_auth_server.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/auth_pam.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/auth_pam_compat.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/dialog.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/adt_null.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/libdaemon_example.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/mypluglib.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/semisync_master.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/semisync_slave.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/auth.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/auth_socket.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/auth_test_plugin.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/qa_auth_client.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/qa_auth_interface.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/qa_auth_server.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/auth_pam.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/auth_pam_compat.so File not found: /var/tmp/iworx-db-55-5.5.30-build/home/interworx/mysql/usr/lib64/mysql/plugin/debug/dialog.so Child returncode was: 1 My patch fixes this behavior, though it's entirely possible I've introduced a regression, since I don't know the intent of the code you cited.