Re: [Qt-creator] Qt Creator for Linux Kernel Development

2016-11-30 Thread Orgad Shaneh
On Tue, Nov 29, 2016 at 10:55 AM, Nikolai Kosjar  wrote:
> On 11/28/2016 07:03 PM, Jason A. Donenfeld wrote:
>>
>> On Wed, Nov 23, 2016 at 8:45 AM, Konstantin Tokarev 
>> wrote:
>>>
>>> You can set PRECOMPILED_HEADER = header.h in your pro file. It should be
>>> applied to all sources.
>>
>>
>> Nope, that's certainly not what that field does.
>
>
> Should work with the Clang Code Model, Qt Creator from the current 4.2
> branch.
>
> The corresponding report was
> https://bugreports.qt.io/browse/QTCREATORBUG-15590.

It should also work with the built-in code model. Not sure why Jason
claimed it doesn't. Did you try it?

- Orgad
___
WireGuard mailing list
WireGuard@lists.zx2c4.com
https://lists.zx2c4.com/mailman/listinfo/wireguard


Re: [Qt-creator] Qt Creator for Linux Kernel Development

2016-11-30 Thread Nikolai Kosjar

On 11/29/2016 08:23 PM, Jason A. Donenfeld wrote:

Hi Nikolai,

On Tue, Nov 29, 2016 at 9:55 AM, Nikolai Kosjar  wrote:

Should work with the Clang Code Model, Qt Creator from the current 4.2
branch.

The corresponding report was
https://bugreports.qt.io/browse/QTCREATORBUG-15590.



Okay, in that case, I'll wait until 4.2 for it. One question:
PRECOMPILED_HEADER -- will this take a list, or only a single value?


Providing a list, the code model gets a list :)

Nikolai

___
WireGuard mailing list
WireGuard@lists.zx2c4.com
https://lists.zx2c4.com/mailman/listinfo/wireguard


Re: [Qt-creator] Qt Creator for Linux Kernel Development

2016-11-29 Thread Jason A. Donenfeld
Hi Nikolai,

On Tue, Nov 29, 2016 at 9:55 AM, Nikolai Kosjar  wrote:
> Should work with the Clang Code Model, Qt Creator from the current 4.2
> branch.
>
> The corresponding report was
> https://bugreports.qt.io/browse/QTCREATORBUG-15590.


Okay, in that case, I'll wait until 4.2 for it. One question:
PRECOMPILED_HEADER -- will this take a list, or only a single value?

By the way, I figured out an alternative workaround in the meantime. I
add to "clang code model warnings" box the string "-include
/path/to/header.h".

Jason
___
WireGuard mailing list
WireGuard@lists.zx2c4.com
https://lists.zx2c4.com/mailman/listinfo/wireguard


Re: [Qt-creator] Qt Creator for Linux Kernel Development

2016-11-29 Thread Jason A. Donenfeld
Hi Marco,

I'll start compiling a list for you, so that I can give you something
more useful than my last message. For starters, here's one bug found
within seconds:

1. Open a file in the project. All seems fine.
2. Ctrl click on a function that points to somewhere in the Linux
kernel headers.
3. Close that file. Now there are all sorts of non-nonsensical clang
errors in the original file.

Here's a video to demonstrate:
https://data.zx2c4.com/qt-creator-clang-model-bug-ff94c572-d8ff-4c54-a5ac-3aa6485251a9.mp4

Jason
___
WireGuard mailing list
WireGuard@lists.zx2c4.com
https://lists.zx2c4.com/mailman/listinfo/wireguard


Re: [Qt-creator] Qt Creator for Linux Kernel Development

2016-11-29 Thread Nikolai Kosjar

On 11/23/2016 08:45 AM, Konstantin Tokarev wrote:

23.11.2016, 08:51, "Jason A. Donenfeld" :

Hello Eike & Qt Creator mailing list,

I'm insane and decided to try using an IDE for Linux kernel
development. Much to my delight, it actually works well. (Everybody on
the mailing list to which this message is cross-posted just vomited a
little bit in their mouth and swallowed, but fear not: I'm a competent
VIM user too. It's just that sometimes clickity clicking around Qt
Creator is buttery nice. Here's a screenshot [2].)

I'm working on a small kernel module [1], and for it I made a very
minimal .pro file to import its files into Qt Creator. I even hooked
the build/run commands up to my qemu testing rig. Seems to work pretty
well. Here's the .pro I use:

CONFIG -= qt
INCLUDEPATH = /usr/src/linux/arch/x86/include
/usr/src/linux/arch/x86/include/generated/uapi /usr/src/linux/
arch/x86/include/generated /usr/src/linux/include
/usr/src/linux/arch/x86/include/uapi /usr/src/linux/arch/x
86/include/generated/uapi /usr/src/linux/include/uapi
/usr/src/linux/include/generated/uapi
DEFINES = __KERNEL__ DEBUG MODULE
SOURCES = $$system(find -L . -type f -iname $$system_quote(*.c) -and
-not -path $$system_quote(./tests/*)) $
$system(find -L . -type f -iname $$system_quote(*.S) -and -not -path
$$system_quote(./tests/*))
HEADERS = $$system(find -L . -type f -iname $$system_quote(*.h) -and
-not -path $$system_quote(./tests/*))

As you can see, it's a real hack.

I also do development on the main Linux kernel tree, and similarly for
that, I have a .pro file that works well:

CONFIG -= qt
INCLUDEPATH = $$system(find -L include/ -type d)
SOURCES = $$system(find -L . -type f -iname \'*.c\')
HEADERS = $$system(find -L . -type f -iname \'*.h\')
INCLUDEPATH = include/ arch/x86/include

Download the linux sources, put that in the tree, and load it up in Qt
Creator. It works. Amazing!

But don't get too excited. Unfortunately, there are two issues that
make things unbearable:

(A) Qt Creator doesn't seem to parse the C correctly. Things like
designated initializers and a few other C features here and there just
don't get parsed correctly, and the IDE stops being useful. I suspect
this is because things are actually being parsed in C++ mode. Bummer.
Developers: any interest in improving C support in Qt Creator?

(B) There is no way to tell Qt Creator that a particular header file
is included in every file -- that is, that gcc's "-include" is in use.
There is a way of messing with the "C++ Code Model" on a file-by-file
basis, for the duration of the time that the file is open, but no way
to automatically have it included in every file of the project. This
is a major hindrance. It means that every ifdef for every kconfig
option is a grayed out unclickable region, rendering most things
useless.


BTW, I'm facing similar issue with QtWebKit: config.h is included into all
source files, but never in headers, so all #if's in headers are disabled
and code model does not function properly.


Could you provide a report for this with a minimal example?

Nikolai

___
WireGuard mailing list
WireGuard@lists.zx2c4.com
https://lists.zx2c4.com/mailman/listinfo/wireguard


Re: [Qt-creator] Qt Creator for Linux Kernel Development

2016-11-29 Thread Nikolai Kosjar

On 11/28/2016 07:03 PM, Jason A. Donenfeld wrote:

On Wed, Nov 23, 2016 at 8:45 AM, Konstantin Tokarev  wrote:

You can set PRECOMPILED_HEADER = header.h in your pro file. It should be
applied to all sources.


Nope, that's certainly not what that field does.


Should work with the Clang Code Model, Qt Creator from the current 4.2 
branch.


The corresponding report was 
https://bugreports.qt.io/browse/QTCREATORBUG-15590.


Nikolai

___
WireGuard mailing list
WireGuard@lists.zx2c4.com
https://lists.zx2c4.com/mailman/listinfo/wireguard


Re: [Qt-creator] Qt Creator for Linux Kernel Development

2016-11-28 Thread André Pönitz
On Mon, Nov 28, 2016 at 07:03:39PM +0100, Jason A. Donenfeld wrote:
> Hello All,
> 
> Responses to each of you are inline below.
> 
> Sounds to me like there's a lot of work to be done, still, and I
> haven't received any enthusiastic responses from the Qt team of, "yes!
> we'd love to work on this and make Qt Creator suitable for kernel
> development!"

I didn't know the Qt Creator team was supposed to be in the cheer-leading
business. 

Andre'
___
WireGuard mailing list
WireGuard@lists.zx2c4.com
https://lists.zx2c4.com/mailman/listinfo/wireguard


Re: [Qt-creator] Qt Creator for Linux Kernel Development

2016-11-28 Thread Marco Bubke


On November 28, 2016 19:03:57 "Jason A. Donenfeld"  wrote:

> Hello All,
>
> Responses to each of you are inline below.
>
> Sounds to me like there's a lot of work to be done, still, and I
> haven't received any enthusiastic responses from the Qt team of, "yes!
> we'd love to work on this and make Qt Creator suitable for kernel
> development!" Bummer. Seems like a great opportunity to increase the
> tool's user appeal.
>
> On Wed, Nov 23, 2016 at 8:45 AM, Konstantin Tokarev  wrote:
>> BTW, I'm facing similar issue with QtWebKit: config.h is included into all
>> source files, but never in headers, so all #if's in headers are disabled
>> and code model does not function properly.
>
> Yep, this is pretty much entirely broken. It's not implemented in the
> Qt C++ model, and it straight up does not work in the clang mode
> model. The lack of good support for this feature -- project wide
> -include file -- is pretty limiting.
>
> On Wed, Nov 23, 2016 at 8:58 AM, Orgad Shaneh  wrote:
>> Which version do you use? Designated initializers support was added in 3.2
>> (c56b999249d4cb7dc7e8026a3297b63ff56d).
>>
>> I now see that the members are not detected correctly (for e.g. Find
>> Usages), but parsing looks ok.
>
> I'm using 4.1. No, it still does not work. Here's a screenshot:
> https://data.zx2c4.com/designated-init-broken-qt-creator-49b6f51f.png
>
>> You can set PRECOMPILED_HEADER = header.h in your pro file. It should be
>> applied to all sources.
>
> Nope, that's certainly not what that field does.
>
> On Wed, Nov 23, 2016 at 10:21 AM, Eike Ziller  wrote:
>> Are you using the ClangCodeModel plugin? If not, you probably should.
>> It does not help for things like find usages and locator, since for this we 
>> still use the built-in model,
>> and fixes for the built-in model will be very limited.
>> But for working with the individual _source_ file it should at least help.
>> I can even open Objective-C++ files and get decent highlighting and even
>> get some completion for Objective-C ;)
>
> The clang mode model is even more buggy than the built-in one. Not
> only that, but it's an order of magnitude slower too, which makes Qt
> Creator impossible to use. The only viable usage of the IDE is through
> the built-in code model. Hopefully the Qt engineers will put in the
> time to bring it up to par with modern times with -include, and add
> explicit C support...

What is exactly buggy? The code model can handle C but we need that information 
from the project management. QMake isn't differentiating between C and C++ 
headers,  so we simply don't get that information. Like other have written 
there could be workarounds. Anyway it would be interesting what is your 
environment that makes the clang code model so slow. It's quite fine for me. 
There is the header guard bug which is vanishing with #pragma once. What are 
actually your problems? 

>
>> One other issue are header files - there is no way Qt Creator can 
>> automatically tell if a
>> .h file is supposed to be C, C++, Objective-C, Objective-C++, 
>> One hack workaround for C might be to remove *.h from the text/x-c++hdr mime 
>> type in Options > Environment > Mime Types,
>> but that would be a big and global hack (if it worked) ;)
>> We could probably provide a project setting for a “default” language to use 
>> though, which would then also be sharable with all in the project sources 
>> with a .shared file.
>
> A project-wide setting would indeed be most welcome for this.
>
>
> On Wed, Nov 23, 2016 at 5:15 PM, Andrzej Telszewski
>  wrote:
>> I don't remember exactly, but I used some other feature of QtC (Import
>> Project was it?).
>> It allowed to easily setup QtC for kernel development.
>> It worked pretty well, most of the time.
>> Just a quick search:
>> http://stackoverflow.com/questions/5417732/howto-prepare-qtcreator-for-linux-driver-kernel-development
>
> The solution listed here is basically wrong and doesn't work. The code
> model won't actually parse that #include properly.
>
>>
>> I too remember seeing false errors when code model parsed struct members
>> initializers.
>>
>> But this code seems to work just fine now:
>
> Try something slightly more complicated and it totally blows up again.
> See the linked screenshot above.
>
>> And yes, although I'm not going to be involved in enhancing QtC, I would
>> love to see C receiving decent support.
>> QtC is my main (well, the only) IDE, and I write both C and C++ code.
>
> If only the Qt developers cared about this too. Missed opportunity IMHO.
>
> Jason
> ___
> Qt-creator mailing list
> qt-crea...@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/qt-creator
___
WireGuard mailing list
WireGuard@lists.zx2c4.com
https://lists.zx2c4.com/mailman/listinfo/wireguard


Re: [Qt-creator] Qt Creator for Linux Kernel Development

2016-11-28 Thread Jason A. Donenfeld
Hello All,

Responses to each of you are inline below.

Sounds to me like there's a lot of work to be done, still, and I
haven't received any enthusiastic responses from the Qt team of, "yes!
we'd love to work on this and make Qt Creator suitable for kernel
development!" Bummer. Seems like a great opportunity to increase the
tool's user appeal.

On Wed, Nov 23, 2016 at 8:45 AM, Konstantin Tokarev  wrote:
> BTW, I'm facing similar issue with QtWebKit: config.h is included into all
> source files, but never in headers, so all #if's in headers are disabled
> and code model does not function properly.

Yep, this is pretty much entirely broken. It's not implemented in the
Qt C++ model, and it straight up does not work in the clang mode
model. The lack of good support for this feature -- project wide
-include file -- is pretty limiting.

On Wed, Nov 23, 2016 at 8:58 AM, Orgad Shaneh  wrote:
> Which version do you use? Designated initializers support was added in 3.2
> (c56b999249d4cb7dc7e8026a3297b63ff56d).
>
> I now see that the members are not detected correctly (for e.g. Find
> Usages), but parsing looks ok.

I'm using 4.1. No, it still does not work. Here's a screenshot:
https://data.zx2c4.com/designated-init-broken-qt-creator-49b6f51f.png

> You can set PRECOMPILED_HEADER = header.h in your pro file. It should be
> applied to all sources.

Nope, that's certainly not what that field does.

On Wed, Nov 23, 2016 at 10:21 AM, Eike Ziller  wrote:
> Are you using the ClangCodeModel plugin? If not, you probably should.
> It does not help for things like find usages and locator, since for this we 
> still use the built-in model,
> and fixes for the built-in model will be very limited.
> But for working with the individual _source_ file it should at least help.
> I can even open Objective-C++ files and get decent highlighting and even
> get some completion for Objective-C ;)

The clang mode model is even more buggy than the built-in one. Not
only that, but it's an order of magnitude slower too, which makes Qt
Creator impossible to use. The only viable usage of the IDE is through
the built-in code model. Hopefully the Qt engineers will put in the
time to bring it up to par with modern times with -include, and add
explicit C support...

> One other issue are header files - there is no way Qt Creator can 
> automatically tell if a
> .h file is supposed to be C, C++, Objective-C, Objective-C++, 
> One hack workaround for C might be to remove *.h from the text/x-c++hdr mime 
> type in Options > Environment > Mime Types,
> but that would be a big and global hack (if it worked) ;)
> We could probably provide a project setting for a “default” language to use 
> though, which would then also be sharable with all in the project sources 
> with a .shared file.

A project-wide setting would indeed be most welcome for this.


On Wed, Nov 23, 2016 at 5:15 PM, Andrzej Telszewski
 wrote:
> I don't remember exactly, but I used some other feature of QtC (Import
> Project was it?).
> It allowed to easily setup QtC for kernel development.
> It worked pretty well, most of the time.
> Just a quick search:
> http://stackoverflow.com/questions/5417732/howto-prepare-qtcreator-for-linux-driver-kernel-development

The solution listed here is basically wrong and doesn't work. The code
model won't actually parse that #include properly.

>
> I too remember seeing false errors when code model parsed struct members
> initializers.
>
> But this code seems to work just fine now:

Try something slightly more complicated and it totally blows up again.
See the linked screenshot above.

> And yes, although I'm not going to be involved in enhancing QtC, I would
> love to see C receiving decent support.
> QtC is my main (well, the only) IDE, and I write both C and C++ code.

If only the Qt developers cared about this too. Missed opportunity IMHO.

Jason
___
WireGuard mailing list
WireGuard@lists.zx2c4.com
https://lists.zx2c4.com/mailman/listinfo/wireguard


Re: [Qt-creator] Qt Creator for Linux Kernel Development

2016-11-23 Thread Eike Ziller

> On Nov 23, 2016, at 6:51 AM, Jason A. Donenfeld  wrote:
> 
> Hello Eike & Qt Creator mailing list,
> 
> I'm insane and decided to try using an IDE for Linux kernel
> development. Much to my delight, it actually works well. (Everybody on
> the mailing list to which this message is cross-posted just vomited a
> little bit in their mouth and swallowed, but fear not: I'm a competent
> VIM user too. It's just that sometimes clickity clicking around Qt
> Creator is buttery nice. Here's a screenshot [2].)
> 
> I'm working on a small kernel module [1], and for it I made a very
> minimal .pro file to import its files into Qt Creator. I even hooked
> the build/run commands up to my qemu testing rig. Seems to work pretty
> well. Here's the .pro I use:
> 
> CONFIG -= qt
> INCLUDEPATH = /usr/src/linux/arch/x86/include
> /usr/src/linux/arch/x86/include/generated/uapi /usr/src/linux/
> arch/x86/include/generated /usr/src/linux/include
> /usr/src/linux/arch/x86/include/uapi /usr/src/linux/arch/x
> 86/include/generated/uapi /usr/src/linux/include/uapi
> /usr/src/linux/include/generated/uapi
> DEFINES = __KERNEL__ DEBUG MODULE
> SOURCES = $$system(find -L . -type f -iname $$system_quote(*.c) -and
> -not -path $$system_quote(./tests/*)) $
> $system(find -L . -type f -iname $$system_quote(*.S) -and -not -path
> $$system_quote(./tests/*))
> HEADERS = $$system(find -L . -type f -iname $$system_quote(*.h) -and
> -not -path $$system_quote(./tests/*))
> 
> As you can see, it's a real hack.
> 
> I also do development on the main Linux kernel tree, and similarly for
> that, I have a .pro file that works well:
> 
> CONFIG -= qt
> INCLUDEPATH = $$system(find -L include/ -type d)
> SOURCES = $$system(find -L . -type f -iname \'*.c\')
> HEADERS = $$system(find -L . -type f -iname \'*.h\')
> INCLUDEPATH = include/ arch/x86/include
> 
> Download the linux sources, put that in the tree, and load it up in Qt
> Creator. It works. Amazing!
> 
> But don't get too excited. Unfortunately, there are two issues that
> make things unbearable:
> 
> (A) Qt Creator doesn't seem to parse the C correctly. Things like
> designated initializers and a few other C features here and there just
> don't get parsed correctly, and the IDE stops being useful. I suspect
> this is because things are actually being parsed in C++ mode. Bummer.
> Developers: any interest in improving C support in Qt Creator?

Are you using the ClangCodeModel plugin? If not, you probably should.
It does not help for things like find usages and locator, since for this we 
still use the built-in model,
and fixes for the built-in model will be very limited.
But for working with the individual _source_ file it should at least help.
I can even open Objective-C++ files and get decent highlighting and even
get some completion for Objective-C ;)

One other issue are header files - there is no way Qt Creator can automatically 
tell if a 
.h file is supposed to be C, C++, Objective-C, Objective-C++, 
One hack workaround for C might be to remove *.h from the text/x-c++hdr mime 
type in Options > Environment > Mime Types,
but that would be a big and global hack (if it worked) ;)
We could probably provide a project setting for a “default” language to use 
though, which would then also be sharable with all in the project sources with 
a .shared file.

Br, Eike

> (B) There is no way to tell Qt Creator that a particular header file
> is included in every file -- that is, that gcc's "-include" is in use.
> There is a way of messing with the "C++ Code Model" on a file-by-file
> basis, for the duration of the time that the file is open, but no way
> to automatically have it included in every file of the project. This
> is a major hindrance. It means that every ifdef for every kconfig
> option is a grayed out unclickable region, rendering most things
> useless. Developers: any interest in fixing this? I spoke to a few of
> you in IRC several months ago about this, and there was interest, but
> it seems to have evaporated.
> 
> So, anyway, if you think it would be cool to be able to say, "Qt
> Creator is used for Linux Kernel Development!", then maybe we can work
> together to actually get things working properly. It's already 85%
> there, and the remaining chunk seems well within reach.
> 
> Not only that, but if Qt Creator becomes generally usable for ordinary
> C projects, it would most likely become a regular tool during my
> professional activities, namely, auditing large code bases for
> vulnerabilities and improving the security of systems.
> 
> Let me know if you are interested in assisting with this.
> 
> Thanks,
> Jason
> 
> 
> 
> [1] https://www.wireguard.io/
> [2] https://data.zx2c4.com/qt-creator-wireguard-development.png
> ___
> Qt-creator mailing list
> qt-crea...@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/qt-creator

-- 
Eike Ziller
Principal Software Engineer

The Qt Company GmbH
Rudower Chaussee 13
D-12489 Berlin
eike.

Re: [Qt-creator] Qt Creator for Linux Kernel Development

2016-11-22 Thread Orgad Shaneh
On Wed, Nov 23, 2016 at 7:51 AM, Jason A. Donenfeld  wrote:

> (A) Qt Creator doesn't seem to parse the C correctly. Things like
> designated initializers and a few other C features here and there just
> don't get parsed correctly, and the IDE stops being useful. I suspect
> this is because things are actually being parsed in C++ mode. Bummer.
> Developers: any interest in improving C support in Qt Creator?
>

Which version do you use? Designated initializers support was added in 3.2 (
c56b999249d4cb7dc7e8026a3297b63ff56d).

I now see that the members are not detected correctly (for e.g. Find
Usages), but parsing looks ok.

(B) There is no way to tell Qt Creator that a particular header file
> is included in every file -- that is, that gcc's "-include" is in use.
> There is a way of messing with the "C++ Code Model" on a file-by-file
> basis, for the duration of the time that the file is open, but no way
> to automatically have it included in every file of the project. This
> is a major hindrance. It means that every ifdef for every kconfig
> option is a grayed out unclickable region, rendering most things
> useless. Developers: any interest in fixing this? I spoke to a few of
> you in IRC several months ago about this, and there was interest, but
> it seems to have evaporated.
>

You can set PRECOMPILED_HEADER = header.h in your pro file. It should be
applied to all sources.

- Orgad
___
WireGuard mailing list
WireGuard@lists.zx2c4.com
http://lists.zx2c4.com/mailman/listinfo/wireguard


Re: [Qt-creator] Qt Creator for Linux Kernel Development

2016-11-22 Thread Konstantin Tokarev


23.11.2016, 08:51, "Jason A. Donenfeld" :
> Hello Eike & Qt Creator mailing list,
>
> I'm insane and decided to try using an IDE for Linux kernel
> development. Much to my delight, it actually works well. (Everybody on
> the mailing list to which this message is cross-posted just vomited a
> little bit in their mouth and swallowed, but fear not: I'm a competent
> VIM user too. It's just that sometimes clickity clicking around Qt
> Creator is buttery nice. Here's a screenshot [2].)
>
> I'm working on a small kernel module [1], and for it I made a very
> minimal .pro file to import its files into Qt Creator. I even hooked
> the build/run commands up to my qemu testing rig. Seems to work pretty
> well. Here's the .pro I use:
>
> CONFIG -= qt
> INCLUDEPATH = /usr/src/linux/arch/x86/include
> /usr/src/linux/arch/x86/include/generated/uapi /usr/src/linux/
> arch/x86/include/generated /usr/src/linux/include
> /usr/src/linux/arch/x86/include/uapi /usr/src/linux/arch/x
> 86/include/generated/uapi /usr/src/linux/include/uapi
> /usr/src/linux/include/generated/uapi
> DEFINES = __KERNEL__ DEBUG MODULE
> SOURCES = $$system(find -L . -type f -iname $$system_quote(*.c) -and
> -not -path $$system_quote(./tests/*)) $
> $system(find -L . -type f -iname $$system_quote(*.S) -and -not -path
> $$system_quote(./tests/*))
> HEADERS = $$system(find -L . -type f -iname $$system_quote(*.h) -and
> -not -path $$system_quote(./tests/*))
>
> As you can see, it's a real hack.
>
> I also do development on the main Linux kernel tree, and similarly for
> that, I have a .pro file that works well:
>
> CONFIG -= qt
> INCLUDEPATH = $$system(find -L include/ -type d)
> SOURCES = $$system(find -L . -type f -iname \'*.c\')
> HEADERS = $$system(find -L . -type f -iname \'*.h\')
> INCLUDEPATH = include/ arch/x86/include
>
> Download the linux sources, put that in the tree, and load it up in Qt
> Creator. It works. Amazing!
>
> But don't get too excited. Unfortunately, there are two issues that
> make things unbearable:
>
> (A) Qt Creator doesn't seem to parse the C correctly. Things like
> designated initializers and a few other C features here and there just
> don't get parsed correctly, and the IDE stops being useful. I suspect
> this is because things are actually being parsed in C++ mode. Bummer.
> Developers: any interest in improving C support in Qt Creator?
>
> (B) There is no way to tell Qt Creator that a particular header file
> is included in every file -- that is, that gcc's "-include" is in use.
> There is a way of messing with the "C++ Code Model" on a file-by-file
> basis, for the duration of the time that the file is open, but no way
> to automatically have it included in every file of the project. This
> is a major hindrance. It means that every ifdef for every kconfig
> option is a grayed out unclickable region, rendering most things
> useless.

BTW, I'm facing similar issue with QtWebKit: config.h is included into all
source files, but never in headers, so all #if's in headers are disabled
and code model does not function properly.


> Developers: any interest in fixing this? I spoke to a few of
> you in IRC several months ago about this, and there was interest, but
> it seems to have evaporated.
>
> So, anyway, if you think it would be cool to be able to say, "Qt
> Creator is used for Linux Kernel Development!", then maybe we can work
> together to actually get things working properly. It's already 85%
> there, and the remaining chunk seems well within reach.
>
> Not only that, but if Qt Creator becomes generally usable for ordinary
> C projects, it would most likely become a regular tool during my
> professional activities, namely, auditing large code bases for
> vulnerabilities and improving the security of systems.
>
> Let me know if you are interested in assisting with this.
>
> Thanks,
> Jason
>
> [1] https://www.wireguard.io/
> [2] https://data.zx2c4.com/qt-creator-wireguard-development.png
> ___
> Qt-creator mailing list
> qt-crea...@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/qt-creator

-- 
Regards,
Konstantin
___
WireGuard mailing list
WireGuard@lists.zx2c4.com
http://lists.zx2c4.com/mailman/listinfo/wireguard