Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ptp-user] Include and library paths for a combined C and C++ synchronized project

Good point, we should make that very clear in the docs.
>remote projects, you do not need the connection path prepended, but for the synchronized projects, you do need the connection path.

I created a bugzilla item to keep notes on 7.0 docs like this: https://bugs.eclipse.org/bugs/show_bug.cgi?id=397588
Updating the help is on my to-do list


...Beth

Beth Tibbitts
Eclipse Parallel Tools Platform  http://eclipse.org/ptp
IBM STG - High Performance Computing Tools
Mailing Address:  IBM Corp., 745 West New Circle Road, Lexington, KY 40511


Inactive hide details for "Dr. David E Hudak" ---01/07/2013 09:17:43 AM---Hi John, Thanks for the information.  It was confusin"Dr. David E Hudak" ---01/07/2013 09:17:43 AM---Hi John, Thanks for the information.  It was confusing to me at first that for remote projects, you


    From:

"Dr. David E Hudak" <dhudak@xxxxxxx>

    To:

PTP User list <ptp-user@xxxxxxxxxxx>,

    Date:

01/07/2013 09:17 AM

    Subject:

Re: [ptp-user] Include and library paths for a combined C and C++ synchronized project

    Sent by:

ptp-user-bounces@xxxxxxxxxxx




Hi John,

Thanks for the information.  It was confusing to me at first that for remote projects, you do not need the connection path prepended, but for the synchronized projects, you do need the connection path.  But, I get that now and (I believe) I am using the correct path clarifiers in this case.

Thanks,
Dave
On Jan 4, 2013, at 4:31 PM, John Eblen <jeblen@xxxxxxx> wrote:
    Hi Dave

    For synchronized projects, you need to prepend the connection name to
    include paths for remote includes. For example, if the connection name is
    "carver" and you wish to include /usr/include on carver, type the following:

    //carver/usr/include

    The help for synchronized projects contains more information on handling
    remote include paths.

    BTW, we are currently developing a method for automatically detecting
    remote include paths. So this capability will be available in a future release.


    John

    On Fri, Jan 4, 2013 at 4:10 PM, Dr. David E Hudak <dhudak@xxxxxxx> wrote:
      Hi Jay,

      In this particular test case, eclipse
             1.  successfully indexes a C++ file and resolves all symbols for a remote project
             2.  fails to resolves all symbols for a synchronized project

      Some background:
      For the remote project, I created the project as a Remote GCC C/C++ Executable with a Remote Linux GCC Toolchain.
      I added the source file.
      Then I added to project properties:
             a.  Include paths
             b.  Library paths
             c.  Library flags

      The project builds and symbols resolve.

      For the synchronized project, I created the project as an Empty Makefile project with a Remote Linux GCC toolchain.
      I added the source file and the makefile
      Then I added include paths

      I suspect the problem is in the files being used for indexing.  The remote project automatically includes a bunch of remote header files.  The synchronized project automatically includes local header files which (a) may be of the wrong version or (b) may omit necessary includes on the server side.

      Thanks,
      Dave
      On Jan 3, 2013, at 11:53 AM, "Alameda, Jay" <
      alameda@xxxxxxxxxxxx> wrote:

      > Dave,
      >
      > I think one of the motivators (among many) for developing synchronized projects was to improve indexing  -- but of course, this is complicated with the remote include path issue - so I don't think I'm surprised by the differences in indexing between remote and synchronized project types.  However, I'd hope that indexing for synchronized projects was better than indexing for remote projects, do you know if this is the case?
      >
      > Jay
      >
      >
      > -----Original Message-----
      > From:
      ptp-user-bounces@xxxxxxxxxxx [mailto:ptp-user-bounces@xxxxxxxxxxx] On Behalf Of Dr. David E Hudak
      > Sent: Monday, December 24, 2012 10:08 AM
      > To: PTP User list
      > Subject: Re: [ptp-user] Include and library paths for a combined C and C++ synchronized project
      >
      > Hi All,
      >
      > After some more work, I have gotten the issue resolved!  Unfortunately, it seems that there are some differences in the behavior of indexing for C projects between remote projects and synchronized projects.  If people are interested, I can study it further.  Let me know.
      >
      > Thanks,
      > Dave
      > On Dec 18, 2012, at 5:42 PM, Dr. David E Hudak <
      dhudak@xxxxxxx> wrote:
      >
      >> Hi All,
      >>
      >> I am working with a colleague who is trying PTP for a C/C++ project that uses OpenSlide and OpenCV (computer vision).  I have a question regarding setting the appropriate include paths, library paths and libraries.
      >>
      >> He currently has a makefile on the remote system (Oakley, one of our linux clusters) that he is able to build his example source code with.
      >>
      >> First, I had him create an empty Makefile project with the remote GCC toolchain, no local toolchain.  In order for eclipse to resolve the program's symbols, I had him add the remote include paths:
      >> //oakley/nfs/14/samsi/devel/opencv-2.4.2/include/opencv
      >> //oakley/nfs/14/samsi/devel/opencv-2.4.2/include
      >> //oakley/nfs/14/samsi/devel/openslide-3.3.2/include/openslide
      >>
      >> And, there was a symbol, Mat, that was not resolved by eclipse but is found when the makefile runs (many other symbols were resolved).  The main code file has:
      >> #include <cv.h>
      >> where cv.h is a bunch of other includes, particularly:
      >> #include "opencv2/core/core.hpp"
      >> and the class in question, Mat, is defined in core.hpp.
      >>
      >> I have tried to add opencv2 to the include paths and <core/core.hpp> to the main code, but that did not work.  The only other symbols that were not resolved were declared in C header files underneath opencv2.
      >>
      >> Second, I had him create a synchronized project of type "Executable/Empty Project", again with GCC remote tools and no local tools.  We added the include paths:
      >> /oakley/nfs/14/samsi/devel/opencv-2.4.2/include/opencv
      >> //oakley/nfs/14/samsi/devel/opencv-2.4.2/include
      >> //oakley/nfs/14/samsi/devel/openslide-3.3.2/include/openslide
      >> ...and we added the library paths:
      >> //oakley/nfs/14/samsi/devel/opencv-2.4.2/lib
      >> //oakley/nfs/14/samsi/devel/openslide-3.3.2/lib
      >> ...and we added the libraries
      >> opencv_core
      >> opencv_highgui
      >> openslide
      >>
      >> But, when I did that, the auto generated makefile had the connection prefix //oakley in the -I and -L commands!  I went back to the project properties and removed them, and then the auto generated makefile worked.  However, the symbol resolution was broken in this project after I changed the include paths.
      >>
      >> So, after that long explanation, here are my questions:
      >>      1.  Are there any good rules for include paths for combined C and C++ projects?  I take it eclipse is not a thorough as the compiler in spelunking through include files being included by other include files?
      >>      2.  For the auto generated makefile, what is the appropriate way to declare remote library and include paths?
      >>      3.  How can the local include paths for things like /usr/local be replaced with remote include paths?
      >>
      >> Thanks,
      >> Dave
      >> ---
      >> David E. Hudak, Ph.D.          
      dhudak@xxxxxxx
      >> Senior Research Scientist
      >> Ohio Supercomputer Center
      >>
      http://www.osc.edu
      >>
      >>
      >>
      >>
      >>
      >>
      >>
      >>
      >>
      >>
      >>
      >> _______________________________________________
      >> ptp-user mailing list
      >>
      ptp-user@xxxxxxxxxxx
      >>
      https://dev.eclipse.org/mailman/listinfo/ptp-user
      >
      > ---
      > David E. Hudak, Ph.D.          
      dhudak@xxxxxxx
      > Senior Research Scientist
      > Ohio Supercomputer Center
      >
      http://www.osc.edu
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      >
      > _______________________________________________
      > ptp-user mailing list
      >
      ptp-user@xxxxxxxxxxx
      >
      https://dev.eclipse.org/mailman/listinfo/ptp-user
      > _______________________________________________
      > ptp-user mailing list
      >
      ptp-user@xxxxxxxxxxx
      >
      https://dev.eclipse.org/mailman/listinfo/ptp-user

      ---
      David E. Hudak, Ph.D.          
      dhudak@xxxxxxx
      Senior Research Scientist
      Ohio Supercomputer Center

      http://www.osc.edu











      _______________________________________________
      ptp-user mailing list

      ptp-user@xxxxxxxxxxx
      https://dev.eclipse.org/mailman/listinfo/ptp-user

    _______________________________________________
    ptp-user mailing list

    ptp-user@xxxxxxxxxxx
    https://dev.eclipse.org/mailman/listinfo/ptp-user

---
David E. Hudak, Ph.D.          dhudak@xxxxxxx
Senior Research Scientist
Ohio Supercomputer Center
http://www.osc.edu










_______________________________________________
ptp-user mailing list
ptp-user@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ptp-user


GIF image

GIF image


Back to the top