[MacPorts] #27766: krusader: CMake Error at FindQt4.cmake:1256

MacPorts noreply at macports.org
Fri Feb 18 05:46:18 PST 2011


#27766: krusader: CMake Error at FindQt4.cmake:1256
------------------------------+---------------------------------------------
 Reporter:  elimli@…          |       Owner:  jonas@…           
     Type:  defect            |      Status:  new               
 Priority:  Normal            |   Milestone:                    
Component:  ports             |     Version:  1.9.2             
 Keywords:                    |        Port:  krusader          
------------------------------+---------------------------------------------

Comment(by info@…):

 Replying to [comment:6 zoleeca@…]:
 > Inserting the bold line into the Portfile made configure to run
 successfully
 > krusader Portfile:
 > {{{
 > ...
 > patch.dir                    ${workpath}/${distname}
 >
 > //Insert this line to define where qmake is:
 > configure.args          -DQT_QMAKE_EXECUTABLE=/opt/local/bin/qmake
 >
 > configure.args-append   ../${distname}
 > }}}
 > Unfortunately, after that fix, I still got "error: call of overloaded
 'QString(int)' is ambiguous" when building :(

 Is there some problem with the fsData::fsData() constructor used in
 kmountmangui.h?

 After trying the above fix, the compiler generated an error with:
 opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_kde_krusader/work/krusader-2.0.0/krusader/MountMan/kmountmangui.h:116:
 error: call of overloaded 'QString(int)' is ambiguous.

 A google search revealed other projects had similar errors when attempting
 to initialize QString with an int -
 http://bugs.scribus.net/view.php?id=8983 "Build of Scribus 1.3.6 on Fedora
 Rawhide with Qt 4.7 Technology Preview failed because there are 2 places
 where QStrings are initialized with 0 instead of QString::null and the
 compiler throws an error"and https://bugs.launchpad.net/ubuntu/+source
 /konq-plugins/+bug/600597 "Compile fixes for Qt 4.7. (Can't initialize
 QString with an int anymore)".

 In kmountmangui.h replacing

 class fsData {
 public:
    fsData() : Name( 0 ), Type( 0 ), MntPoint( 0 ), TotalBlks( 0 ),
    FreeBlks( 0 ), Mounted( false ) {}

 with

 class fsData {
 public:
    fsData() : Name(QString::null), Type(QString::null),
 MntPoint(QString::null), TotalBlks( 0 ),
    FreeBlks( 0 ), Mounted( false ) {}

 allowed a compile.

 Next compile generated an eror with:
 opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_kde_krusader/work/krusader-2.0.0/krusader/krslots.cpp:453:
 error: call of overloaded 'QString(int)' is ambiguous

 In krslots.cpp replacing

 KrSearchDialog::SearchDialog = new KrSearchDialog();

 with

 KrSearchDialog::SearchDialog = new KrSearchDialog(QString::null);

 allowed krusader to compile

 Unfortunately, I am not a programmer so these changes might do more harm
 than good.

-- 
Ticket URL: <https://trac.macports.org/ticket/27766#comment:7>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list