[ITK Community] Integrating ITK into our own SDK

Dženan Zukić dzenanz at gmail.com
Fri Mar 14 05:20:29 EDT 2014


Static libraries are the most convenient when developing on Windows.
However as I am working on a research project, I did not have to deal with
distribution like you do.


On Thu, Mar 13, 2014 at 6:09 PM, Michael Jackson <
mike.jackson at bluequartz.net> wrote:

> Thanks for the example. The thing I don't like about
> "ExternalProject_Add()" is that if you do a "Rebuild" of your project then
> you are also rebuilding ITK which takes a while.
>
>  But even the script that you linked to _assumes_ that one has built ITK
> but NOT done an actual install. Because when ITK is installed there are no
> longer any "Debug/Release" directories but just the normal bin, lib,
> include, share directories.
>
> So even if I build ITK in the final build location, zip up the
> installation and include that in my SDK installation it will still be wrong
> because all the *.cmake files will be pointing to some other potentially
> nonexistent location because the end developer and I need to install ITK in
> different locations.
>
> In ITK's cmake files is there a macro or function that was written to wrap
> the add_library() call by chance? That would be convenient to just simply
> update that one macro/function with a _debug tag for debug libraries.
> ---
> Mike J.
>
> On Mar 13, 2014, at 12:46 PM, Andras Lasso <lasso at queensu.ca> wrote:
>
> > The main advantage of Debug/Release/etc. directories on Windows is that
> you don't need to reconfigure your project if you switch  between different
> build modes, so don't go back to CMake to change any options. A solution is
> to leave the install prefix alone and specify a common
> CMAKE_RUNTIME_OUTPUT_DIRECTORY for all projects. See an example here that
> works for Win/Linux/Mac for both pre-built and external project ITK:
> >
> https://www.assembla.com/code/plus/subversion/nodes/3228/trunk/PlusBuild/External_ITK.cmake
> >
> > Andras
> >
> > -----Original Message-----
> > From: Community [mailto:community-bounces at itk.org] On Behalf Of Michael
> Jackson
> > Sent: March 13, 2014 10:36 AM
> > To: Matt McCormick
> > Cc: community at itk.org
> > Subject: Re: [ITK Community] Integrating ITK into our own SDK
> >
> > So that didn't work. Here is what I tried. On windows (VS2013 Pro) I
> configured ITK to have an install prefix of C:/Developer/x64/ITK/Debug,
> configured, built in Debug and installed. I then went back to CMake and
> reset the install prefix to C:/Developer/x64/ITK/Release, configured, built
> in Release and installed.
> >
> > Now I exported the ITK_DIR environment variable as C:/Developer/x64/ITK
> and tried to configure our own project and it fails to find ITK because
> CMake can not find the *.cmake files that ITK would normally install but
> since the ITK_DIR really points to a directory above there it _really_
> should point it does not work.
> >
> > So, back to my original question. how do developers on Windows,
> specifically Visual Studio, develop against ITK? Do they just configure ITK
> and build in place and then just point their projects to the ITK Build
> directory? I am hesitant to try to work with Static Libraries as our
> project uses plugins and there can be cross-talk among the plugins. So if
> we have multiple Developers writing multiple plugins where each plugin
> links agains their own ITK I am foreseeing trouble in the future with that
> setup (Again on Windows)..
> >
> > Has anyone else ever made this type of request of ITK in the past?
> >
> > Thoughts and Suggestions are Welcome?
> >
> > --
> > Mike Jackson
> >
> >
> > On Mar 12, 2014, at 3:27 PM, Matt McCormick <matt.mccormick at kitware.com>
> wrote:
> >
> >> Hi Mike,
> >>
> >>
> >> On Wed, Mar 12, 2014 at 1:54 PM, Michael Jackson <
> mike.jackson at bluequartz.net> wrote:
> >> So what you are suggesting is that when I build ITK I would build ITK
> In Debug and then install to (for example) C:/ITK/Debug and when building
> in Release install to C:/ITK/Release?
> >>
> >> Yeap.
> >>
> >>
> >> Would that mess up the actual use of
> >> find_package(ITK) in my own project? Would find_package(ITK) actually
> be able to distinguish between the Debug and Release builds?
> >>
> >>
> >> It would work best with two builds of the project.
> >>
> >> HTH,
> >> Matt
> >
> > _______________________________________________
> > Community mailing list
> > Community at itk.org
> > http://public.kitware.com/cgi-bin/mailman/listinfo/community
>
> _______________________________________________
> Community mailing list
> Community at itk.org
> http://public.kitware.com/cgi-bin/mailman/listinfo/community
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/community/attachments/20140314/6bc4627e/attachment-0002.html>


More information about the Community mailing list