#27766 closed defect (duplicate)
krusader: CMake Error at FindQt4.cmake:1256
Reported by: | elimli@… | Owned by: | jonas@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.9.2 |
Keywords: | Cc: | Kostya.Hvan@…, craftey, almatea_sub@…, alexander.misharin@… | |
Port: | krusader |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
During installation of krusader I got the next error message:
CMake Error at /opt/local/share/apps/cmake/modules/FindQt4.cmake:1256 (MESSAGE): Qt qmake not found!
Tried to patch the Portfile as suggested at #27622 - still no help
Attachments (1)
Change History (21)
comment:1 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)
Description: | modified (diff) |
---|---|
Owner: | changed from macports-tickets@… to jonas@… |
Port: | krusader added |
Summary: | CMake Error at FindQt4.cmake:1256 → krusader: CMake Error at FindQt4.cmake:1256 |
comment:2 Changed 14 years ago by jmroot (Joshua Root)
Please provide more information: OS and Xcode versions, version of the port, and the full log file.
comment:3 Changed 14 years ago by Kostya.Hvan@…
same error
log in attachment
xcode version Version 3.2.5 64-bit
Component versions Xcode IDE: 1760.0 Xcode Core: 1763.0 ToolSupport: 1758.0
macosx 10.6.5 build 10h574
MacPorts 1.9.2
comment:4 Changed 14 years ago by Kostya.Hvan@…
qmake version
khvans-MacBook-Pro:~ khvan$ which qmake /opt/local/bin/qmake khvans-MacBook-Pro:~ khvan$ qmake -v QMake version 2.01a Using Qt version 4.7.1 in /opt/local/lib
comment:6 follow-up: 7 Changed 14 years ago by 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 :(
comment:7 follow-up: 8 Changed 14 years ago by info@…
Replying to 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.
comment:8 Changed 14 years ago by Kostya.Hvan@…
Replying to info@…:
fsData() : Name(QString::null), Type(QString::null), MntPoint(QString::null), TotalBlks( 0 ), FreeBlks( 0 ), Mounted( false {}
Unfortunately, I am not a programmer so these changes might do more harm than good.
i dont know qt well enough, but i guess using "0" instead of QString::null is better idea, since nulls usually lead to crushes
comment:9 follow-ups: 11 13 Changed 14 years ago by craftey
I read through this thread, and was able to build krusader again, after a long time living with a broken port. It all began when kde and qt was upgraded to higher versions within the porttree.
To fix krusader 2.0.0 for now:
- I had to edit the Portfile
-PortGroup kde4 1.0 +PortGroup kde4 1.1
This fixes the "missing phonon" issue #27221.
Note: With current up-to-date ports I did not had to add a line "configure.args -DQT_QMAKE_EXECUTABLE=/opt/local/bin/qmake" which is mentioned above. My qmake seems to be correctly installed and so can be found without additional tricks.
In order to fix the compile errors I looked into an actual repo of krusader (2.3beta, I believe) at https://projects.kde.org/projects/extragear/utils/krusader/repository (the backend seems to have some problems currently, cannot display the file contents atm). The actual code inspires the following two changes in our v2.0.0:
krusader/MountMan/kmountmangui.h:116:
public: - fsData() : Name( 0 ), Type( 0 ), MntPoint( 0 ), TotalBlks( 0 ), + fsData() : Name(), Type(), MntPoint(), TotalBlks( 0 ), FreeBlks( 0 ), Mounted( false ) {}
krusader/Search/krsearchdialog.h:65
public: - KrSearchDialog(QString profile = 0, QWidget* parent = 0 ); + KrSearchDialog(QString profile = QString(), QWidget* parent = 0); void prepareGUI();
So who can now put this patch into the Portfile? Or should we better use a higher version of krusader in order to be compatible to the newer qt-stuff?
Cheers, petep!
comment:11 follow-up: 12 Changed 14 years ago by jonas@…
Replying to petep@…:
[...]
So who can now put this patch into the Portfile?
If it makes this port compile again, feel free to commit. I for my part don't have the time to compile and test the whole dependency tree right now.
Or should we better use a higher version of krusader in order to be compatible to the newer qt-stuff?
I would strongly sugest doing so. Since we only have one active developer atm there won't be any "stable" release in the near future. The betas do contain many improvements over the latest stable though.
Offtopic: If projects.kde.org isn't working, you can always try the alternative repo browser at http://quickgit.kde.org/
comment:12 Changed 14 years ago by baris_malcioglu@…
I was wondering when this issue will be fixed, or will it be fixed?
Replying to jonas@…:
Replying to petep@…:
[...]
So who can now put this patch into the Portfile?
If it makes this port compile again, feel free to commit. I for my part don't have the time to compile and test the whole dependency tree right now.
Or should we better use a higher version of krusader in order to be compatible to the newer qt-stuff?
I would strongly sugest doing so. Since we only have one active developer atm there won't be any "stable" release in the near future. The betas do contain many improvements over the latest stable though.
Offtopic: If projects.kde.org isn't working, you can always try the alternative repo browser at http://quickgit.kde.org/
comment:13 Changed 13 years ago by jorge.silva@…
Replying to petep@…:
I read through this thread, and was able to build krusader again, after a long time living with a broken port. It all began when kde and qt was upgraded to higher versions within the porttree.
To fix krusader 2.0.0 for now:
- I had to edit the Portfile
-PortGroup kde4 1.0 +PortGroup kde4 1.1This fixes the "missing phonon" issue #27221.
Note: With current up-to-date ports I did not had to add a line "configure.args -DQT_QMAKE_EXECUTABLE=/opt/local/bin/qmake" which is mentioned above. My qmake seems to be correctly installed and so can be found without additional tricks.
In order to fix the compile errors I looked into an actual repo of krusader (2.3beta, I believe) at https://projects.kde.org/projects/extragear/utils/krusader/repository (the backend seems to have some problems currently, cannot display the file contents atm). The actual code inspires the following two changes in our v2.0.0:
krusader/MountMan/kmountmangui.h:116:
public: - fsData() : Name( 0 ), Type( 0 ), MntPoint( 0 ), TotalBlks( 0 ), + fsData() : Name(), Type(), MntPoint(), TotalBlks( 0 ), FreeBlks( 0 ), Mounted( false ) {}krusader/Search/krsearchdialog.h:65
public: - KrSearchDialog(QString profile = 0, QWidget* parent = 0 ); + KrSearchDialog(QString profile = QString(), QWidget* parent = 0); void prepareGUI();So who can now put this patch into the Portfile? Or should we better use a higher version of krusader in order to be compatible to the newer qt-stuff?
Cheers, petep!
Works great, thanks! Has it been committed? Otherwise I can push it up it anybody gives me commit access
cheers! jsilva
comment:14 Changed 13 years ago by almatea_sub@…
I have same trouble! Krusader do not build.
quote from main.log:
:info:configure CMake Error at /opt/local/share/apps/cmake/modules/FindQt4.cmake:1269 (MESSAGE): :info:configure Qt qmake not found! :info:configure Call Stack (most recent call first): :info:configure /opt/local/share/apps/cmake/modules/FindKDE4Internal.cmake:420 (find_package) :info:configure /opt/local/share/cmake-2.8/Modules/FindKDE4.cmake:95 (FIND_PACKAGE) :info:configure CMakeLists.txt:3 (find_package) :info:configure :info:configure :info:configure -- Configuring incomplete, errors occurred!
why it can simple work?..
comment:19 Changed 13 years ago by jmroot (Joshua Root)
Resolution: | → duplicate |
---|---|
Status: | new → closed |
Has duplicate #27767.