Re: Development with Eclipse - Wrong error messages in IDE

From: Peter Moser <pitiz29a(at)gmail(dot)com>
To: Jason Petersen <jason(at)citusdata(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Development with Eclipse - Wrong error messages in IDE
Date: 2016-02-08 09:32:50
Message-ID: 56B860C2.1070707@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 05.02.2016 um 18:40 Jason Petersen wrote:
>> On Feb 3, 2016, at 2:38 AM, Peter Moser <pitiz29a(at)gmail(dot)com> wrote:
>>
>> Does anyone had similar problems? Do I have to configure Eclipse to understand the PG_RMGR macro or is there another possibility to teach Eclipse these macros?

Hi,

>
> I just built 9.6 under Eclipse CDT to try this out and was able to open e.g. heapam.c without any error markers.
>
> I added PostgreSQL as a “Makefile Project with Existing Code” after running ./configure from the command-line. After that, I built the project from within Eclipse by adding the ‘all’ make target and running it.

I imported PG the same way, configured from terminal with

export CFLAGS="-g0"

./configure \
--prefix="/home/p/pg/build" \
--enable-debug \
--enable-depend \
--enable-cassert

I built the project from command-line, not from within Eclipse. First I
thought that this may have caused all this problems, but no...

>
> One setting I usually change: right-click the project, pick Properties, then drill down through C/C++ General -> Preprocessor Include Paths. In the Provider pane, there is an entry for “CDT GCC Build Output Parser”. I’m not sure if this is strictly necessary, but I set my “Container to keep discovered entries” setting to “File”.
>
> Basically, Eclipse scans the make output for -I flags, then notes all the includes used to build each file, so the static analyzer, etc. can have more accurate information (it is crucial that the “Compiler command pattern” in this window be a regex that will match the compiler binary you use, so if you have /usr/local/bin/gcc, and “gcc” is the pattern, you are in for trouble).
>
> After running the build, Eclipse should now know what includes are used for each file and stop whining. If it ever seems to have problems, you can kick it by running a clean target, then all, then picking “Project -> C/C++ Index -> Rebuild” (I think).

Thanks for all your suggestions, tried all of them, but it made no
difference. What finally solved my problems was to delete the BUILD and
cluster DATA folders that I had created, re-configured the system.
Deleted the project in Eclipse, and imported it again after configure.
All wrong markers disappeared. Maybe the C-file index of Eclipse was
corrupted or so. Also rebuilding it didn't work. The only difference
from my previous attempt was the CFLAGS thing (see above), but I do not
know if this changes anything related to markers.

----
Peter

>
> --
> Jason Petersen
> Software Engineer | Citus Data
> 303.736.9255
> jason(at)citusdata(dot)com
>

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Vitaly Burovoy 2016-02-08 09:40:38 Re: Make PG's "NOT NULL"s and attnotnull ("is_nullable") conform to SQL-2011
Previous Message Huong Dangminh 2016-02-08 09:20:46 backpatch for REL9_4_STABLE of commit 40482e606733675eb9e5b2f7221186cf81352da1