Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1307322

Summary: aqemu: FTBFS in rawhide
Product: [Fedora] Fedora Reporter: Fedora Release Engineering <releng>
Component: aqemuAssignee: Stephen Gordon <sgordon>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 24CC: sgordon, yselkowi
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: aqemu-0.8.2-17.fc24 aqemu-0.8.2-18.fc24 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-03-26 17:57:18 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1305208    
Attachments:
Description Flags
build.log
none
root.log
none
state.log none

Description Fedora Release Engineering 2016-02-13 21:01:30 UTC
Your package aqemu failed to build from source in current rawhide.

http://koji.fedoraproject.org/koji/taskinfo?taskID=12806538

For details on mass rebuild see https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

Comment 1 Fedora Release Engineering 2016-02-13 21:01:32 UTC
Created attachment 1124036 [details]
build.log

Comment 2 Fedora Release Engineering 2016-02-13 21:01:33 UTC
Created attachment 1124037 [details]
root.log

Comment 3 Fedora Release Engineering 2016-02-13 21:01:34 UTC
Created attachment 1124038 [details]
state.log

Comment 4 Yaakov Selkowitz 2016-02-17 03:28:53 UTC
/builddir/build/BUILD/aqemu-0.8.2/Main_Window.cpp: In member function 'virtual void Main_Window::closeEvent(QCloseEvent*)':
/builddir/build/BUILD/aqemu-0.8.2/Main_Window.cpp:216:43: error: invalid initialization of reference of type 'const QString&' from expression of type 'bool'
        tr("Cannot Save Settings!"), false );
                                           ^

This looks like "Cannot convert 'bool' to 'T*'" in https://gcc.gnu.org/gcc-6/porting_to.html

Comment 5 Stephen Gordon 2016-02-17 15:59:59 UTC
(In reply to Yaakov Selkowitz from comment #4)
> /builddir/build/BUILD/aqemu-0.8.2/Main_Window.cpp: In member function
> 'virtual void Main_Window::closeEvent(QCloseEvent*)':
> /builddir/build/BUILD/aqemu-0.8.2/Main_Window.cpp:216:43: error: invalid
> initialization of reference of type 'const QString&' from expression of type
> 'bool'
>         tr("Cannot Save Settings!"), false );
>                                            ^
> 
> This looks like "Cannot convert 'bool' to 'T*'" in
> https://gcc.gnu.org/gcc-6/porting_to.html

Thanks, I am going to have to find some downtime to go through these - probably over the weekend. Unfortunately upstream for this project is long since dormant, but I will try and do it enough to get it into F24 and then potentially orphan/retire in F25.

Comment 6 Stephen Gordon 2016-02-24 12:18:58 UTC
These fix the initial error noted in comment # 4:

master: http://pkgs.fedoraproject.org/cgit/rpms/aqemu.git/commit/?id=d41a317c988d430900c69fe4ba37c289417cccaa
F24: http://pkgs.fedoraproject.org/cgit/rpms/aqemu.git/commit/?h=f24&id=d41a317c988d430900c69fe4ba37c289417cccaa

Unfortunately this brings us to:

/builddir/build/BUILD/aqemu-0.8.2/VM.cpp: In member function 'bool Virtual_Machine::Load_VM(const QString&)':
/builddir/build/BUILD/aqemu-0.8.2/VM.cpp:4566:108: error: no matching function for call to 'QDomElement::firstChildElement(bool)'
     SPICE.Use_Video_Stream_Compression( Second_Element.firstChildElement( ! "Use_Video_Stream_Compression" ).text() == "false" );
                                                                                                            ^
In file included from /usr/include/QtXml/QDomDocument:1:0,
                 from /builddir/build/BUILD/aqemu-0.8.2/VM.cpp:29:
/usr/include/QtXml/qdom.h:234:17: note: candidate: QDomElement QDomNode::firstChildElement(const QString&) const
     QDomElement firstChildElement(const QString &tagName = QString()) const;
                 ^~~~~~~~~~~~~~~~~
/usr/include/QtXml/qdom.h:234:17: note:   no known conversion for argument 1 from 'bool' to 'const QString&'
/builddir/build/BUILD/aqemu-0.8.2/VM.cpp:4598:100: error: no matching function for call to 'QDomElement::firstChildElement(bool)'
     SPICE.Use_Playback_Compression( Second_Element.firstChildElement( ! "Use_Playback_Compression" ).text() == "false" );
                                                                                                    ^
In file included from /usr/include/QtXml/QDomDocument:1:0,
                 from /builddir/build/BUILD/aqemu-0.8.2/VM.cpp:29:
/usr/include/QtXml/qdom.h:234:17: note: candidate: QDomElement QDomNode::firstChildElement(const QString&) const
     QDomElement firstChildElement(const QString &tagName = QString()) const;
                 ^~~~~~~~~~~~~~~~~
/usr/include/QtXml/qdom.h:234:17: note:   no known conversion for argument 1 from 'bool' to 'const QString&'
CMakeFiles/aqemu.dir/build.make:1212: recipe for target 'CMakeFiles/aqemu.dir/VM.o' failed
make[2]: *** [CMakeFiles/aqemu.dir/VM.o] Error 1

Comment 7 Jan Kurik 2016-02-24 14:33:51 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 24 development cycle.
Changing version to '24'.

More information and reason for this action is here:
https://fedoraproject.org/wiki/Fedora_Program_Management/HouseKeeping/Fedora24#Rawhide_Rebase

Comment 8 Yaakov Selkowitz 2016-02-24 15:32:05 UTC
OK, that's just weird negating a string like that, because the result is obviously false, which prior to C++11 would be converted to a null pointer with a warning:

/builddir/build/BUILD/aqemu-0.8.2/VM.cpp:4566:108: warning: converting 'false' to pointer type for argument 1 of 'QString::QString(const char*)' [-Wconversion-null]

The Qt4 documentation states wrt firstChildElement():

> Returns the first child element with tag name tagName if tagName is non-empty;
> otherwise returns the first child element.

Either the negated string was meant as a form of comment:

     SPICE.Use_Video_Stream_Compression( Second_Element.firstChildElement( /* "Use_Video_Stream_Compression" */ ).text() == "false" );
     SPICE.Use_Playback_Compression( Second_Element.firstChildElement( /* "Use_Playback_Compression" */ ).text() == "false" );

Or the negations don't actually belong there.  I'm not familiar enough with the code to tell which, but it was previously being compiled as the former.

Comment 9 Stephen Gordon 2016-03-20 02:54:44 UTC
Alright, finally found some spare time to dig into this and in my travels came across this:

https://sourceforge.net/p/aqemu/patches/9/

Which I in turn found from:

https://retracile.net/blog/2014/12/29/19.00

This matches the conclusion I had come to after staring at it for a while which is that the ! doesn't belong there at all. Working on applying the fix now.

Comment 10 Stephen Gordon 2016-03-20 03:55:44 UTC
aqemu-0.8.2-17.fc24 fixes the FTBFS issues - running it however indicates Bug # 1268553 also needs resolution to get something useful.

Comment 11 Fedora Update System 2016-03-20 04:22:47 UTC
aqemu-0.8.2-17.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-1a2a5a72f7

Comment 12 Fedora Update System 2016-03-20 15:39:14 UTC
aqemu-0.8.2-17.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-1a2a5a72f7

Comment 13 Fedora Update System 2016-03-20 16:54:33 UTC
aqemu-0.8.2-18.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-1a2a5a72f7

Comment 14 Fedora Update System 2016-03-21 22:32:11 UTC
aqemu-0.8.2-18.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-1a2a5a72f7

Comment 15 Fedora Update System 2016-03-26 17:57:14 UTC
aqemu-0.8.2-18.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.