View Full Version : Edyuk : fully-featured, highly flexible and free cross-platform IDE
fullmetalcoder
29th December 2006, 15:54
Hi,
I'm proud to announce you the release of Edyuk 0.7.0. The sources are available on the SVN trunk and as packages. Note that this release is not fully stable yet but brings lots of nice features :
Class browsing (much faster than existing solutions and without external dependency)
Debugging
Compilation
A very good project manager, which for example, handles subdirs, file inclusion, complex scope constructs and is not confused when it encounters functions or operators others than = an += in project files
A powerful text editing framework with syntax highlighting, auto indenting, parenthesis matching, text folding, and all this through generic XML definitions
Designer integration
Assistant integration
Widget dedicated to .qrc files editing
A plugin-based architecture which allow a nearly infinite extension of Edyuk features
A perspective sytem and a modular GUI which allows high flexibility
and more...
The "MOST WANTED" feature, i.e. code completion is not available yet but will be soon.
More than 570 persons have downloaded Edyuk 0.6.0-b, I admit this looks a bit small compared to downloads count of QDevelop but yet it shows some interest and makes me happy. I hope you'll like this new version.
If you feel like testing it please feed me back fast so that I can fix any bug you might encounter before I release Edyuk 0.7.0 as a "stable" package.
Thanks to all the people that already tested Edyuk, to you that took some time to read this announcement and, in advance, to those who will test the new version and feed me back! :)
ksqt
31st December 2006, 15:57
Where can we get it?
grosem
1st January 2007, 10:03
Where can we get it?
At Sourceforge (http://sourceforge.net/project/showfiles.php?group_id=168260)
You can find the link at Edyuk's homepage (http://edyuk.berlios.de/index.php?option=com_frontpage&Itemid=1)
Or SVN: svn checkout https://svn.sourceforge.net/svnroot/edyuk
fullmetalcoder
1st January 2007, 12:07
You can find the link at Edyuk's homepage (http://edyuk.berlios.de/index.php?option=com_frontpage&Itemid=1)
Unfortunately Berlios, which hosts Edyuk homepage seems to be down, use Sourceforge link directly instead...
fullmetalcoder
6th January 2007, 14:33
Edyuk 0.7.0 STABLE packages are now available on Sourceforge.net (http://sourceforge.net/project/showfiles.php?group_id=168260)
They feature lots of bug fixes and some very nice new features, especially concerning debugging.
guestgulkan
7th January 2007, 11:52
Hello FMC,
I'm trying out Edyuk (thanks) but I've come across a problem.
I'm tring to add some includes and libraries to a project using the project options
dialog but this dialog crashes when using the Compilation tab.
http://www.ynk01.dial.pipex.com/edyuk.jpg
When attempting to add for example an include path - if you press CANCEL or OK on the
popup entry or File Dialog box then the program crashes fatally.
The little buttons are also missing their graphics/text
I built the program on Fedora Core 6 Linux using ./build and running the edyuk script.
Qt version is 4.2.1
Apart from that so far very good!
fullmetalcoder
7th January 2007, 12:54
I'm tring to add some includes and libraries to a project using the project options
dialog but this dialog crashes when using the Compilation tab.
http://www.ynk01.dial.pipex.com/edyuk.jpg
When attempting to add for example an include path - if you press CANCEL or OK on the
popup entry or File Dialog box then the program crashes fatally.
The little buttons are also missing their graphics/text
I'll try to fix that soon... Keep an eye on the SVN trunk.
I built the program on Fedora Core 6 Linux using ./build and running the edyuk script.
Qt version is 4.2.1
Apart from that so far very good!
I'm glad to see that you like Edyuk!
fullmetalcoder
22nd January 2007, 10:50
Hi all,
Less than 3 weeks after its release, Edyuk 0.7.0 has already reached more than 400 downloads. As I've been fed back, I was able to fix bugs and add many usability enhancements. Thus Edyuk 0.8.0 is coming soon. If you can't wait to test the code completion and all the new features, check out the SVN trunk : http://sourceforge.net/svn/?group_id=168260
Hoping you'll like it! :)
nimes
22nd January 2007, 15:29
hi, i downloaded svn version. but i didn't compile.
i received this error:
$ sh build
edyuk.pro:7: Unknown test function: warning
edyuk.pro:9: Unknown test function: warning
install.pri:78: Unknown test function: for
install.pri:135: Unknown test function: for
cd src/lib && make -f Makefile
make[1]:`/home/gilan/edyuk/trunk/src/lib' dizinine giriliyor
/usr/qt/3/bin/uic ui/aboutdialog.ui -o ../tmp/ui/aboutdialog.h
uic: File generated with too recent version of Qt Designer (4.0 vs. 3.3.7)
make[1]: *** [../tmp/ui/aboutdialog.h] Hata 1
make[1]: `/home/gilan/edyuk/trunk/src/lib' dizininden çıkılıyor
make: *** [sub-src-lib] Hata 2
i have 2 qt version. qt3 and qt 4.2.2
i tried also qmake-qt4. same error.
fullmetalcoder
22nd January 2007, 15:41
hi, i downloaded svn version. but i didn't compile.
i received this error:
$ sh build
edyuk.pro:7: Unknown test function: warning
edyuk.pro:9: Unknown test function: warning
install.pri:78: Unknown test function: for
install.pri:135: Unknown test function: for
cd src/lib && make -f Makefile
make[1]:`/home/gilan/edyuk/trunk/src/lib' dizinine giriliyor
/usr/qt/3/bin/uic ui/aboutdialog.ui -o ../tmp/ui/aboutdialog.h
uic: File generated with too recent version of Qt Designer (4.0 vs. 3.3.7)
make[1]: *** [../tmp/ui/aboutdialog.h] Hata 1
make[1]: `/home/gilan/edyuk/trunk/src/lib' dizininden çıkılıyor
make: *** [sub-src-lib] Hata 2
i have 2 qt version. qt3 and qt 4.2.2
i tried also qmake-qt4. same error.
The miscompilation is obviously related to your system's configuration... You have to change your environment variables so that qmake, uic, rcc and moc from Qt4 will be used instead of their Qt3 equivalents... Edyuk will compile with Qt4 only (needs Qt 4.1 or newer). Even if you use a symlink or script to Qt4's qmake it won't work properly if $QTDIR does not come first into your $PATH because moc/uic/.. used will be those of Qt 3. To achieve that you have to add the following lines to your ~/.bash_profile :
# note that this path is generic... replace it with the one used in your system...
QTDIR=/usr/local/Trolltech/Qt
PATH=$QTDIR/bin:$PATH
Hoping I'm clear enough... ;)
nimes
22nd January 2007, 16:09
sorry, i don't understand. my qt directory:
/usr/qt/3/ and /usr/qt/4/
how to configure .bash.profile ??
fullmetalcoder
22nd January 2007, 16:20
sorry, i don't understand. my qt directory:
/usr/qt/3/ and /usr/qt/4/
how to configure .bash.profile ??
If you want to compile Qt 4 applications there are several ways :
If you want to be able to compile both Qt 3 (so KDE) and Qt 4 based apps the best way is probably to use scripts to setup env vars in your shell session. In this case, each time you will need to use Qt 4 instead of Qt 3 you will be forced to run a shell script by hand.
If you're only interested in Qt 4 it is probably easier to embed these settings in ~/.bash_profile (if you're using bash as a shell, overwise you'll have to find what file is used by your shell to store such a configuration...) Note that such an embedding require your session to be restarted and even in some cases a rebootIn your case the script will look like this :
#! /bin/sh
# This header is useless when embedding in ~/.bash_profile
export QTDIR=/usr/qt/4
export PATH=$QTDIR/bin:$PATH
Once your environment is set up, compilation should work smoothly. :)
fullmetalcoder
4th February 2007, 19:43
Edyuk 0.8.0-rc1 is out.
It finally brings code completion in Edyuk and features many usability improvements and bug fixes. The completion engine uses an hybrid solution combining a custom lexer/parser which allows completion of classes provided by the openned projects (without any dependency) and a ctags backend which allows completion of Qt 4 classes. If ctags is not found the completion will work but without support of Qt 4 classes. You can get packages (https://sourceforge.net/project/showfiles.php?group_id=168260) from Sf.net or browse the SVN trunk (https://sourceforge.net/svn/?group_id=168260).
Also note that Edyuk's homepage (http://edyuk.sf.net) has moved to a new host (and changed its look at the same occasion : feedback would be very appreciated).
Hoping you'll like it. :)
fullmetalcoder
21st March 2007, 11:54
Spring cleanup has been done in the trunk and, after proper reorganization, I'm back on hard work. If you happen to take a look at the, relocated, trunk (http://edyuk.svn.sourceforge.net/svnroot/edyuk/trunk), the code completion will probably look pleasant :
It no longer needs ctags to complete Qt types
real huge speed improvements have been done (average time taken to display entries, with recursive typing and entries filtering, on my 6years old box : 40ms :cool:)
Many quirks have been fixed which provide a better accuracy
Typedefs are now handled properlyBesides, other bug fixes and improvements have been done in editing, project management and configuration dialogs.
A new rc should be issued soon (as soon as i'll have fixed all the missing features in the new project management module actually ;))
PS :
the new trunk URL for SVN checkout is : http://edyuk.svn.sourceforge.net/svnroot/edyuk/trunk
Edyuk's homepage (http://edyuk.sf.net) now provides RSS newfeeds (http://edyuk.tuxfamily.org/feed.php?option=com_content&view=frontpage&Itemid=1&format=rss)
Burgpflanze
22nd March 2007, 14:21
How can I change the editor font size?
Regards, Burgpflanze
fullmetalcoder
22nd March 2007, 18:02
How can I change the editor font size?
:oI'm afraid there is no UI for editor configuration yet (though I'm working on it) and this setting can't be changed in any other way than modifying the source file where the default font settings are decided : /path/to/edyuk/trunk/3rdparty/qcodeedit/lib/editor/qplaintextedit.cpp line 125 or 127, according to your platform...
Hope this helps. :)
fullmetalcoder
1st April 2007, 17:27
A beta package of Edyuk's next version has just been released. It is actually a snapshot of the soon-to-be-released 0.9.0 version.
What's new :
Code completion, it's not real new but SO fast that it cannot be compared with what it used to be (and it can neither be compared with existing code completions AFAIK :))
A number of slight internal modifications which result in easier plugins writing and more consistent UI. The most important example is the "manager" dock which takes care of a project model and a code model (class browser) in a generic way. As a consequence the project explorer and class browser are now reachable from the Designer perspective which used to be impossible
Many broken features have been implemented (create new file from project tree, add file to project, ..)
A new template manager has been added which makes it much easier to add templates (INI files are used as templates definitions)
A set of brand new dialogs, much more user-friendly, replaced old ones (configuration, project options, creation of new file, ...)
A the "manager" dock now has a much nicer look thanks to the use of a QComboBox instead of tabsAnd what remains the same (apart from bugfixes ;)):
perspective-based GUI
flawless qmake projects parsing/saving
powerful and flexible editing framework
Designer integration
Assistant integration
QRC editing facilities
class browsing
compilation (requires gcc / mingw)
graphical debugging (requires gdb)
dynamic shortcut management
run-time translation
...Looking forward to get some feedback so as to polish the final 0.9.0 release. :)
magland
1st April 2007, 21:00
I tried downloading 0.9.0beta, but when I ran the build.bat program on windows it seemed to go into an infinite recursion.
Edyuk crashes when I load my project in v0.8.0, so I was hoping this problem would be resolved in the latest update.
I'm interested in using Edyuk... but first step is of course to get it installed and working properly.
fullmetalcoder
2nd April 2007, 07:45
I tried downloading 0.9.0beta, but when I ran the build.bat program on windows it seemed to go into an infinite recursion.
Edyuk crashes when I load my project in v0.8.0, so I was hoping this problem would be resolved in the latest update.
I'm interested in using Edyuk... but first step is of course to get it installed and working properly.
The batch file was originally added to workaround a bug/missing feature in Window$ ME which prevented proper compilation of subdirs project. If you are not using this version of Windows you should try the "regular" commands :
$ qmake
$ mingw32-make
Anyway I checked the content of the build.bat file and I didn't see anything that might cause kinda infinite recursion... Maybe you could give me more details.:confused:
magland
2nd April 2007, 11:30
OK thanks. It's possible that it wasn't actually an infinite recursion, but just taking a long time, and I wan't seeing the compilation details.
Anyway now I get the following compilation error: (see end of message). Also, I had to add "#include <QDebug>" to a couple of the .cpp files... qgenericlanguagefactory.cpp, qshortcutmanager.cpp.
Any ideas? I'm using Windows XP SP2, GNU Make 3.80, Qt 4.2.1
....................
....................
qmakemodel\qmakeproject.cpp:507: warning: function 'void QMakeProject::options()
' is defined after prior declaration as dllimport: attribute ignored
qmakemodel\qmakeproject.cpp: At global scope:
qmakemodel\qmakeproject.cpp:513: warning: function 'virtual void QMakeProject::w
rite(QTextStream&, QString, QProjectNode*)' is defined after prior declaration a
s dllimport: attribute ignored
qmakemodel\qmakeproject.cpp: In member function `virtual void QMakeProject::setu
pMenu(QMenu*)':
qmakemodel\qmakeproject.cpp:553: warning: function 'virtual void QMakeProject::s
etupMenu(QMenu*)' is defined after prior declaration as dllimport: attribute ign
ored
qmakemodel\qmakeproject.cpp: In constructor `QMakeProjectPrivate::QMakeProjectPr
ivate()':
qmakemodel\qmakeproject.cpp:612: warning: function 'QMakeProjectPrivate::QMakePr
ojectPrivate()' is defined after prior declaration as dllimport: attribute ignor
ed
qmakemodel\qmakeproject.cpp: In constructor `QMakeProjectPrivate::QMakeProjectPr
ivate()':
qmakemodel\qmakeproject.cpp:615: internal compiler error: in rest_of_handle_fina
l, at toplev.c:2064
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://www.mingw.org/bugs.shtml> for instructions.
mingw32-make[2]: *** [..\tmp-default-4.2.1-\obj\debug\qmakeproject.o] Error 1
mingw32-make[2]: Leaving directory `C:/cstuff/edyuk-0.9.0-beta/src/default'
mingw32-make[1]: *** [debug] Error 2
mingw32-make[1]: Leaving directory `C:/cstuff/edyuk-0.9.0-beta/src/default'
mingw32-make: *** [sub-src_default-make_default] Error 2
fullmetalcoder
2nd April 2007, 12:48
Anyway now I get the following compilation error: (see end of message). Also, I had to add "#include <QDebug>" to a couple of the .cpp files... qgenericlanguagefactory.cpp, qshortcutmanager.cpp.
Any ideas? I'm using Windows XP SP2, GNU Make 3.80, Qt 4.2.1
....................
....................
qmakemodel\qmakeproject.cpp:507: warning: function 'void QMakeProject::options()
' is defined after prior declaration as dllimport: attribute ignored
qmakemodel\qmakeproject.cpp: At global scope:
qmakemodel\qmakeproject.cpp:513: warning: function 'virtual void QMakeProject::w
rite(QTextStream&, QString, QProjectNode*)' is defined after prior declaration a
s dllimport: attribute ignored
qmakemodel\qmakeproject.cpp: In member function `virtual void QMakeProject::setu
pMenu(QMenu*)':
qmakemodel\qmakeproject.cpp:553: warning: function 'virtual void QMakeProject::s
etupMenu(QMenu*)' is defined after prior declaration as dllimport: attribute ign
ored
qmakemodel\qmakeproject.cpp: In constructor `QMakeProjectPrivate::QMakeProjectPr
ivate()':
qmakemodel\qmakeproject.cpp:612: warning: function 'QMakeProjectPrivate::QMakePr
ojectPrivate()' is defined after prior declaration as dllimport: attribute ignor
ed
qmakemodel\qmakeproject.cpp: In constructor `QMakeProjectPrivate::QMakeProjectPr
ivate()':
qmakemodel\qmakeproject.cpp:615: internal compiler error: in rest_of_handle_fina
l, at toplev.c:2064
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://www.mingw.org/bugs.shtml> for instructions.
mingw32-make[2]: *** [..\tmp-default-4.2.1-\obj\debug\qmakeproject.o] Error 1
mingw32-make[2]: Leaving directory `C:/cstuff/edyuk-0.9.0-beta/src/default'
mingw32-make[1]: *** [debug] Error 2
mingw32-make[1]: Leaving directory `C:/cstuff/edyuk-0.9.0-beta/src/default'
mingw32-make: *** [sub-src_default-make_default] Error 2
:o Not enough testing on Windows (none actually because I don't have any available windows PC to perform them). Sorry... This is actually very easy to fix :
src/default/qmakemodel/qmake.h :
#if defined(_QMAKEMODEL_BUILD_)
should be :
#if defined(_QMAKE_MODEL_BUILD_)
This should solve your troubles building the plugins.
Thanks for reporting this. I'll commit appropriate changes on SVN soon and advance the release of the rc1 to prevent too many people from facing similar troubles.:)
magland
2nd April 2007, 14:32
This should solve your troubles building the plugins.
Yes, thanks.
Now I get the following error (see below). Probably some trivial things, so perhaps we should take this debugging off the forum for now? (Jeremy.Magland at gmail.com)
....................................
Creating library file: ..\..\plugins\libdefault_debug.a
./..\tmp-default-4.2.1-\obj\debug\core.o(.text+0x26cd): In function `ZN11Default
Core15parseCompileLogERK7QString':
C:/cstuff/edyuk-0.9.0-beta/src/default/core.cpp:373: undefined reference to `Edy
uk::makeAbsolute(QString const&, QString const&)'
./..\tmp-default-4.2.1-\obj\debug\core.o(.text$_ZN18CppCallbackHandler5ev entE7QS
tring11QStringList[CppCallbackHandler::event(QString, QStringList)]+0x13e2): In
function `ZN11DefaultCoreD0Ev':
C:/cstuff/edyuk-0.9.0-beta/src/default/core.cpp:223: undefined reference to `Edy
ukTemplateManager::create(QString const&, QString const&, QStringList*, QHash<QS
tring, QString> const*) const'
./..\tmp-default-4.2.1-\obj\debug\core.o(.text$_ZN18CppCallbackHandler5ev entE7QS
tring11QStringList[CppCallbackHandler::event(QString, QStringList)]+0x1425): In
function `ZNK11DefaultCore4iconEv':
C:/cstuff/edyuk-0.9.0-beta/src/default/core.cpp:226: undefined reference to `Edy
ukTemplateManager::create(QString const&, QString const&, QStringList*, QHash<QS
tring, QString> const*) const'
./..\tmp-default-4.2.1-\obj\debug\qrcedit.o(.text+0x616a): In function `ZN7QRCEd
it7addFileEv':
C:/cstuff/edyuk-0.9.0-beta/src/default/qrcedit.cpp:378: undefined reference to `
Edyuk::makeRelative(QString const&, QString const&)'
./..\tmp-default-4.2.1-\obj\debug\qrcedit.o(.text+0x76bb): In function `ZN7QRCEd
it11fileChangedEP15QTreeWidgetItemS1_':
C:/cstuff/edyuk-0.9.0-beta/src/default/qrcedit.cpp:459: undefined reference to `
-- More (7%) --
fullmetalcoder
2nd April 2007, 16:05
Now I get the following error (see below). Probably some trivial things, so perhaps we should take this debugging off the forum for now? (Jeremy.Magland at gmail.com)
Sure, I've send you a solution to this by e-mail and will issue another beta really soon (as soon as you report proper compilation actually ;))
For the others, here comes the solution : the EDYUK_EXPORT macro needs to be added so that several classes/functions get exported properly under windows :
src/lib/edyuktemplatemanager.h :
class EDYUK_EXPORT EdyukTemplateManager
src/lib/edyuk.h :
EDYUK_EXPORT QString settingsPath();
EDYUK_EXPORT QString makeAbsolute(const QString& rel, const QString& abs);
EDYUK_EXPORT QString makeRelative(const QString& src, const QString& ref);
magland
2nd April 2007, 21:35
We worked through the Windows-specific installation problems offline, and everything looks very nice indeed.
Windows users should wait for the corrected version to be released since there were a bunch of small adjustments.
... but I certainly like what I see... thanks for the help!
magland
fullmetalcoder
5th April 2007, 11:46
Here we go! Edyuk 0.9.0 had indeed many compilation problems under Window$ but, thanks to the perseverant feedback of Jeremy Magland, I've been able to fix them and also some potential crash issues.
A second beta is thus available which now feature real "platform independence" and several minor improvements! Enjoy! :)
https://sourceforge.net/project/showfiles.php?group_id=168260&package_id=196690&release_id=499004
hoborg
7th April 2007, 23:05
It's still impossible to compile on FreeBSD 6.1
Reason:
gdbthread.cpp : line with
#ifdef OS_LINUX
should be
#ifdef OS_UNIX (I suppose)
i
I deleted this line wih it's corresponding #endif and the compilation goes well until the end. Sadly, when running edyuk after the 'make install', I get a core dump just a while after the splash screen appears :/
QTmplayer
8th April 2007, 13:05
Hi
I compiled edyuk on windows but with the visual studio compiler and had some compilation problems, too.
After finding some work arounds (which I may post soon after some more tests) the compilation finishes well.
But when I try to start the program I face what I believe is the same problem hoborg has: Right after the splash screen appears the program terminates.
This only happens if the "default.*" library files are in the "\plugins" directory. Edyuk starts when there are no plugin files.
QtmPlayer
hoborg
8th April 2007, 14:26
Thanks for your suggestion, QTmplayer :)
I deleted the .so file from plugins subdirectory and now edyuk starts.
I still can't run it as a normal user - I had to do 'make install' as root and only root can start the environment (when I try as an user, nothing happens, even the splash screen doesn't appear).
------
edit:
Well, I was celebrating too early. The environment launches well but after I select 'Open' it goes down with a core dump (Illegal instruction).
QTmplayer
8th April 2007, 18:28
I must correct my old statement:
This crash occurs only when I build the \lib, \exec and \default one after another and then run the executable.
When I do all these steps together by simply using the .pro file in the main directory it works perfectly after the workarounds have been installed.
I listed all workarounds in the "msvc_fix.txt" file attached to the post.
Hope this helps.
QtmPlayer
PS: Now Edyuk runs I admit that it's really nice work ;) :D
fullmetalcoder
12th April 2007, 18:56
I must correct my old statement:
This crash occurs only when I build the \lib, \exec and \default one after another and then run the executable.
When I do all these steps together by simply using the .pro file in the main directory it works perfectly after the workarounds have been installed.
Sounds weird but my poor knowledge of MSVC won't help here... You might consider reporting the bug to Trolltech...
I listed all workarounds in the "msvc_fix.txt" file attached to the post.
Hope this helps.
This surely does! I'll fix the source as soon as possible. :)
PS: Now Edyuk runs I admit that it's really nice work ;) :D
I'm quite happy to see that my work satisfy you. Hope you'll have fun :D
The environment launches well but after I select 'Open' it goes down with a core dump (Illegal instruction). This is weird but I encountered this issue already under Pardus 2007. For an unknown reason the use of QCompleter (by QFileDialog, among others) seems to cause a crash... I admit I don't know how to fix this... Maybe you can confirm this guess by sending me a gdb backtrace. If it really is what I suggested, I shall report a bug to Trolltech, otherwise I'll try to fix this by hand.
tebessum
16th April 2007, 09:07
I geting this error :
C:\edyuk-0.8.0-rc1\src\exec>mingw32-make
mingw32-make -f Makefile.Release
mingw32-make[1]: Entering directory `C:/edyuk-0.8.0-rc1/src/exec'
windres -i edyuk.rc -o ..\tmp\obj\exec\release\edyuk_res.o --include-dir=.
cc1: unrecognized option `-E'
windres: no resources
mingw32-make[1]: *** [..\tmp\obj\exec\release\edyuk_res.o] Error 1
mingw32-make[1]: Leaving directory `C:/edyuk-0.8.0-rc1/src/exec'
mingw32-make: *** [release] Error 2
Please help ...
fullmetalcoder
16th April 2007, 10:51
I geting this error :
C:\edyuk-0.8.0-rc1\src\exec>mingw32-make
mingw32-make -f Makefile.Release
mingw32-make[1]: Entering directory `C:/edyuk-0.8.0-rc1/src/exec'
windres -i edyuk.rc -o ..\tmp\obj\exec\release\edyuk_res.o --include-dir=.
cc1: unrecognized option `-E'
windres: no resources
mingw32-make[1]: *** [..\tmp\obj\exec\release\edyuk_res.o] Error 1
mingw32-make[1]: Leaving directory `C:/edyuk-0.8.0-rc1/src/exec'
mingw32-make: *** [release] Error 2
Please help ...
Compilation failed for 0.8.0-rc1 under Windows but if I remember well the error reported was not the one you encounter... I suggest you get Edyuk 0.9.0-beta2 instead (which is know to compile under Windows) or possibly the SVN trunk if you want to try latest enhancements and check your version of MinGW...
Usability
22nd May 2007, 19:33
I tried compiling and running eduyk 0.9.0-beta2 on my Gentoo 64 box and find it just crashes on startup.
Here is the debug output
rebuilding recent files/projects menu...
cleaned previous data...
filled with new data...
Initializing shortcuts...
Initializing plugins...
system plugins path : /home/jeremy/src/edyuk-0.9.0-beta2/plugins/
file : /home/jeremy/src/edyuk-0.9.0-beta2/plugins/libdefault_debug.so
Plugin root created
PluginInterface created : 5615664
CorePlugin created
Segmentation fault
And the line causing the segmentation fault is line 58 of qdesignerperspective.cpp, which looks like this
pDesigner = QDesignerComponents::createFormEditor(this);
This one whistles off into the internals of QT and I cannot track it any further.
I am running QT 4.2.3 with 3.4.5.
Any ideas anyone?
fullmetalcoder
22nd May 2007, 19:57
This one whistles off into the internals of Qt and I cannot track it any further.
I am running Qt 4.2.3 with 3.4.5.
This one is mandatory for Designer integration to work... If Qt Designer runs fine under your box it shouldn't cause any trouble but as it relies on private headers we never know... Try replacing all the private headers in src/default/designer (those ending in *_p.h) by their equivalents available in your Qt sources, recompile and see if it works better....
Usability
22nd May 2007, 20:44
Did that, and it recompiled a few things but it still crashed on invocation.
I just tried the tool on another 64 bit Gentoo machine, and here it works. The main differences between the two are:
gcc version 4.1.1 on the working machine
gcc version 3.4.5 on the broken one.
QT Designer works fine on both. The GUI looks good, you are too hard on yourself.
My top 3 enhancement requests are:
Double clicking a method in the class browser should go to the code for the method, currently all the methods open the header file instead. The class name its self could do that.
A button to toggle between .h and .cpp file for the same class. I am always going back and forth between these two.
Some obvious way of adding a breakpoint. Am I missing something here?
Anyway, I think its an encouraging project. The world really needs an IDE for debugging QT4 programs.
QDevelop locks up on both my Gentoo machines, so you are already ahead there :)
fullmetalcoder
23rd May 2007, 12:57
Did that, and it recompiled a few things but it still crashed on invocation.
I just tried the tool on another 64 bit Gentoo machine, and here it works. The main differences between the two are:
gcc version 4.1.1 on the working machine
gcc version 3.4.5 on the broken one.
QT Designer works fine on both.
Sounds weird. I'm not very familiar with 64bit machines and tracking GCC errors is too hard for me so I guess there's no way I can fix that... If GCC 4.x works fine on some platforms where 3.x fails I'll have to mention it in the readme.
The GUI looks good, you are too hard on yourself.
I must be missing something here... :confused:
My top 3 enhancement requests are:
Double clicking a method in the class browser should go to the code for the method, currently all the methods open the header file instead. The class name its self could do that.
A button to toggle between .h and .cpp file for the same class. I am always going back and forth between these two.
Some obvious way of adding a breakpoint. Am I missing something here? Anyway, I think its an encouraging project. The world really needs an IDE for debugging QT4 programs.
QDevelop locks up on both my Gentoo machines, so you are already ahead there :)
I've thought about that but didn't find time to do it in a proper way yet. It should be added in a feature release but don't ask me when, I'm rather busy ATM.
I was thinking about a context menu for class names to open either header or source. If that's not what you mean could you precise your button idea?
I admit Edyuk lacks documentation and breakpoints are not that obvious... :oThere are currently two ways to set breakpoints :
graphically by right clicking on the leftmost part of the editor (on concerned line) and toggling the breakpoint entry
by hand through the "custom command" entry in Debug menu and typing the corresponding commandNote : the first method currently REQUIRES breakpoints to be set BEFORE starting debugging.
I'm thinking about improving this breakpoint issue (by adding a shortcut, among other things) but, once again, I lack time... Anyway, if I'm lucky and fast enough these three might find their way in the next upcoming release which will be issued before the contest ends.:)
fullmetalcoder
25th May 2007, 22:24
The long-awaited 0.9.0 version of Edyuk has finally been released.
It features many bug fixes and including miscompilation on certain platforms. The most noticeable changes/adds are:
brand new (Unix) build script with auto-detection of qmake, Qt version check (Qt 4.2 or higher now mandatory) and compile output formatting
Drag and drop in the workspace. Tabs are freely movable within the tab bar to let you reorder opened files on the fly. Dropping a file list (dragged from Konqui for instance) cause them to be opened
improved completion (yet again! it's getting near to perfection :)). It is now possible to trigger it at will through an action (default shortcut : Ctrl + Space)
changed the look of some dialogs and much improved configuration
The next version (1.0) is already being worked on and will bring many changes concerning the editing framework :
A brand new language definition format, much more flexible and, I hope, resulting in faster highlighting
A new way of handling breakpoints (which, because of internal deps to 1.0 series, could not be added to this release) that will allow an action to be added (and thus a shortcut) but also breakpoints to be set while debugging already started :)
Improvements of class browsing as asked by Usability
And many other niceties :D
cheers
fmc
fullmetalcoder
30th May 2007, 16:22
Edyuk 0.9.1 has just been released. It is mainly a bugfix release which, above all, fixes compilation under Windows.
https://sourceforge.net/project/showfiles.php?group_id=168260&package_id=191461&release_id=512221
fedcer
20th June 2007, 14:45
Hi, I'm trying to build Edyuk 0.9.1 but I'm getting the following errors:
Processing form ui/createnewdialog.ui
Compiling ../../3rdparty/qpool/qpool.cpp
../../3rdparty/qpool/qpool.cpp:105: error: cast from 'QPool*' to 'int' loses precision
../../3rdparty/qpool/qpool.cpp:106: error: cast from 'char*' to 'int' loses precision
../../3rdparty/qpool/qpool.cpp:106: error: cast from 'char*' to 'int' loses precision
../../3rdparty/qpool/qpool.cpp:106: warning: format '%x' expects type 'unsigned int', but argument 5 has type 'long unsigned int'
../../3rdparty/qpool/qpool.cpp:223: error: cast from 'size_t*' to 'int' loses precision
../../3rdparty/qpool/qpool.cpp:223: error: cast from 'size_t*' to 'int' loses precision
../../3rdparty/qpool/qpool.cpp:223: error: cast from 'size_t*' to 'int' loses precision
../../3rdparty/qpool/qpool.cpp:223: warning: format '%x' expects type 'unsigned int', but argument 4 has type 'long unsigned int'
../../3rdparty/qpool/qpool.cpp:223: warning: format '%i' expects type 'int', but argument 5 has type 'size_t'
../../3rdparty/qpool/qpool.cpp:248: error: cast from 'size_t*' to 'int' loses precision
../../3rdparty/qpool/qpool.cpp:248: error: cast from 'size_t*' to 'int' loses precision
../../3rdparty/qpool/qpool.cpp:248: error: cast from 'size_t*' to 'int' loses precision
../../3rdparty/qpool/qpool.cpp:249: warning: format '%x' expects type 'unsigned int', but argument 4 has type 'long unsigned int'
../../3rdparty/qpool/qpool.cpp:249: warning: format '%i' expects type 'int', but argument 5 has type 'size_t'
../../3rdparty/qpool/qpool.cpp:249: warning: format '%x' expects type 'unsigned int', but argument 7 has type 'size_t'
../../3rdparty/qpool/qpool.cpp:249: warning: format '%x' expects type 'unsigned int', but argument 8 has type 'long unsigned int'
and the list of erros continues with more errors of that same kind.
fullmetalcoder
20th June 2007, 15:05
Hi, I'm trying to build Edyuk 0.9.1 but I'm getting the following errors:
and the list of erros continues with more errors of that same kind.
It looks like your compiler is very strict with casts... Apparently I forgot comment out all the qDebug() statements I put in the QPool code and your compiler complain. All you have to do is opening src/3rdparty/qpool/qpool.cpp and comment out the concerned lines... Apologies for this...:o
srikpen
20th June 2007, 17:27
I am getting the following when compiling with the follow error in the following env:
windows 2000 sp4
Qt 4.3.0
C:\qtwork>mingw32-make -v
GNU Make 3.80
Copyright (C) 2002 Free Software Foundation, Inc.
C:\qtwork\edyuk-0.9.1>build
...
...
.\..\..\Qt\4.3.0\mkspecs\win32-g++" -o ..\tmp-default-4.3.0-win32\obj\release\qm
akevariable.o qmakemodel\qmakevariable.cpp
../../3rdparty/qprojectmodel/qprojectparser.h: In member function `void QProject
Parser::qt_check_for_QOBJECT_macro(const T&) const [with T = QMakeParser]':
../../../../Qt/4.3.0/include/QtCore/../../src/corelib/kernel/qobject.h:411: in
stantiated from `T qobject_cast(QObject*) [with T = QMakeParser*]'
qmakemodel\qmakevariable.cpp:654: instantiated from here
../../3rdparty/qprojectmodel/qprojectparser.h:38: error: void value not ignored
as it ought to be
mingw32-make[1]: *** [..\tmp-default-4.3.0-win32\obj\release\qmakevariable.o] Er
ror 1
mingw32-make[1]: Leaving directory `C:/qtwork/edyuk-0.9.1/src/default'
mingw32-make: *** [release] Error 2
I tried that thing on google
Re: patched!
06/01/2007, 2:28 on content: Edyuk
some little error
must be:
3dparty/qprojectmodel/qprojectparser.h:
#ifndef _QPROJECT_PARSER_H_
#define _QPROJECT_PARSER_H_
#define QT_NO_QOBJECT_CHECK 1
#include "qproject.h"
but no luck there still same error as above.
thanks.
fullmetalcoder
20th June 2007, 17:56
I tried that thing on google
Re: patched!
06/01/2007, 2:28 on content: Edyuk
some little error
must be:
3dparty/qprojectmodel/qprojectparser.h:
#ifndef _QPROJECT_PARSER_H_
#define _QPROJECT_PARSER_H_
#define QT_NO_QOBJECT_CHECK 1
#include "qproject.h"
but no luck there still same error as above.
thanks.
There are two things left to try :
add DEFINES += QT_NO_QOBJECT_CHECK to config.pri (dirty hack)
add Q_OBJECT to QMakeParser declaration in src/default/qmakemodel/qmakeparser.hIf it still fails please let me know. I should anyway release a newer package soon.:)
fedcer
20th June 2007, 19:34
It looks like your compiler is very strict with casts... Apparently I forgot comment out all the qDebug() statements I put in the QPool code and your compiler complain. All you have to do is opening src/3rdparty/qpool/qpool.cpp and comment out the concerned lines... Apologies for this...:o
Thanks, now it copiled fine. By the way, congratulations ! It is a very good IDE.
fullmetalcoder
21st June 2007, 08:25
Thanks, now it copiled fine.
Good news! :)
By the way, congratulations ! It is a very good IDE.
Thanks a lot :) Such feedback is very important when I feel lost within the sources with so many things left to do and so little time to deal with them ;)
srikpen
21st June 2007, 16:16
There are two things left to try :
add DEFINES += QT_NO_QOBJECT_CHECK to config.pri (dirty hack)
add Q_OBJECT to QMakeParser declaration in src/default/qmakemodel/qmakeparser.hIf it still fails please let me know. I should anyway release a newer package soon.:)
Thanks a lot.
adding the Q_OBJECT solved the problem without the dirty hack you mentioned.
With support like this I don't mind being santa's elve for any testing req's on
my triple boot windows 2K, fedora 6 AMD 32-bit, 64-bit system.
How do I build this in debug mode as well, where do the logs go ??
regards
sri.
fullmetalcoder
22nd June 2007, 13:53
adding the Q_OBJECT solved the problem without the dirty hack you mentioned.
This was the clean solution. I mentioned the other one as well because some people happen to be quite lazy... ;)
With support like this I don't mind being santa's elve for any testing req's on
my triple boot windows 2K, fedora 6 AMD 32-bit, 64-bit system.
It's very kind of you :)
How do I build this in debug mode as well, where do the logs go ??
Edit config.pri... You can basically do any find tunning you want in it since it is included by all subdirs. You'll just need to replace CONFIG += release by CONFIG += debug. There used to be a way to redirect debug output to a log file but I think I dropped it... You can anyway bring it back by editing src/lib/edyukapplication.cpp and adding appropriate code within the message handler. :)
srikpen
23rd June 2007, 06:47
After running edyuk-debug I am not able to find the run.log anywhere.
I have diffed the edyukappliation with it's original as below, is it some thing else I am missing?
C:\qtwork\edyuk-0.9.1\src\lib>diff edyukapplication.cpp edyukapplication.cpp.ORG
75c75
< static QTextStream cout(stdout), cerr(stderr), clog;
---
> //static QTextStream cout(stdout), cerr(stderr), clog;
93c93
< clog << type[t] << msg << endl;
---
> //clog << type[t] << msg << endl;
98c98
< clog << "aborting..." << endl;
---
> //clog << "aborting..." << endl;
142c142
< clog.setDevice(pEdyukLogFile);
---
> //clog.setDevice(pEdyukLogFile);
BTW the debug edyuk justs shows up in task manager and no GUI comes up, then terminates after a few seconds. Any Idea?
Just set the debug options as you mentioned i.e.:
CONFIG += debug and
add Q_OBJECT to QMakeParser declaration in src/default/qmakemodel/qmakeparser.h
fullmetalcoder
23rd June 2007, 10:26
After running edyuk-debug I am not able to find the run.log anywhere.
I have diffed the edyukappliation with it's original as below, is it some thing else I am missing?
C:\qtwork\edyuk-0.9.1\src\lib>diff edyukapplication.cpp edyukapplication.cpp.ORG
75c75
< static QTextStream cout(stdout), cerr(stderr), clog;
---
> //static QTextStream cout(stdout), cerr(stderr), clog;
93c93
< clog << type[t] << msg << endl;
---
> //clog << type[t] << msg << endl;
98c98
< clog << "aborting..." << endl;
---
> //clog << "aborting..." << endl;
142c142
< clog.setDevice(pEdyukLogFile);
---
> //clog.setDevice(pEdyukLogFile);
The log file should be placed in Edyuk::settingsPath() which should expand to ~/.Edyuk-$version$/ so in your case ~/.Edyuk-0.9.1 (or ~/.Edyuk-1.0.0-alpha in case you use the SVN trunk)
BTW the debug edyuk justs shows up in task manager and no GUI comes up, then terminates after a few seconds. Any Idea?
It might come from an assert failure... You know Qt uses a lot of Q_ASSERT() macro everywhere and it can result in very different behaviours of debug and release builds... The best way to figure out what's wrong is to run on command line or under gdb. This way you'll know why the debug build fails and we'll be able to fix this :)
srikpen
23rd June 2007, 13:08
Sorry for bothering you much. But I am not a windows guy.
with gdb I'm comfortable on linux.
I feel impaired with the windows thing.
You have any idea how I can get started debugging this with proper tools on windows.
I don't want to start configuring tools to get running, some quicky debugger, ctags(or find, grep) kind of thing on windows?
Just wanted to know, I see you're also not a windows guy but thought you might have some idea.
thanks
sri.
fullmetalcoder
23rd June 2007, 13:44
Sorry for bothering you much. But I am not a windows guy.
I'm a little lost here? Do you mean you're testing under Window$ and facing troubles there that you don't know how to handle?
You have any idea how I can get started debugging this with proper tools on windows.
I don't want to start configuring tools to get running, some quicky debugger, ctags(or find, grep) kind of thing on windows?
Just wanted to know, I see you're also not a windows guy but thought you might have some idea.
Sure! gdb is also available under Window$ (http://downloads.sourceforge.net/mingw/gdb-5.2.1-1.exe?modtime=1045353600&big_mirror=1). You don't need ctags to use Edyuk code completion but I think it is available for Win as well. As for grep/find and other *nix tools I don't think there is any equivalent but you can always have a look at Cygwin (http://www.cygwin.com/)...
Hope this helps :)
srikpen
23rd June 2007, 15:06
Yep I don't know how to traverse the code fast on Windows. I am using gvim for windows. I will try to find the equivalent ctags and also the gdb.
I am finding it painful to find the bug. Just make a change and then recompile it again which takes about 10 mins.
I was just wondering if there's a fast way of doing the debugging?
thanks much.
fullmetalcoder
23rd June 2007, 15:21
Yep I don't know how to traverse the code fast on Windows. I am using gvim for windows. I will try to find the equivalent ctags and also the gdb.
What do you mean by "traverse the code" ?
I am finding it painful to find the bug. Just make a change and then recompile it again which takes about 10 mins.
Which files did you change to get such a long re-compilation? Make normally keep track of dependencies between files to reduce compilation time once an app has been build once...
I was just wondering if there's a fast way of doing the debugging?
It depends on what you mean... Once you have compiled the app in debug mode all you need is to run it within gdb... Note that you can also run an app not build in debug mode within gdb but the output of some commands will be trickier to understand (backtrace for instance) and some commands won't even work... It should anyway be enough to track down the place where Edyuk fails...
fullmetalcoder
27th June 2007, 14:50
Hi all,
After some long days of struggle with model/view quirks, line endings and other tricky issues I've come to something much more stable. Yet, before releasing a package I'd like some tests to be done on other platforms than just UNIX/Linux.
The code is available through SVN : https://edyuk.svn.sf.net/svnroot/edyuk/0.9.0
As I know most Win32 users are not familiar with SVN, a package (http://edyuk.tuxfamily.org/misc/edyuk-0.9.2.tar.gz)is available as well...
vermarajeev
28th June 2007, 05:46
I tried running edyuk but get this error
/home/rajeev/Desktop/edyuk-0.9.2 # ./build -r
--- Checking configuration ---
Qt version : [OK] 4.2.1
qmake command : [OK] qmake
--- Configuration successful ---
--- Building Edyuk ---
Moving to directory src/lib
Moving to directory src/exec
Moving to directory src/default
--- Compilation successful ---
application edyuk not found after trying :
/home/rajeev/Desktop/edyuk-0.9.2/./edyuk.bin
./edyuk.bin
fullmetalcoder
28th June 2007, 08:41
I tried running edyuk but get this error
/home/rajeev/Desktop/edyuk-0.9.2 # ./build -r
--- Checking configuration ---
Qt version : [OK] 4.2.1
qmake command : [OK] qmake
--- Configuration successful ---
--- Building Edyuk ---
Moving to directory src/lib
Moving to directory src/exec
Moving to directory src/default
--- Compilation successful ---
application edyuk not found after trying :
/home/rajeev/Desktop/edyuk-0.9.2/./edyuk.bin
./edyuk.bin
For an unknown reason make doesn't seem to respect return value conventions (or maybe I badly checked for a 0 return value in the script...). Anyway the "compilation successfu" message is not to be trusted unless you show other message about the ongoing build process (such as "Compiling x.cpp", "moc'ing X.H" and "Linking x.so"...). Hopefully the script creates a log file (.compile.log) that you'll find in the main directory and which should explain why compilation failed...
edit : did you check the content of the folder once you had built Edyuk? It just occured to me that I might I left debug as default build mode... Try this command instead of ./build -r :
$ ./edyuk_debug
vermarajeev
28th June 2007, 09:42
Try this command instead of ./build -r :
$ ./edyuk_debug
Yep that works. We'll let you know if any error.
By the way, I just see your profile as fullmentalcoder, can I know your unidentified name. :D
fullmetalcoder
28th June 2007, 09:47
Yep that works. We'll let you know if any error.
Good! I'm looking forward to hearing your comments :)
By the way, I just see your profile as fullmentalcoder, can I know your unidentified name. :D
I thought it was fullmetalcoder (no 'n') :p If you search a bit you won't have troubles to find my name (have a look at the contest page for instance...)
vermarajeev
29th June 2007, 05:08
Hi Luc,
I started using edyuk, I was able to load a project. The IDE is really good. ;) CONGRATS...
I have a problem debugging my programs. I followed these steps.
1) Open the .pro file.
2) Then I couldn't find any shortcut to place a breakpoint, so did by right clicking
3) clicked Debug->Start Debugging
4) Get this error from the Debug.log displayed at bottom
---------- process gdb started ----------
[/home/rajeev/Desktop] gdb --quiet --fullname /home/rajeev/Desktop/edyuk-0.9.2
/home/rajeev/Desktop/edyuk-0.9.2: No such file or directory.
(gdb) start
No symbol table loaded. Use the "file" command.
(gdb) continue
The program is not being run.
(gdb)
Any idea???
One more thing,
In windows, we have shortcuts to
1) place a breakpoint
2) run the debugger with F5
3) Go to next step using F10
etc etc. The life of user is made much easier, rather than going and doing all other stuffs. Cant we provide shortcuts to make Edyup a more user friendly in terms of debugging.
Thanks
fullmetalcoder
29th June 2007, 13:49
I started using edyuk, I was able to load a project. The IDE is really good. ;) CONGRATS...
Thanks. :)
2) Then I couldn't find any shortcut to place a breakpoint, so did by right clicking
There's a toolbar entry and a menu entry to do that which results in a shortcut being "available". I mean, you can set a shortcut through the configure shortucts dialog but there is no default shortcut...
3) clicked Debug->Start Debugging
4) Get this error from the Debug.log displayed at bottom
Any idea???
It looks like the target i.e. executable to debug) hasn't been found... Check that it does exist. Check that you can run it and send me the project file you're using (or is it Edyuk's one?).
In windows, we have shortcuts to
1) place a breakpoint
2) run the debugger with F5
3) Go to next step using F10
etc etc. The life of user is made much easier, rather than going and doing all other stuffs. Cant we provide shortcuts to make Edyup a more user friendly in terms of debugging.
Check out the shortcut configuration dialog... ;)
fullmetalcoder
29th June 2007, 17:18
Edyuk 0.9.2 has just been released after long and tough testings!
It features many (many many!) bugfixes, especially crucial Windows-specific ones and annoying model/view issues. The template manager has been improved and new project templates have been added. The run-time translation now works perfectly (but for some reason you can't fallback to untranslated mode...) and a russian translation has been added.
Hoping you'll like it :) and stay tuned : the 1.0 version is gonna be awesome!!! ;)
vermarajeev
3rd July 2007, 05:58
How to change the default path /home/rajeev/Desktop/edyuk-0.9.2: to my project. I think the problem is : the fullpath that the compiler takes. How can I change this to my project path.
I also tried setting the target path as you suggested but get the same below error.
---------- process gdb started ----------
[/home/rajeev/Desktop] gdb --quiet --fullname /home/rajeev/Desktop/edyuk-0.9.2
/home/rajeev/Desktop/edyuk-0.9.2: No such file or directory.
(gdb) start
No symbol table loaded. Use the "file" command.
(gdb) continue
The program is not being run.
(gdb)
Pepe
11th July 2007, 02:14
Is there a rpm package? (Or src.rpm or at least a spec file)
fullmetalcoder
12th July 2007, 08:40
Is there a rpm package? (Or src.rpm or at least a spec file)
Nop. All you can get currently is sources from Sf.net dl server or from the SVN... But you're welcome if you wish to create such rpm. (AFAIK there are already similar "spec" files for some distros like Arch Linux...)
fullmetalcoder
29th July 2007, 20:47
Here comes the first beta release of Edyuk 1.0.0 (https://sourceforge.net/project/showfiles.php?group_id=168260&package_id=196690&release_id=528511)
Most noticeable changes are the upgrade of QCodeEdit, the text editing layer (from version 1 to 2, still work in progress), and QCodeModel, the completion/class browsing data backend (same thing but way more mature than QCodeEdit 2). These changes bring a much better user experience by reducing the memory usage by several dozen megs and lowering the loading speed down to 7 seconds on first load and about 2 on next ones (instead of 20 and 10!!!).
Many more or less nasty bugs have been fixed as well and the code completion was improved (once again) a little : it should be able to complete everything (Qt classes, project ones and even designer-generated classes!!!).
The handling of line marks (which includes breakpoints) was improved a great deal. That should make the graphical debugging way smoother, when it will be fiexd because it turns out that there is something broken :o... Thanks vermarajeev for reporting, I'll try to solve this ASAP and schedule a second beta release soon enough...
Despite its "unstable" status it should prove very usable... if you manage to compile it... indeed I was not able to test it under neither Windows nor Mac. Thus, feedback would be highly valued. ;)
happy testing :D
Pepe
30th July 2007, 08:30
I'm afraid compilation fails in Windows (using Qt 4.2.3 opensource):
g++ -mthreads -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -Wl,-s -Wl,-s -shared -Wl,--out-implib,..\..\plugins\libdefault.a -o "..\..\plugins\default.dll" object_script.default.Release -L"c:\Qt\4.2.3\lib" -L../.. -ledyuk -lQtDesignerComponents4 -lQtDesigner4 -lQtUiTools -lQtXml4 -lQtGui4 -lQtCore4
C:\MinGW\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\ mingw32\bin\ld.exe: cannot find -ledyuk
collect2: ld returned 1 exit status
mingw32-make[1]: *** [..\..\plugins\default.dll] Error 1
mingw32-make[1]: Leaving directory `C:/Documents and Settings/Pepe/My Documents/edyuk/edyuk-1.0.0-beta/src/default'
mingw32-make: *** [release] Error 2
fullmetalcoder
30th July 2007, 13:32
I'm afraid compilation fails in Windows (using Qt 4.2.3 opensource):
I'm afraid I would have guessed it... Windows DLL stuff are a bit annoying but the fix should be a one-liner :
Add this line to 3rdparty/qcodeedit2/lib/lib.pri :
DEFINES += _QCODE_EDIT_BUILD_
Please let me know whether build succeeds on Win with this fix.
Pepe
30th July 2007, 14:28
It fails again with the same error than before :(
fullmetalcoder
30th July 2007, 14:31
Are you sure that the makefiles have been re-generated? and that the library has been built properly?
edit : appears that the fix wasn't actually a one-liner... I'm packaging a second beta... :o
Pepe
30th July 2007, 14:40
How can I re-generate the makefiles?
I already tried running "qmake", no success.
BTW, I realized there were other previous errors, although compilation continued:
In file included from ../../3rdparty/qcodeedit2/lib/widgets/qsearchreplacepanel.
h:25,
from ..\..\3rdparty\qcodeedit2\lib\qeditorfactory.cpp:3 3:
../tmp-lib-4.2.3-win32/ui/ui_searchreplace.h: In member function `void Ui_Search
Replace::setupUi(QWidget*)':
../tmp-lib-4.2.3-win32/ui/ui_searchreplace.h:56: error: 'class QVBoxLayout' has
no member named 'setLeftMargin'
../tmp-lib-4.2.3-win32/ui/ui_searchreplace.h:57: error: 'class QVBoxLayout' has
no member named 'setTopMargin'
../tmp-lib-4.2.3-win32/ui/ui_searchreplace.h:58: error: 'class QVBoxLayout' has
no member named 'setRightMargin'
../tmp-lib-4.2.3-win32/ui/ui_searchreplace.h:59: error: 'class QVBoxLayout' has
no member named 'setBottomMargin'
../tmp-lib-4.2.3-win32/ui/ui_searchreplace.h:73: error: 'class QHBoxLayout' has
no member named 'setLeftMargin'
../tmp-lib-4.2.3-win32/ui/ui_searchreplace.h:74: error: 'class QHBoxLayout' has
no member named 'setTopMargin'
../tmp-lib-4.2.3-win32/ui/ui_searchreplace.h:75: error: 'class QHBoxLayout' has
no member named 'setRightMargin'
../tmp-lib-4.2.3-win32/ui/ui_searchreplace.h:76: error: 'class QHBoxLayout' has
no member named 'setBottomMargin'
../tmp-lib-4.2.3-win32/ui/ui_searchreplace.h:169: error: 'class QHBoxLayout' has
no member named 'setLeftMargin'
../tmp-lib-4.2.3-win32/ui/ui_searchreplace.h:170: error: 'class QHBoxLayout' has
no member named 'setTopMargin'
../tmp-lib-4.2.3-win32/ui/ui_searchreplace.h:171: error: 'class QHBoxLayout' has
no member named 'setRightMargin'
../tmp-lib-4.2.3-win32/ui/ui_searchreplace.h:172: error: 'class QHBoxLayout' has
no member named 'setBottomMargin'
mingw32-make[1]: *** [..\tmp-lib-4.2.3-win32\obj\release\qeditorfactory.o] Error
1
mingw32-make[1]: Leaving directory `C:/Documents and Settings/Pepe/My Docume
nts/edyuk/edyuk-1.0.0-beta/src/lib'
mingw32-make: *** [release] Error 2
Project MESSAGE: project generated by Edyuk
Project MESSAGE: http://edyuk.sourceforge.net
Project MESSAGE: project generated by Edyuk
Project MESSAGE: http://edyuk.sourceforge.net
Project MESSAGE: project generated by Edyuk
Project MESSAGE: http://edyuk.sourceforge.net
mingw32-make -f Makefile.Release
mingw32-make[1]: Entering directory `C:/Documents and Settings/Pepe/My Docum
ents/edyuk/edyuk-1.0.0-beta/src/exec'
g++ -mthreads -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runt
ime-pseudo-reloc -Wl,-s -Wl,-s -Wl,-subsystem,windows -o "..\..\edyuk.exe" ..\tm
p-exec-4.2.3-win32\obj\release\main.o -L"c:\Qt\4.2.3\lib" -lmingw32 -lqtmain ..
\tmp-exec-4.2.3-win32\obj\release\edyuk_res.o -L../.. -ledyuk -lQtGui4 -lQtCore4
C:\MinGW\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\ mingw32\bin\ld.exe: cannot fin
d -ledyuk
collect2: ld returned 1 exit status
mingw32-make[1]: *** [..\..\edyuk.exe] Error 1
mingw32-make[1]: Leaving directory `C:/Documents and Settings/Pepe/My Docume
nts/edyuk/edyuk-1.0.0-beta/src/exec'
mingw32-make: *** [release] Error 2
fullmetalcoder
30th July 2007, 14:45
These errors are awkward... The ui file has been generated using Qt designer so there can't be any problem unless new properties have been introduced in Qt 4.3... Would be quite annoying since there apparently is NO way to filter them out and they appear to be added by default...:( If you can afford it try upgrading to Qt 4.3 and see if it works any better...
Edit : Indeed, the margin management of layouts has changed in Qt 4.3... QLayout::setContentsMargin() is preferred and thus used, through new properties, by Qt Designer... Unfortunately, earlier versions of uic can not handle these properties properly... Anyone has an idea on how to fix this???
Pepe
30th July 2007, 15:04
Tried with Qt 4.3.0. I had to add your previous fix because compilation failed in the same place.
After that compilation went on for some minutes more but failed in another point:
mingw32-make[1]: Entering directory `C:/Documents and Settings/Pepe/My Docum
ents/edyuk/edyuk-1.0.0-beta/src/default'
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel
oc -Wl,-s -mthreads -Wl -shared -Wl,--out-implib,..\..\plugins\libdefault.a -o "
..\..\plugins\default.dll" object_script.default.Release -L"c:\Qt\4.3.0\lib" -L
../.. -ledyuk -lQtDesignerComponents4 -lQtScript4 -lQtDesigner4 -lQtUiTools -lQt
Xml4 -lQtGui4 -lQtCore4
Creating library file: ..\..\plugins\libdefault.a
./..\tmp-default-4.3.0-win32\obj\release\core.o(.text$_ZN18CppCallbackHan dler5ev
entE7QString11QStringList[CppCallbackHandler::event(QString, QStringList)]+0x1ab
c):core.cpp: undefined reference to `QEditor::staticMetaObject'
./..\tmp-default-4.3.0-win32\obj\release\debuger.o(.text+0x4931):debuger. cpp: un
defined reference to `QEditor::staticMetaObject'
./..\tmp-default-4.3.0-win32\obj\release\debuger.o(.text+0x4959):debuger. cpp: un
defined reference to `QEditor::cursor() const'
./..\tmp-default-4.3.0-win32\obj\release\debuger.o(.text+0x4972):debuger. cpp: un
defined reference to `QDocumentCursor::lineNumber() const'
./..\tmp-default-4.3.0-win32\obj\release\debuger.o(.text+0x498e):debuger. cpp: un
defined reference to `QDocumentCursor::~QDocumentCursor()'
./..\tmp-default-4.3.0-win32\obj\release\debuger.o(.text+0x4b63):debuger. cpp: un
defined reference to `QDocumentCursor::~QDocumentCursor()'
./..\tmp-default-4.3.0-win32\obj\release\cppqtperspective.o(.text+0x1838) :cppqtp
erspective.cpp: undefined reference to `QCodeEdit::editor() const'
./..\tmp-default-4.3.0-win32\obj\release\cppqtperspective.o(.text+0x1864) :cppqtp
erspective.cpp: undefined reference to `QCodeEdit::editor() const'
./..\tmp-default-4.3.0-win32\obj\release\cppqtperspective.o(.text+0x19c0) :cppqtp
erspective.cpp: undefined reference to `_imp___ZNK14QEditorFactory6editorERK7QSt
ringS2_'
./..\tmp-default-4.3.0-win32\obj\release\cppqtperspective.o(.text+0x1ceb) :cppqtp
erspective.cpp: undefined reference to `QEditor::staticMetaObject'
./..\tmp-default-4.3.0-win32\obj\release\cppqtperspective.o(.text+0x1cff) :cppqtp
erspective.cpp: undefined reference to `QEditor::document() const'
./..\tmp-default-4.3.0-win32\obj\release\cppqtperspective.o(.text+0x1d15) :cppqtp
erspective.cpp: undefined reference to `QDocument::line(int) const'
./..\tmp-default-4.3.0-win32\obj\release\cppqtperspective.o(.text+0x1d3d) :cppqtp
erspective.cpp: undefined reference to `QEditor::marker() const'
./..\tmp-default-4.3.0-win32\obj\release\cppqtperspective.o(.text+0x1d86) :cppqtp
erspective.cpp: undefined reference to `QEditor::marker() const'
./..\tmp-default-4.3.0-win32\obj\release\cppcompletion.o(.text+0xde67):cp pcomple
tion.cpp: undefined reference to `QEditor::cursor() const'
./..\tmp-default-4.3.0-win32\obj\release\cppcompletion.o(.text+0xdeb2):cp pcomple
tion.cpp: undefined reference to `QDocumentCursor::~QDocumentCursor()'
./..\tmp-default-4.3.0-win32\obj\release\cppcompletion.o(.text+0x1063f):c ppcompl
etion.cpp: undefined reference to `QDocumentCursor::~QDocumentCursor()'
./..\tmp-default-4.3.0-win32\obj\release\moc_assistant.o(.text+0x1a9):moc _assist
ant.cpp: undefined reference to `Assistant::setupContent()'
./..\tmp-default-4.3.0-win32\obj\release\moc_assistant.o(.text+0x1b9):moc _assist
ant.cpp: undefined reference to `Assistant::setupIndex()'
collect2: ld returned 1 exit status
mingw32-make[1]: *** [..\..\plugins\default.dll] Error 1
mingw32-make[1]: Leaving directory `C:/Documents and Settings/Pepe/My Docume
nts/edyuk/edyuk-1.0.0-beta/src/default'
mingw32-make: *** [release] Error 2
fullmetalcoder
30th July 2007, 15:29
Tried with Qt 4.3.0. I had to add your previous fix because compilation failed in the same place.
After that compilation went on for some minutes more but failed in another point:
As I said it appeared that Windows&DLL-specific troubles actually require a little more than a one-liner... A proper package should be available within an hour or so... Sorry for the inconvenience but I can't test under Window$...
This delay is not so bad after all because in the meantime I fixed several annoying bugs, including the debugging failure...:)
fullmetalcoder
30th July 2007, 16:03
Second attempt to release a beta of Edyuk 1.0.0 (https://sourceforge.net/project/showfiles.php?group_id=168260&package_id=196690&release_id=528712)... Will Windows accept it for once?
Apart from the compilation troubles under Windows (solved) and Qt < 4.3 (not solved, bug reported to the Trolls... wait and see) several other issues have been dealt with :
debugging is back :)
a rare but annoying highlighting bug has been solved
many configuration related issues have been fixed (setting alternative commands to gcc/qmake/... will now work)
and more...
Pepe
30th July 2007, 16:29
Bad news, still it fails:
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel
oc -Wl,-s -mthreads -Wl -shared -Wl,--out-implib,..\..\plugins\libdefault.a -o "
..\..\plugins\default.dll" object_script.default.Release -L"c:\Qt\4.3.0\lib" -L
../.. -ledyuk -lQtDesignerComponents4 -lQtScript4 -lQtDesigner4 -lQtUiTools -lQt
Xml4 -lQtGui4 -lQtCore4
Creating library file: ..\..\plugins\libdefault.a
./..\tmp-default-4.3.0-win32\obj\release\cppqtperspective.o(.text+0x1838) :cppqtp
erspective.cpp: undefined reference to `QCodeEdit::editor() const'
./..\tmp-default-4.3.0-win32\obj\release\cppqtperspective.o(.text+0x1864) :cppqtp
erspective.cpp: undefined reference to `QCodeEdit::editor() const'
./..\tmp-default-4.3.0-win32\obj\release\moc_assistant.o(.text+0x1a9):moc _assist
ant.cpp: undefined reference to `Assistant::setupContent()'
./..\tmp-default-4.3.0-win32\obj\release\moc_assistant.o(.text+0x1b9):moc _assist
ant.cpp: undefined reference to `Assistant::setupIndex()'
collect2: ld returned 1 exit status
mingw32-make[1]: *** [..\..\plugins\default.dll] Error 1
mingw32-make[1]: Leaving directory `C:/Documents and Settings/Pepe/My Docume
nts/edyuk/edyuk-1.0.0-beta2/src/default'
mingw32-make: *** [release] Error 2
fullmetalcoder
30th July 2007, 17:09
Proposed fix :
in 3rdparty/qcodeedit/lib/qcodeedit.h :
add #include "qce-config.h"
replace class QCodeEdit by class QCE_EXPORT QCodeEdit
in src/default/assistant.h :
remove the two private slots mentionned by the compiler error (those without parameters if it helps you)
It should be OK after that but I'd rather wait for a confirmation before releasing yet another package... ;)
Pepe
30th July 2007, 19:50
With those changes now it compiles, but it crashes when I try to run it, just after the splash screen, when the main window was just going to be shown.
fullmetalcoder
30th July 2007, 20:05
it crashes when I try to run it, just after the splash screen, when the main window was just going to be shown.
Any chance that you send me a backtrace? Windows is definitely a troublesome platform to support...
Pepe
30th July 2007, 22:23
There are no symbols, so I think it will useless:
(gdb) bt
#0 0x01590b82 in ?? ()
#1 0x01591a34 in ?? ()
#2 0x015a0053 in ?? ()
#3 0x015a0133 in ?? ()
#4 0x015c557e in ?? ()
#5 0x6a2f4e62 in _size_of_stack_reserve__ ()
#6 0x6a2fdfd6 in _size_of_stack_reserve__ ()
#7 0x6a2fe06c in _size_of_stack_reserve__ ()
#8 0x6a2f744b in _size_of_stack_reserve__ ()
#9 0x6510aced in _size_of_stack_reserve__ ()
#10 0x6510aef7 in _size_of_stack_reserve__ ()
#11 0x6a2df993 in _size_of_stack_reserve__ ()
#12 0x6a30ae11 in _size_of_stack_reserve__ ()
#13 0x7e418734 in _libkernel32_a_iname ()
#14 0x7e418816 in _libkernel32_a_iname ()
#15 0x7e4189cd in _libkernel32_a_iname ()
#16 0x7e418a10 in _libkernel32_a_iname ()
#17 0x6a30efc1 in _size_of_stack_reserve__ ()
#18 0x6517c240 in _size_of_stack_reserve__ ()
#19 0x6a2df38d in _size_of_stack_reserve__ ()
#20 0x6a2df59a in _size_of_stack_reserve__ ()
#21 0x6a2e523b in _size_of_stack_reserve__ ()
#22 0x100be20e in _size_of_stack_reserve__ ()
---Type <return> to continue, or q <return> to quit---
#23 0x00401428 in _size_of_stack_reserve__ ()
#24 0x0040198b in _size_of_stack_reserve__ ()
#25 0x0040162a in _size_of_stack_reserve__ ()
#26 0x004011e7 in _size_of_stack_reserve__ ()
#27 0x00401258 in _size_of_stack_reserve__ ()
#28 0x7c816fd7 in _libkernel32_a_iname ()
(gdb)
fullmetalcoder
31st July 2007, 09:31
There are no symbols, so I think it will useless:
Well it looks useless indeed... I guess I'll have to try to find a Windows PC somewhere (I *might* manage to do this) and lead tests on my own... BTW, did you perform a make clean after the last suggested changes? (it appears that qmake badly handles dependencies of the default plugin so when an header of the core lib is modified the plugin is not always rebuilt accordingly...) This may help AFAIK.
Pepe
31st July 2007, 13:19
BTW, did you perform a make clean after the last suggested changes?
Yes. I even deleted the source tree, uncompressed again, applied your changes and compiled it. No changes. Edyuk crashes just when the main window appears or it's about to.
I tried to compile it with debug info, adding "debug" to the CONFIG in the pro files, but then linking fails.
fullmetalcoder
31st July 2007, 13:43
I tried to compile it with debug info, adding "debug" to the CONFIG in the pro files, but then linking fails.
To set to debug you need not modifying all project files but only the config.pri file
To compile in debug mode under Windows you'll need debug build of Qt libs which is not distributed... If you want to do that you first need to recompile Qt in debug mode...
Pepe
31st July 2007, 15:10
Mmm, I tried to compile Qt in debug mode, but there's problems.
I chose the option "Qt 4.3.0 Build Debug Libraries" in the Windows menu, but I think it didn't build, I think it only compiled qmake. There's an error at the end:
mingw32-make: *** No rule to make target `debug'. Stop.
Anyway I tried to compile Edyuk in debug mode, changing config.pri, but it fails with:
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -mthreads -Wl -shared -Wl,--out-implib,..\..\plugins\libdefault_debug.a -o "..\..\plugins\default_debug.dll" object_script.default_debug.Debug -L"c:\Qt\4.3.0\lib" -L../.. -ledyuk_debug -lQtDesignerComponentsd4 -lQtScriptd4 -lQtDesignerd4 -lQtUiToolsd -lQtXmld4 -lQtGuid4 -lQtCored4
C:\MinGW\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\ mingw32\bin\ld.exe: cannot find -ledyuk_debug
collect2: ld returned 1 exit status
mingw32-make[1]: *** [..\..\plugins\default_debug.dll] Error 1
mingw32-make[1]: Leaving directory `C:/Documents and Settings/Pepe/My Documents/edyuk/edyuk-1.0.0-beta2/src/default'
mingw32-make: *** [debug] Error 2
fullmetalcoder
31st July 2007, 15:12
it crashes when I try to run it, just after the splash screen, when the main window was just going to be shown.
Well, I've just managed to find a XP box to test Edyuk (this post has been written from it actually). Here is my config :
Windows XP Home edition
fresh Qt 4.3.0 install
fresh MinGW install (the one fetched by Qt installer)
fresh Subversion 1.4.4 installI did a checkout of the SVN trunk, typed qmake && make in the command line, waited for compilation to finish, typed edyuk in the command line and...
... it just worked! No crash, no bugs as far as I tested, except a failure of the completion backend to find Qt headers : Edyuk does look usable to me.
I don't believe I fixed the bug you faced in the last few commits but that's how it looks... Could you please try to compile and run the content of the SVN trunk and tell me whether it works or still fails somewhere?
edit : It actually looks like there is an annoying bug... The first launch is OK but following one fails because of completion backend... As sources where not parsed properly on first launch, the tag file is malformed and causes a segfault when Edyuk tries to parse it... I'll investigate this. In the meantime just remove the Qt.tag file from %HOME%\.Edyuk-1.0.0-alpha each time you want to re-launch Edyuk.
Pepe
31st July 2007, 15:22
How can I get a "SVN trunk"?
(Sorry for the silly question but I've never used SVN)
fullmetalcoder
31st July 2007, 15:40
How can I get a "SVN trunk"?
(Sorry for the silly question but I've never used SVN)
That's not silly... Few people use SVN often... To get started you'll need to grab a client. If command line fits you can fetch bins from http://subversion.tigris.org otherwise google for TortoiseSVN.
Then you'll need to do a "checkout" of this URL : http://edyuk.svn.sf.net/svnroot/edyuk/trunk
(into the directory you want...)
The command line way to achieve this is : $ svn co http://edyuk.svn.sf.net/svnroot/edyuk/trunk edyuk
And I finally was able to fix the bug! The SVN will work on Win now. A package will come soon :)
Pepe
31st July 2007, 16:03
I compiled the SVN, but the program still crashes:
http://img515.imageshack.us/img515/9968/edyuk2gu5.th.jpg (http://img515.imageshack.us/my.php?image=edyuk2gu5.jpg)
I uninstalled Qt 4.3, installed again but this time allowing it to download mingw (instead of using the old one), but no way.
fullmetalcoder
31st July 2007, 16:06
I compiled the SVN, but the program still crashes
That's puzzling... There indeed were some bugs under Win but after the fix I committed on SVN everything went fine for me under the vanilla XP test system... Are you using vista BTW?
Pepe
31st July 2007, 16:20
No, I'm using Windows XP Media Center.
Maybe could be something about the locale? My system is in Spanish.
fullmetalcoder
31st July 2007, 16:39
Maybe could be something about the locale? My system is in Spanish.
I don't think so but I can't be sure... The only thing I'm sure is that it works perfectly under both my linux box and the XP Home box I briefly had access to...
magland
1st August 2007, 11:04
I still get compilation errors from the SVN version:
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -
DQNFA_BUILD -DQT_DLL -DQT_XML_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT
-I"c:\Qt\opensource\4.3.0\include\QtCore" -I"c:\Qt\opensource\4.3.0\include\QtC
ore" -I"c:\Qt\opensource\4.3.0\include\QtGui" -I"c:\Qt\opensource\4.3.0\include\
QtGui" -I"c:\Qt\opensource\4.3.0\include\QtXml" -I"c:\Qt\opensource\4.3.0\includ
e\QtXml" -I"c:\Qt\opensource\4.3.0\include" -I"." -I"document" -I"language" -I"w
idgets" -I"qxs" -I"qnfa" -I"..\..\qpluginsystem" -I"c:\Qt\opensource\4.3.0\inclu
de\ActiveQt" -I".build" -I".build" -I"c:\Qt\opensource\4.3.0\mkspecs\win32-g++"
-o .build\qcodeedit.o qcodeedit.cpp
qcodeedit.cpp:10: error: definition of static data member 'QCodeEdit::m_instance
s' of dllimport'd class.
qcodeedit.cpp: In member function `void QCodeEdit::sendPanelCommand(const QStrin
g&, const char*, const QList<QGenericArgument>&)':
qcodeedit.cpp:57: warning: function 'QList<QPanel*> QCodeEdit::panels() const' i
s defined after prior declaration as dllimport: attribute ignored
mingw32-make[2]: *** [.build\qcodeedit.o] Error 1
mingw32-make[2]: Leaving directory `C:/cstuff/edyuk/3rdparty/qcodeedit2/lib'
mingw32-make[1]: *** [debug] Error 2
mingw32-make[1]: Leaving directory `C:/cstuff/edyuk/3rdparty/qcodeedit2/lib'
mingw32-make: *** [sub-lib-make_default] Error 2
fullmetalcoder
1st August 2007, 11:40
I still get compilation errors from the SVN version:
If you're sure that you're using SVN HEAD (last revision) of the trunk then you should try this :
$ make distclean && qmake && make
magland
1st August 2007, 12:01
If you're sure that you're using SVN HEAD (last revision) of the trunk then you should try this :
$ make distclean && qmake && make
Got the same type of error (below)... it tells me that I am "at revision: 229"... is it the latest?
....
edyuksettings.cpp:83: error: definition of static data member 'EdyukSettings::PA
TH_VAR' of dllimport'd class.
edyuksettings.cpp:124: warning: function 'virtual void EdyukSettings::setDefault
()' is defined after prior declaration as dllimport: attribute ignored
edyuksettings.cpp:275: warning: function 'void EdyukSettings::buildRecents()' is
defined after prior declaration as dllimport: attribute ignored
edyuksettings.cpp:275: warning: 'void EdyukSettings::buildRecents()' defined loc
ally after being referenced with dllimport linkage
mingw32-make[2]: *** [..\tmp-lib-4.3.0-win32\obj\release\edyuksettings.o] Error
1
mingw32-make[2]: Leaving directory `C:/cstuff/edyuk/src/lib'
mingw32-make[1]: *** [release] Error 2
mingw32-make[1]: Leaving directory `C:/cstuff/edyuk/src/lib'
mingw32-make: *** [sub-src-lib-make_default] Error 2
C:\cstuff\edyuk>
fullmetalcoder
1st August 2007, 12:42
Got the same type of error (below)... it tells me that I am "at revision: 229"... is it the latest?
It is the latest but the error occurs at another place. It looks like the project file of the corelib got mixed up when I last saved it... just put DEFINES += _EDYUK_CORELIB_BUILD_ in src/lib/lib.pro and it should compile...
magland
1st August 2007, 12:56
It is the latest but the error occurs at another place. It looks like the project file of the corelib got mixed up when I last saved it... just put DEFINES += _EDYUK_CORELIB_BUILD_ in src/lib/lib.pro and it should compile...
Okay, progress, now I get
Creating library file: ..\..\libedyuk.a
./..\tmp-lib-4.3.0-win32\obj\release\qeditor.o(.text+0x1630):qeditor. cpp: undefined reference to `_imp___ZN16EdyukApplication8InstanceEv'
./..\tmp-lib-4.3.0-win32\obj\release\qeditor.o(.text+0x1641):qeditor. cpp: undefined reference to `_imp___ZN16EdyukApplication15shortcutManagerEv'
./..\tmp-lib-4.3.0-win32\obj\release\qeditor.o(.text+0x18e5):qeditor. cpp: undefined reference to `_imp___ZN16EdyukApplication8InstanceEv'
./..\tmp-lib-4.3.0-win32\obj\release\qeditor.o(.text+0x18f6):qeditor. cpp: undefined reference to `_imp___ZN16EdyukApplication15shortcutManagerEv'
./..\tmp-lib-4.3.0-win32\obj\release\qeditor.o(.text+0x1b9a):qeditor. cpp: undefined reference to `_imp___ZN16EdyukApplication8InstanceEv'
./..\tmp-lib-4.3.0-win32\obj\release\qeditor.o(.text+0x1bab):qeditor. cpp: undefined reference to `_imp___ZN16EdyukApplication15shortcutManagerEv'
./..\tmp-lib-4.3.0-win32\obj\release\qeditor.o(.text+0x1e4f):qeditor. cpp: undefined reference to `_imp___ZN16EdyukApplication8InstanceEv'
./..\tmp-lib-4.3.0-win32\obj\release\qeditor.o(.text+0x1e60):qeditor. cpp: undefined reference to `_imp___ZN16EdyukApplication15shortcutManagerEv'
...
fullmetalcoder
1st August 2007, 13:11
If the editor.cpp file had been build BEFORE the change in lib.pro this linking error wouldn't have shown up... perform a dummy edit in 3rdparty/qcodeedit2/lib/qeditor.cpp to force make to re-compile it and the linking should succeed.
magland
1st August 2007, 14:04
If the editor.cpp file had been build BEFORE the change in lib.pro this linking error wouldn't have shown up... perform a dummy edit in 3rdparty/qcodeedit2/lib/qeditor.cpp to force make to re-compile it and the linking should succeed.
Thanks that worked (and no crashes!).
Editor has very wierd behaviour (probably windows-specific I am guessing)
page-up, page-down do not work
slow-ish scrolling
"|" symbols sometimes appear at end of lines when scrolling
Code completion is EXTREMELY FAST (congrats), but I couldn't get it to work for locally declared variables.
How do I get the nifty options such as collapse/expand to work?
Edit->find does not work
I think QCodeEdit needs more work before it's useful on Windows.
fullmetalcoder
1st August 2007, 14:20
Editor has very wierd behaviour
Keep in mind that this is just a beta : QCodeEdit 2 is still work in progress...
page-up, page-down do not work
I got to investigate this because the related cursor move operation are implemented properly...
slow-ish scrolling
Really? Well, wasn't slow as far as I tested... big files with a lot of highlighted blocks (e.g. rcc output) can lead to slow scrolling but most files don't...
(probably windows-specific I am guessing)
"|" symbols sometimes appear at end of lines when scrolling
When I tested QCodeEdit 2 under Windows I myself experimented a few display bugs which never showed up under Linux... I must admit that I'm a bit puzzled about that...
Code completion is EXTREMELY FAST (congrats)
Thanks :) It is also extremely efficient since it can complete chain of tokens (e.g. widget->geometry().normailzed().bottomRight() ...) just as fast. :D
but I couldn't get it to work for locally declared variables.
Do you mean variables/functions declared in a source file out of any function context? Then it's normal (though I may solve it someday...) Otherwise I'd appreciate a better description so as to be able to fix this...
How do I get the nifty options such as collapse/expand to work?:confused: What do you mean? Don't the little rectangles with plus/minus signs appear in the left panel of the editor? And don't clicking on them do anything?
Edit->find does not workWell, it shows a panel so it's not bad... ;) This is work in progress as well (and in real progress since I'm working on it right now and have already committed some code to the SVN...)
I think QCodeEdit needs more work before it's useful on Windows.It surely does, but not only under Windows. That's why I'm looking for testers (and possibly even coders willing to patch things...) in order to improve it.
magland
1st August 2007, 14:54
Do you mean variables/functions declared in a source file out of any function context? Then it's normal (though I may solve it someday...) Otherwise I'd appreciate a better description so as to be able to fix this...
For example the following do not work within a function:
QString str;
str.
QWidget *widget;
widget->
correction: QWidget works, but not QString
:confused: What do you mean? Don't the little rectangles with plus/minus signs appear in the left panel of the editor? And don't clicking on them do anything?
Nope... no little rectangles. No line numbers either.
It surely does, but not only under Windows. That's why I'm looking for testers (and possibly even coders willing to patch things...) in order to improve it.
Perhaps I'll take a look sometime.
fullmetalcoder
1st August 2007, 15:13
For example the following do not work within a function:
QString str;
str.
QWidget *widget;
widget->
correction: QWidget works, but not QString
The thing is that Qt types are a little problematic... Under Linux/Mac Qt headers are installed through a make install command which copies GOOD OLD HEADERS : *.h contains the actual definitions and those of the form QSomeClass points to qsomeclass.h. However, under Windows, as both source and bins are packed together, the "system" headers point to sources one so all headers in $QDTIR/include are just one-liners... This used to cause complete failure of completion for Qt types but when I spotted it yesterday I implemented a quick hack to try to handle this. I f you can complete QWidget it means that it worked but if QString still fails then there are still cases not properly handled by that hack...
Nope... no little rectangles. No line numbers either.
:eek: That's pretty weird... The panels should be shown... When I tried yesterday under Win XP I didn't have any problem with them...
Could you post a screenshot? Here's how it (the editor widget) should look : http://www.qtcentre.org/forum/attachment.php?attachmentid=1438&d=1185885187
Perhaps I'll take a look sometime.
You'd be welcome. :)
magland
1st August 2007, 17:57
:eek: That's pretty weird... The panels should be shown... When I tried yesterday under Win XP I didn't have any problem with them...
Could you post a screenshot? Here's how it (the editor widget) should look : http://www.qtcentre.org/forum/attachment.php?attachmentid=1438&d=1185885187
Maybe this is the issue:
The edyuk compilation reported no problem. However, when I try to compile 3rdparty/qcodeedit2, I get the following error:
cd lib\ && mingw32-make -f Makefile
mingw32-make[1]: Entering directory `C:/cstuff/edyuk/3rdparty/qcodeedit2/lib'
mingw32-make -f Makefile.Debug
mingw32-make[2]: Entering directory `C:/cstuff/edyuk/3rdparty/qcodeedit2/lib'
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -
DQNFA_BUILD -DQT_DLL -DQT_XML_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT
-I"c:\Qt\opensource\4.3.0\include\QtCore" -I"c:\Qt\opensource\4.3.0\include\QtC
ore" -I"c:\Qt\opensource\4.3.0\include\QtGui" -I"c:\Qt\opensource\4.3.0\include\
QtGui" -I"c:\Qt\opensource\4.3.0\include\QtXml" -I"c:\Qt\opensource\4.3.0\includ
e\QtXml" -I"c:\Qt\opensource\4.3.0\include" -I"." -I"document" -I"language" -I"w
idgets" -I"qxs" -I"qnfa" -I"..\..\qpluginsystem" -I"c:\Qt\opensource\4.3.0\inclu
de\ActiveQt" -I".build" -I".build" -I"c:\Qt\opensource\4.3.0\mkspecs\win32-g++"
-o .build\qcodeedit.o qcodeedit.cpp
qcodeedit.cpp:10: error: definition of static data member 'QCodeEdit::m_instance
s' of dllimport'd class.
qcodeedit.cpp: In member function `void QCodeEdit::sendPanelCommand(const QStrin
g&, const char*, const QList<QGenericArgument>&)':
qcodeedit.cpp:57: warning: function 'QList<QPanel*> QCodeEdit::panels() const' i
s defined after prior declaration as dllimport: attribute ignored
mingw32-make[2]: *** [.build\qcodeedit.o] Error 1
mingw32-make[2]: Leaving directory `C:/cstuff/edyuk/3rdparty/qcodeedit2/lib'
mingw32-make[1]: *** [debug] Error 2
mingw32-make[1]: Leaving directory `C:/cstuff/edyuk/3rdparty/qcodeedit2/lib'
mingw32-make: *** [sub-lib-make_default] Error 2
C:\cstuff\edyuk\3rdparty\qcodeedit2>
fullmetalcoder
1st August 2007, 18:12
Maybe this is the issue:
The edyuk compilation reported no problem. However, when I try to compile 3rdparty/qcodeedit2, I get the following error:
I really don't think so... This error means (unless I missed something) that you are still using revision 229. The necessary defines (which prevents this error and thus allow compilation under Windows is present in 3rdparty/qcodeedit2/lib/lib.pri but not in lib.pro and until revision 231 lib.pro did not rely on lib.pri (which was quite stupid BTW...)
Just do a svn update, compile QCodeEdit 2 separately and run the example, e.g. :
$ example/example lib/qeditor.cpp
or
$ example/example qxs/xml.qnfa
or whatever file you fell like viewing...
Then , please send me a screen shot and any other relevant information so that I may be able to solve this weird display bug if it still occurs...
magland
1st August 2007, 18:32
Just do a svn update, compile QCodeEdit 2 separately and run the example, e.g. :
$ example/example lib/qeditor.cpp
or
$ example/example qxs/xml.qnfa
or whatever file you fell like viewing...
Then , please send me a screen shot and any other relevant information so that I may be able to solve this weird display bug if it still occurs...
Okay, qcodeedit2 now compiles and runs... and the panel does appear, with +/- boxes, etc. However, when I paste in a large amount of text, it hangs and then crashes.
Edyuk still does not load with the panel, and I've attached a screenshot.
fullmetalcoder
1st August 2007, 18:39
Okay, qcodeedit2 now compiles and runs... and the panel does appear, with +/- boxes, etc.
Edyuk still does not load with the panel, and I've attached a screenshot.
That sounds quite weird... I guess I'll have to investigate this... even though I don't quite know where to start... :(
However, when I paste in a large amount of text, it hangs and then crashes.
How large? Can you send it to me so that I can try reproducing this behavior? Any backtrace available? BTW as it seems we're talking more about QCodeEdit than Edyuk itself I'd suggest we move the discussion to the appropriate thread...
Pepe
1st August 2007, 22:15
I got the latest SVN and edyuk still crashes for me.
I managed to compile Qt 4.3 and edyuk in debug mode.
This is the backtrace:
C:\Documents and Settings\Pepe\My Documents\edyuk\edyuk\trunk>gdb edyuk_debu
g.exe
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i686-pc-mingw32"...
(gdb) run
Starting program: C:\Documents and Settings\Pepe\My Documents\edyuk\edyuk\tr
unk/edyuk_debug.exe
---Type <return> to continue, or q <return> to quit---
warning: rebuilding recent files/projects menu...
warning: cleaned previous data...
warning: filled with new data...
Program received signal SIGSEGV, Segmentation fault.
0x065e1e15 in QMap<QString, QString>::detach (this=0xc)
at c:/Qt/4.3.0/include/QtCore/../../src/corelib/tools/qmap.h:146
146 inline void detach() { if (d->ref != 1) detach_helper(); }
Current language: auto; currently c++
(gdb) bt
#0 0x065e1e15 in QMap<QString, QString>::detach (this=0xc)
at c:/Qt/4.3.0/include/QtCore/../../src/corelib/tools/qmap.h:146
#1 0x065e1de5 in QMap<QString, QString>::begin (this=0xc)
at c:/Qt/4.3.0/include/QtCore/../../src/corelib/tools/qmap.h:310
#2 0x064e8aaf in AssistantIndexModel::filter (this=0x0, s=@0x22ce3c,
real=@0x22ce4c) at assistant.cpp:98
#3 0x064ec477 in Assistant::setupIndex (this=0x9ae5228, lv=0x55a81c8)
at assistant.cpp:353
#4 0x064fbbae in CppQtPerspective::setProfile (this=0x55800c0, p=@0x22ceec)
at cppqtperspective.cpp:327
#5 0x064fbae1 in CppQtPerspective::setDefaultProfile (this=0x55800c0)
at cppqtperspective.cpp:315
#6 0x0651e2bf in CppQtPerspective::qt_metacall (this=0x55800c0,
_c=InvokeMetaMethod, _id=2, _a=0x22d434)
at ../tmp-default-4.3.0-win32/moc/moc_cppqtperspective.cpp:80
#7 0x00728e09 in QMetaObject::activate (sender=0xc7f2400,
from_signal_index=4, to_signal_index=4, argv=0x0)
at kernel/qobject.cpp:3066
#8 0x00729195 in QMetaObject::activate (sender=0xc7f2400, m=0x7e431c,
local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3125
#9 0x0072dd39 in QSingleShotTimer::timeout (this=0xc7f2400)
at tmp/moc/debug_shared/qtimer.moc:73
#10 0x0072dc3b in QSingleShotTimer::timerEvent (this=0xc7f2400)
---Type <return> to continue, or q <return> to quit---
at kernel/qtimer.cpp:283
#11 0x00723dbc in QObject::event (this=0xc7f2400, e=0x22da8c)
at kernel/qobject.cpp:1074
#12 0x0140635b in QApplicationPrivate::notify_helper (this=0x3da000,
receiver=0xc7f2400, e=0x22da8c) at kernel/qapplication.cpp:3538
#13 0x014043ae in QApplication::notify (this=0x22fdb0, receiver=0xc7f2400,
e=0x22da8c) at kernel/qapplication.cpp:3097
#14 0x0070fad4 in QCoreApplication::notifyInternal (this=0x22fdb0,
receiver=0xc7f2400, event=0x22da8c) at kernel/qcoreapplication.cpp:509
#15 0x00760cb3 in QCoreApplication::sendEvent (receiver=0xc7f2400,
event=0x22da8c)
at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:186
#16 0x0073a19c in qt_internal_proc (hwnd=0xc03fa, message=275, wp=98, lp=0)
at kernel/qeventdispatcher_win.cpp:298
#17 0x7e418734 in USER32!GetDC () from C:\WINDOWS\system32\user32.dll
#18 0x000c03fa in ?? ()
#19 0x00000113 in ?? ()
#20 0x00000062 in ?? ()
#21 0x00000000 in ?? () from
#22 0x00739d76 in qt_fast_timer_proc ()
at ../../include/QtCore/../../src/corelib/kernel/qobject.h:408
#23 0x7e418816 in USER32!GetDC () from C:\WINDOWS\system32\user32.dll
#24 0x00739d76 in qt_fast_timer_proc ()
---Type <return> to continue, or q <return> to quit---
at ../../include/QtCore/../../src/corelib/kernel/qobject.h:408
#25 0x7e4189cd in USER32!GetWindowLongW () from C:\WINDOWS\system32\user32.dll
#26 0x00000000 in ?? () from
#27 0x00739d76 in qt_fast_timer_proc ()
at ../../include/QtCore/../../src/corelib/kernel/qobject.h:408
#28 0x7e418a10 in USER32!DispatchMessageW ()
from C:\WINDOWS\system32\user32.dll
#29 0x0022dcd0 in ?? ()
#30 0x00000000 in ?? () from
#31 0x0022fa68 in ?? ()
#32 0x0073b858 in QEventDispatcherWin32::processEvents (this=0x22dcd0,
flags=0x22dcd0) at kernel/qeventdispatcher_win.cpp:517
#33 0x0073b858 in QEventDispatcherWin32::processEvents (this=0x3d9c88,
flags=0x22fa90) at kernel/qeventdispatcher_win.cpp:517
#34 0x01463a36 in QGuiEventDispatcherWin32::processEvents (this=0x3d9c88,
flags=@0x22fad0) at kernel/qapplication_win.cpp:965
#35 0x0070d34c in QEventLoop::processEvents (this=0x22fc30, flags=0x22fb70)
at kernel/qeventloop.cpp:126
#36 0x0070d48a in QEventLoop::exec (this=0x22fc30, flags=0x22fc10)
at kernel/qeventloop.cpp:172
#37 0x0070ffd6 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:729
#38 0x014040b4 in QApplication::exec () at kernel/qapplication.cpp:3035
#39 0x100ba574 in EdyukApplication::exec (this=0x22fdb0)
---Type <return> to continue, or q <return> to quit---
at edyukapplication.cpp:420
#40 0x0040159d in qMain (argc=1, argv=0x3d9e30) at main.cpp:80
#41 0x00401c0f in WinMain (instance=0x400000, prevInstance=0x0, cmdShow=10)
at qtmain_win.cpp:105
#42 0x0040179a in main ()
at c:/Qt/4.3.0/include/QtCore/../../src/corelib/arch/qatomic_windows.h:204
(gdb)
fullmetalcoder
2nd August 2007, 09:45
I got the latest SVN and edyuk still crashes for me.
I managed to compile Qt 4.3 and edyuk in debug mode.
This is the backtrace:
Thanks for your help! The bug obviously occurs in the Assistant integration. What I can infer is that you've run assistant already, thus making it fill a content database but you've never switched to the "Index" tab of the dock widget so the index database was not populated. Hopefully the fix is a one-liner and will be committed in the next few minutes, at last... :)
@magland : I've tried copying a very large amount of C++ code into a QCodeEdit widget (about 36k lines by blocks of 2k...) and I got no crash...
elcuco
2nd August 2007, 10:21
I do not undertand how can you call some application 1.0-beta2 when it does not compile for some, and for others it compiles and crashes on statup. People cannot even measure the quality of the application - it does not work at all for them.
Please don't tell me "its only a few people". Version 1.0 means it's ready to mass consumption, and your application is clearly not in that state.
fullmetalcoder
2nd August 2007, 11:08
I do not undertand how can you call some application 1.0-beta2 when it does not compile for some, and for others it compiles and crashes on statup. People cannot even measure the quality of the application - it does not work at all for them.
Please don't tell me "its only a few people". Version 1.0 means it's ready to mass consumption, and your application is clearly not in that state.
Versioning conventions are not "standard" ... Anyway, the beta here should notify everyone that the code still requires a bunch of testing... Also I'd like to point out that Edyuk now compiles on every platform... It just required some testing that I was unable to do alone. And crashes are solved as well. Maybe you can provide me with a proper computer with Windows installed so that such a thing never happen again? :rolleyes:
BTW elcuco, I'd be pleased if you could go rant somewhere else... I welcome bug reports, suggestions, criticism, etc... because they prove useful to improve Edyuk. A comment such as the one above doesn't sound that useful to me...
Pepe
2nd August 2007, 13:09
Thanks for your help! The bug obviously occurs in the Assistant integration. What I can infer is that you've run assistant already, thus making it fill a content database but you've never switched to the "Index" tab of the dock widget so the index database was not populated. Hopefully the fix is a one-liner and will be committed in the next few minutes, at last... :)
I've compiled SVN and yes, now it works, no crashes :)
I've just took a quick look at it but I've got some questions:
When I open a project, the open dialog shows all files, wouldn't it be better to set a filter to "*.pro"?
Why don't you use the windows native open dialog?
When I double click on a function member in the class browser, the file where it is doesn't open. I don't know if it's a bug or if it's the intended behavior.
The code completion seems that doesn't work. For example I type QLabel l. and nothing happens. I'm testing also HiQt and it shows a list of members when I do this.
fullmetalcoder
2nd August 2007, 17:11
I've compiled SVN and yes, now it works, no crashes :)
Good to hear! I've just released a third beta package.
When I open a project, the open dialog shows all files, wouldn't it be better to set a filter to "*.pro"?
It would but the plugin architecture require a little more than just adding a single line of code and unfortunately I won't be able to work on Edyuk in the next two weeks so you'll have to wait a bit ...
Why don't you use the windows native open dialog?
I do use QFileDialog so I'm not responsible for the behavior... the thing is that I wanted to keep track of path used by the user and the static functions (which do call native dialogs) did not allowed that...
When I double click on a function member in the class browser, the file where it is doesn't open. I don't know if it's a bug or if it's the intended behavior.
Previous version of Edyuk had this feature (though not as complete as one would have wished) but the complete rewrite of completion backend wiped it out. It will of course make it into 1.0.0 final release and probably even earlier, in a pre-release. Yet, it is currently not a "bug" but rather a missing feature...
The code completion seems that doesn't work. For example I type QLabel l. and nothing happens. I'm testing also HiQt and it shows a list of members when I do this.
The code completion do work but what you suggest is an invalid construct... You must have a variable declared before accessing it :
QLabel l; l. should work, however I can't be sure that it will since I haven't been able to test the nasty hack requested to complete Qt types under Windows...
elcuco
2nd August 2007, 19:19
I have tested the application, and this is what I found:
it takes a lot of time to compile (7m49.694s), while Qdevelop for example takes 4m33.836s and HiQt-0.1.14 takes 5m45.433s.
The implementation of the class browser is non intuitive. For example, it took me a while to find it. Then, I found that it does not interact with the user, for example clicking a class will not open the implementation (or definition).
The project handling is also badly implemented. I have this sub dir project (which BTW get loaded perfectly) and I select one of the sub projects. Then I choose project options, and I get the configuration dialog for he top level project, not the active one. Right clicking it does work as expected. The command "run" on that sub-project did not work. I get no indication about whats wrong. Just does not work.
The editor has a lot of usability problems as well. For example, I could not set the tab width to 8. I could not change the font size (I want it much smaller). The find widget just does not work (ctrl+f, type something it writes to the editor, ctrl+f again its not closed, esc, not closed). The replace widget does not work at all (the second line edit is disabled).
I am also very confused by your implementation of the prespectives. I don't understand why do I get the prespective of the designer is open when I edit c/c++ code, or why do I see the class list when I am editing GUI.
Lets assume I have this project opened, and I have several files opened. What happens if I am in the designer perspective...? I see no visual indication about the change. Not only the class/file browser is not see (and I cannot see the files of the new project), but the files are still opened, and it feels like I am still working with the old project. That is, until I move to the editor perspective, and see that the files have changed. Now I have to close all the opened files.
....
I will not continue on, even tough I can (adding files to projects is a mess, open/save dialog do not save the path, the help integration is not finished yet, no default shortcuts for most used actions, debug log does not scroll,breakpoitns in code are not working for me, etc). What I am saying is:
The issue is: the application has too much problems and design flaws (which can be easily fixed) to be called version 1.0. It does not feel like a product, it needs much more work. That is, if you do want to follow CodeBlock's path : always on beta, never release (use our latest nightly build!).
If you think I am just trashing you, you are completely wrong. I do know how much you have been working on this application. I do know how hard is to make what you did (specially since part of my code is in that application :p ).
I am just saying: "this is not version 1.0".
fullmetalcoder
2nd August 2007, 20:24
it takes a lot of time to compile (7m49.694s), while Qdevelop for example takes 4m33.836s and HiQt-0.1.14 takes 5m45.433s.
Overhead of plugin-based architecture... It's a bit longer to compile but allow much more flexibility...
The implementation of the class browser is non intuitive. For example, it took me a while to find it. Then, I found that it does not interact with the user, for example clicking a class will not open the implementation (or definition).
That's right, the combobox is probably not the best way separate project management and class browsing and I shall fix that soon (when I'm back from holidays that start tomorrow...) and the code navigation will come at the same time...
[/quote] The project handling is also badly implemented. I have this sub dir project (which BTW get loaded perfectly) and I select one of the sub projects. Then I choose project options, and I get the configuration dialog for he top level project, not the active one.[/quote]
That's a pretty good suggestion. :)
The command "run" on that sub-project did not work. I get no indication about whats wrong. Just does not work.
Can you send me the project used? BTW if it is Edyuk project then it's normal because instance limitation is enabled by default to allow file association...
The editor has a lot of usability problems as well. For example, I could not set the tab width to 8. I could not change the font size (I want it much smaller). The find widget just does not work (ctrl+f, type something it writes to the editor, ctrl+f again its not closed, esc, not closed). The replace widget does not work at all (the second line edit is disabled).
You can easily change the font size using CTRL + wheel, as for the tabs there is no config dialog yet (beta...) but you can always change the hard-coded default (3rdparty/qcodeedit2/document/qdocument.cpp, look for QDocumentPrivate ctor)...
I am also very confused by your implementation of the prespectives. I don't understand why do I get the prespective of the designer is open when I edit c/c++ code, or why do I see the class list when I am editing GUI.
:confused: Do you mean that there is no perspective auto-switch when you edit switch to a C++ file? Well, that's an issue I'm thinking about... As for the class list being visible in Designer perspective YOU asked me to allow the project management dock to be visible in this perspective and the implementation currently doesn't allow separating project management and class browsing... You can always hide that dock using the buttons on the status bar...
Lets assume I have this project opened, and I have several files opened. What happens if I am in the designer perspective...? I see no visual indication about the change. Not only the class/file browser is not see (and I cannot see the files of the new project), but the files are still opened, and it feels like I am still working with the old project. That is, until I move to the editor perspective, and see that the files have changed. Now I have to close all the opened files.
May you make yourself a little clearer?
adding files to projects is a mess
Any suggestion on how to improve this?
the help integration is not finished yet
Talking about the Assistant? What else do you want?
no default shortcuts for most used actions
Which actions do lack shortcuts in your opinion?
breakpoitns in code are not working for me
i.e. ? you can't set breakpoints or debugging does not take them into account?
The issue is: the application has too much problems and design flaws (which can be easily fixed) to be called version 1.0.
If there are other flaws you spotted and did not mention please do. And if you consider them as easy to fix please share your ideas.
I do know how much you have been working on this application. I do know how hard is to make what you did (specially since part of my code is in that application :p ).
I'm not sure you do... Probably more than many people here but still... I'm still a student with little room for programming, stuck on a very old computer with only one system to lead tests... You can't even imagine how depressing it is to get miscompilation/crash reports every time you release a new version that ran flawlessly on your computer... I've spent hours doing little bug fixes and it's not enough to make Edyuk look "polished" yet...:crying:
I am just saying: "this is not version 1.0".
It's surely not 1.0 yet! It's 1.0 beta... It'll take at least a couple weeks (not including holidays and such) before I come to a pre-release and a couple more before it becomes a final version. The bad thing is that this couple week will very probably span over monthes because school will start way too soon and that year is gonna be AWFULLY busy...
elcuco
2nd August 2007, 21:13
Sit down and code a small application. A pure Qt one, without the fancy-shmancy stuff we always see. Use your IDE as a test, and think - how can I make it better. Don't think as the application developer - think as a user. Don't look at the code. Write down problems on a paper and then deal with them.
You will see that