<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Hello Yu,<br>
      <br>
      It seems I too needed another trick to make it work:<br>
      set_property(TARGET CRFPP_EX_PROJ PROPERTY EXCLUDE_FROM_ALL TRUE)<br>
      set_property(TARGET LEVELDB_EX_PROJ PROPERTY EXCLUDE_FROM_ALL
      TRUE)<br>
      <br>
      ADD_DEPENDENCIES(cmake_sample iniparser_static CRFPP_EX_PROJ
      LEVELDB_EX_PROJ)<br>
      <br>
      By default the ExternalProject_Add will add that target to the ALL
      target, and that confuses the Make dependency checker. I have
      removed those dependencies in my project. On the whole I agree
      with Marcel Loose and Petr Kmoch however. Combining their solution
      makes for a 'cleaner' project. To be honest, I am halfway of
      migrating my project to a superbuild as well. Take a look at the
      openchemistry project if you would like to see an example of that:
      <a class="moz-txt-link-freetext" href="https://github.com/OpenChemistry/openchemistry">https://github.com/OpenChemistry/openchemistry</a><br>
      <br>
      Regards,<br>
      Micha Hergarden<br>
      <br>
      <br>
      On 09/16/2014 11:04 AM, Marcel Loose wrote:<br>
    </div>
    <blockquote cite="mid:5417FD0E.4030106@astron.nl" type="cite">
      <meta content="text/html; charset=windows-1252"
        http-equiv="Content-Type">
      Hi Yu,<br>
      <br>
      I think you need to add an explicit dependency of main.cc on the
      "generated" (well, not really generated, but installed) header
      file crfpp.h. CMake has no clue as to what files are being
      compiled/installed by your external project, so you have to make
      this explicit.<br>
      <br>
      HTH,<br>
      Marcel Loose.<br>
      <br>
      <br>
      <div class="moz-cite-prefix">On 16/09/14 10:41, Yu Jing wrote:<br>
      </div>
      <blockquote
        cite="mid:8B05041E-6ABA-411B-9854-9AA53BD51C07@gmail.com"
        type="cite">
        <meta http-equiv="Content-Type" content="text/html;
          charset=windows-1252">
        <div>Hello  Micha ,</div>
        <div><br>
        </div>
        <div>It seems doesn’t work.</div>
        <div>I updated code , and move the external project to src , and
          it still not work.</div>
        <div><br>
        </div>
        <div>what should be noticed is :</div>
        <div>1. If I just use </div>
        <div>$ make</div>
        <div>as make command ,all styles are work</div>
        <div>2. If I use in multi jobs</div>
        <div>$ make -j8</div>
        <div>It will run abnormal (not desired sequence) .</div>
        <div><br>
        </div>
        <br>
        <div>
          <div>On Sep 16, 2014, at 15:27, Micha Hergarden <<a
              moz-do-not-send="true"
              href="mailto:micha.hergarden@gmail.com">micha.hergarden@gmail.com</a>>

            wrote:</div>
          <br class="Apple-interchange-newline">
          <blockquote type="cite">
            <meta content="text/html; charset=windows-1252"
              http-equiv="Content-Type">
            <div bgcolor="#FFFFFF" text="#000000">
              <div class="moz-cite-prefix">It may be that you have line
                63 and 64 the wrong way around:<br>
                <span class="nb">ADD_SUBDIRECTORY</span><span class="p">(</span><span
                  class="s">src</span><span class="p">)<br>
                </span><span class="nb">ADD_SUBDIRECTORY</span><span
                  class="p">(</span><span class="s">lib</span><span
                  class="p">)<br>
                  <br>
                  The externalproject is added in lib, but you add a
                  dependency on it in src. CMake will descend in the
                  subdirectories in the order you supply them.<br>
                  Does reversing the directories help?<br>
                  <br>
                  Regards,<br>
                  Micha<br>
                </span><br>
                On 09/16/2014 09:17 AM, Yu Jing wrote:<br>
              </div>
              <blockquote
                cite="mid:E760AF53-2F5E-40B0-B78F-ACA6225B90BE@gmail.com"
                type="cite">
                <meta http-equiv="Content-Type" content="text/html;
                  charset=windows-1252">
                <div>I am in OSX 10.9.4 , a sample in  github is : <a
                    moz-do-not-send="true"
                    href="https://github.com/yujing5b5d/cmake_sample">https://github.com/yujing5b5d/cmake_sample</a></div>
                <div>after git clone this project , a operation like
                  this :</div>
                <div>
                  <div>------------------------------------------------------------------------------------------------------------</div>
                </div>
                <div><br>
                </div>
                <div>
                  <div><b>yu:cmake_sample yu$ mkdir build</b></div>
                  <div><b>yu:cmake_sample yu$ cd build/</b></div>
                  <div><b>yu:build yu$ cmake ..</b></div>
                  <div>…. # skip some useless output</div>
                  <div>-- Configuring done</div>
                  <div>-- Generating done</div>
                  <div>-- Build files have been written to:
                    /Users/yu/Workspace/res/cmake_sample/build</div>
                  <div><b>yu:build yu$ make -j8 ###
                      <<<<<<<<<<<<<<<</b></div>
                  <div>Scanning dependencies of target LEVELDB_EX_PROJ</div>
                  <div>Scanning dependencies of target iniparser</div>
                  <div>Scanning dependencies of target relfiles</div>
                  <div>Scanning dependencies of target CRFPP_EX_PROJ</div>
                  <div>Scanning dependencies of target iniparser_static</div>
                  <div>[ 15%] [ 15%] [ 20%] [ 20%] [ 25%] Building C
                    object
                    lib/iniparser/CMakeFiles/iniparser_static.dir/ini.c.o</div>
                  <div>Creating directories for 'CRFPP_EX_PROJ'</div>
                  <div>Creating directories for 'LEVELDB_EX_PROJ'</div>
                  <div>Building C object
                    lib/iniparser/CMakeFiles/iniparser.dir/ini.c.o</div>
                  <div>Building CXX object
                    src/CMakeFiles/relfiles.dir/main.cc.o</div>
                  <div>[ 30%] [ 35%] Performing download step (git
                    clone) for 'LEVELDB_EX_PROJ'</div>
                  <div>Performing download step (git clone) for
                    'CRFPP_EX_PROJ'</div>
                  <div>/Users/yu/Workspace/res/cmake_sample/src/<a
                      moz-do-not-send="true" href="http://main.cc/">main.cc</a>:3:10:


                    fatal error: 'crfpp.h' file not found</div>
                  <div>#include "crfpp.h" // crfpp</div>
                  <div>         ^</div>
                  <div>Cloning into 'CRFPP_EX_PROJ'...</div>
                  <div>Cloning into 'LEVELDB_EX_PROJ'...</div>
                  <div>Linking C static library ../libiniparser.a</div>
                  <div>Linking C shared library ../libiniparser.dylib</div>
                  <div>[ 35%] [ 35%] Built target iniparser_static</div>
                  <div>Built target iniparser</div>
                  <div>Scanning dependencies of target cmake_sample</div>
                  <div>[ 40%] Building CXX object
                    src/CMakeFiles/cmake_sample.dir/main.cc.o</div>
                  <div>/Users/yu/Workspace/res/cmake_sample/src/<a
                      moz-do-not-send="true" href="http://main.cc/">main.cc</a>:3:10:


                    fatal error: 'crfpp.h' file not found</div>
                  <div>#include "crfpp.h" // crfpp</div>
                  <div>         ^</div>
                  <div>1 error generated.</div>
                  <div>1 error generated.</div>
                  <div>make[2]: ***
                    [src/CMakeFiles/relfiles.dir/main.cc.o] Error 1</div>
                  <div>make[2]: ***
                    [src/CMakeFiles/cmake_sample.dir/main.cc.o] Error 1</div>
                  <div>make[1]: *** [src/CMakeFiles/relfiles.dir/all]
                    Error 2</div>
                  <div>make[1]: *** Waiting for unfinished jobs....</div>
                  <div>make[1]: ***
                    [src/CMakeFiles/cmake_sample.dir/all] Error 2</div>
                  <div>….</div>
                  <div>------------------------------------------------------------------------------------------------------------</div>
                  <div><br>
                  </div>
                  <div>BE CAREFUL OF THIS LINE :</div>
                </div>
                <div>
                  <div><b>>> yu:build yu$ make -j8</b></div>
                </div>
                <div><b><br>
                  </b></div>
                <div>the ExternalProject CRFPP_EX_PROJ’s result contains
                  copy a crfpp.h  header to a special path, after this
                  process , we can use #include “crfpp.h" ,and If I use </div>
                <div>make -j8</div>
                <div>this means 8 jobs can be running at the same time,
                  I can not constraints and let my compiler compile my <a
                    moz-do-not-send="true" href="http://main.cc/">main.cc</a>
                  after CRFPP_EX_PROJ finished.</div>
                <div><br>
                </div>
                <div>Of course , I’m not sure is this my misuse this
                  project .</div>
                <div><br>
                </div>
                <div><br>
                </div>
                <br>
                <div>
                  <div>On Sep 16, 2014, at 14:55, Micha Hergarden <<a
                      moz-do-not-send="true"
                      href="mailto:micha.hergarden@gmail.com">micha.hergarden@gmail.com</a>>


                    wrote:</div>
                  <br class="Apple-interchange-newline">
                  <blockquote type="cite">
                    <meta content="text/html; charset=windows-1252"
                      http-equiv="Content-Type">
                    <div bgcolor="#FFFFFF" text="#000000">
                      <div class="moz-cite-prefix">Hello all,<br>
                        <br>
                        I do use the ExternalProject to prebuild some
                        binaries, without the 'superproject' setup, and
                        it does seem to work. Using the
                        add_dependencies, I can make sure some third
                        party libs are prebuild before I start to build
                        my project. I have seen some issues with
                        ExternalProject (failing to extract, or build),
                        but they are too rare to pinpoint and create a
                        bugreport.<br>
                        <br>
                        What exactly does not work? Is the external
                        project not build at all, or just not in time?<br>
                        <br>
                        Regards,<br>
                        Micha<br>
                        <br>
                        On 09/16/2014 08:30 AM, Petr Kmoch wrote:<br>
                      </div>
                      <blockquote
cite="mid:CAKohaZfCEeDUZwFbnyfW0GC=rPhuTgRCmSJfqS8up+cdt8abLA@mail.gmail.com"
                        type="cite">
                        <div dir="ltr">
                          <div>
                            <div>Hi.<br>
                              <br>
                            </div>
                            I've never worked with ExternalProject
                            myself, so I can't comment with certainty,
                            but from what I understand, the correct way
                            of using ExternalProject is to add your own
                            project as an ExternalProject as well.
                            Basically, the toplevel CMakeList becomes a
                            superbuild which *only* does
                            ExternalProject_Add() calls and does not add
                            any libraries/executables directly. After
                            you build the superbuild once to get all the
                            dependencies correct, you switch to the
                            "external" project of your own code and work
                            with that normally.<br>
                            <br>
                          </div>
                          Petr<br>
                        </div>
                        <div class="gmail_extra"><br>
                          <div class="gmail_quote">On Mon, Sep 15, 2014
                            at 4:13 PM, Yu Jing <span dir="ltr"><<a
                                moz-do-not-send="true"
                                href="mailto:yujing5b5d@gmail.com"
                                target="_blank">yujing5b5d@gmail.com</a>></span>
                            wrote:<br>
                            <blockquote class="gmail_quote"
                              style="margin: 0px 0px 0px 0.8ex;
                              border-left-width: 1px; border-left-color:
                              rgb(204, 204, 204); border-left-style:
                              solid; padding-left: 1ex; position:
                              static; z-index: auto;">
                              <div style="word-wrap:break-word">
                                <p style="margin:0px 0px
                                  1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                  Sans','DejaVu
Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255)">I
                                  had asked in <a moz-do-not-send="true"
href="http://stackoverflow.com/questions/25841602" target="_blank">http://stackoverflow.com/questions/25841602</a> 
                                  , someone told me maybe here is a
                                  better place to ask.</p>
                                <p style="margin:0px 0px
                                  1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                  Sans','DejaVu
Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255)">I
                                  am writing a project base on crfpp , a
                                  external project. I use cmake to
                                  integerate this project as follow .</p>
                                <p style="margin:0px 0px
                                  1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                  Sans','DejaVu
Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255)">firstly



                                  , I add a extenal project like this:</p>
                                <pre style="margin-top:0px;margin-bottom:10px;padding:5px;border:0px;font-size:14px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;overflow:auto;width:auto;max-height:600px;word-wrap:normal;line-height:17.8048000335693px;background-color:rgb(238,238,238);background-repeat:initial initial"><code style="margin:0px;padding:0px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;white-space:inherit;background-repeat:initial initial"><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">EXTERNALPROJECT_ADD</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initi
a
 l
 initial
">(<span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">
            CRFPP_EX_PROJ
            GIT_REPOSITORY git@github</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">com</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">:</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">yujing5b5d</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">/</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">crfpp</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background
 -


color:transparent;background-repeat:initial initial">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">git
            PREFIX $</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">{</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">CMAKE_CURRENT_BINARY_DIR</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">}</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">
            CONFIGURE_COMMAND </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">./</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">configure
            BUILD_COMMAND make </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">-</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">j8
            BUILD_IN_SOURCE </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background-color:transparent;background-repeat:initial initial">1</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">
            INSTALL_COMMAND cp </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">libs</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">/</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">libcrfpp</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">a $</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:tr
 a


nsparent;background-repeat:initial initial">{</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">PROJECT_BINARY_DIR</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">}/</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">lib </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">&&</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial"> cp crfpp</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">.</span><span style="margin:0px;padding:0px;border:0px;ver
 t


ical-align:baseline;background-color:transparent;background-repeat:initial initial">h $</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">{</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">PROJECT_BINARY_DIR</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">}/</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">include 
    </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">)</span></span></code></pre>
                                <p style="margin:0px 0px
                                  1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                  Sans','DejaVu
                                  Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255);background-repeat:initial



                                  initial">this will generate some .a
                                  file and copy a header file <code
                                    style="margin:0px;padding:1px
                                    5px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida



                                    Console','Liberation Mono','DejaVu
                                    Sans Mono','Bitstream Vera Sans
                                    Mono','Courier
                                    New',monospace,serif;white-space:pre-wrap;background-color:rgb(238,238,238);background-repeat:initial



                                    initial">crfpp.h</code> to folder <code
                                    style="margin:0px;padding:1px
                                    5px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida



                                    Console','Liberation Mono','DejaVu
                                    Sans Mono','Bitstream Vera Sans
                                    Mono','Courier
                                    New',monospace,serif;white-space:pre-wrap;background-color:rgb(238,238,238);background-repeat:initial



                                    initial">${PROJECT_BINARY_DIR}/include</code> ,


                                  which is included in my project.</p>
                                <p style="margin:0px 0px
                                  1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                  Sans','DejaVu
                                  Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255);background-repeat:initial



                                  initial">and then , use the <code
                                    style="margin:0px;padding:1px
                                    5px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida



                                    Console','Liberation Mono','DejaVu
                                    Sans Mono','Bitstream Vera Sans
                                    Mono','Courier
                                    New',monospace,serif;white-space:pre-wrap;background-color:rgb(238,238,238);background-repeat:initial



                                    initial">${PROJECT_BINARY_DIR}/include</code> as



                                  include path as follow .</p>
                                <pre style="margin-top:0px;margin-bottom:10px;padding:5px;border:0px;font-size:14px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;overflow:auto;width:auto;max-height:600px;word-wrap:normal;line-height:17.8048000335693px;background-color:rgb(238,238,238);background-repeat:initial initial"><code style="margin:0px;padding:0px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;white-space:inherit;background-repeat:initial initial"><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">INCLUDE_DIRECTORIES</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initi
a
 l
 initial
">(<span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">
    $</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">{</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">PROJECT_SOURCE_DIR</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">}/</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">include
    $</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">{</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">PROJECT_BINARY_DIR</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">}/</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">include
</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">)</span></span></code></pre>
                                <p style="margin:0px 0px
                                  1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                  Sans','DejaVu
                                  Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255);background-repeat:initial



                                  initial">finally , when I compile the
                                  main project , code like this :</p>
                                <pre style="margin-top:0px;margin-bottom:10px;padding:5px;border:0px;font-size:14px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;overflow:auto;width:auto;max-height:600px;word-wrap:normal;line-height:17.8048000335693px;background-color:rgb(238,238,238);background-repeat:initial initial"><code style="margin:0px;padding:0px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;white-space:inherit;background-repeat:initial initial"><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">ADD_EXECUTABLE</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial in
i
 t
ial">(<!--
span--><sp an="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">cmake_sample main<span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">cc</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">
ADD_DEPENDENCIES</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">cmake_sample CRFPP_EX_PROJ</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">
TARGET_LINK_LIBRARIES</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">cmake_sample crfpp</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">)</span></sp></span></code></pre>
                                <p style="margin:0px 0px
                                  1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                  Sans','DejaVu
                                  Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255);background-repeat:initial



                                  initial">In general , if I just build
                                  a build folder, compile like this :</p>
                                <pre style="margin-top:0px;margin-bottom:10px;padding:5px;border:0px;font-size:14px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;overflow:auto;width:auto;max-height:600px;word-wrap:normal;line-height:17.8048000335693px;background-color:rgb(238,238,238);background-repeat:initial initial"><code style="margin:0px;padding:0px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;white-space:inherit;background-repeat:initial initial"><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">cmake </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">.
.
 <
/span><s pan="" styl="" e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">
make</s></span></code></pre>
                                <s pan="" styl=""
                                  e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial

                                  initial">
                                  <p style="margin:0px 0px
                                    1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                    Sans','DejaVu
                                    Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255);background-repeat:initial



                                    initial">It may works fine, compile
                                    the external project first , and
                                    copy the header file to desired
                                    place , and then continue compile <a
                                      moz-do-not-send="true"
                                      href="http://main.cc/"
                                      target="_blank">main.cc</a> in my
                                    project . But if I use compile
                                    command as multi-thread like this :</p>
                                  <pre style="margin-top:0px;margin-bottom:10px;padding:5px;border:0px;font-size:14px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;overflow:auto;width:auto;max-height:600px;word-wrap:normal;line-height:17.8048000335693px;background-color:rgb(238,238,238);background-repeat:initial initial"><code style="margin:0px;padding:0px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;white-space:inherit;background-repeat:initial initial"><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">cmake </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial"
>
 .
.</span><s pan="" styl="" e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">
make <span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">-</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">j8</span></s></code></pre>
                                  <s pan="" styl=""
                                    e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial

                                    initial">
                                    <p style="margin:0px 0px
                                      1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                      Sans','DejaVu
                                      Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255);background-repeat:initial



                                      initial">It will not works because
                                      my <a moz-do-not-send="true"
                                        href="http://main.cc/"
                                        target="_blank">main.cc</a> and
                                      the external project are processed
                                      at same time, so it report a error
                                      like this :</p>
                                    <pre style="margin-top:0px;margin-bottom:10px;padding:5px;border:0px;font-size:14px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;overflow:auto;width:auto;max-height:600px;word-wrap:normal;line-height:17.8048000335693px;background-color:rgb(238,238,238);background-repeat:initial initial"><code style="margin:0px;padding:0px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;white-space:inherit;background-repeat:initial initial"><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background-color:transparent;background-repeat:initial initial">/Users/</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-r
e
 p
eat:initial 
initial">yu</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">/</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background-color:transparent;background-repeat:initial initial">Workspace</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">/</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">res</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">/</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">cmake_sample</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;backgrou
 n

d-color:
transparent;background-repeat:initial initial">/</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">src</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">/</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">main</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">cc</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">:</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rg
 b


(128,0,0);background-color:transparent;background-repeat:initial initial">3</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">:</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background-color:transparent;background-repeat:initial initial">10</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">:</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial"> fatal error</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">:</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial"> </span><span style="margin:0px;pad
 d


ing:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background-color:transparent;background-repeat:initial initial">'crfpp.h'</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial"> file </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background-color:transparent;background-repeat:initial initial">not</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial"> found
</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,128,128);background-color:transparent;background-repeat:initial initial">#include</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background-color:transparent;background-repeat:initial initial">"crfpp.h"</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,128,128);background-color:transparent;background-repeat:initial initial">// crfpp</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">
         </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">^</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">
</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background-color:transparent;background-repeat:initial initial">1</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial"> error generated</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">.</span></code></pre>
                                    <p style="margin:0px 0px
                                      1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                      Sans','DejaVu
Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255)">This <code
                                        style="margin:0px;padding:1px
                                        5px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida



                                        Console','Liberation
                                        Mono','DejaVu Sans
                                        Mono','Bitstream Vera Sans
                                        Mono','Courier
                                        New',monospace,serif;white-space:pre-wrap;background-color:rgb(238,238,238);background-repeat:initial



                                        initial">crfpp.h</code> will
                                      generated after <code
                                        style="margin:0px;padding:1px
                                        5px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida



                                        Console','Liberation
                                        Mono','DejaVu Sans
                                        Mono','Bitstream Vera Sans
                                        Mono','Courier
                                        New',monospace,serif;white-space:pre-wrap;background-color:rgb(238,238,238);background-repeat:initial



                                        initial">CRFPP_EX_PROJ</code> ,
                                      but in multi-thread environment ,
                                      the sequence is quite different .</p>
                                    <p style="margin:0px 0px
                                      1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                      Sans','DejaVu
Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255)">My



                                      Question is : Is it possible that
                                      force let my project compile after
                                      these external projects all
                                      finished . BE CAREFUL , I'm not
                                      sure is this the problem of my use
                                      of <code
                                        style="margin:0px;padding:1px
                                        5px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida



                                        Console','Liberation
                                        Mono','DejaVu Sans
                                        Mono','Bitstream Vera Sans
                                        Mono','Courier
                                        New',monospace,serif;white-space:pre-wrap;background-color:rgb(238,238,238);background-repeat:initial



                                        initial">ADD_DEPENDENCIES</code> ,

                                      I also wrote</p>
                                    <pre style="margin-top:0px;margin-bottom:10px;padding:5px;border:0px;font-size:14px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;overflow:auto;width:auto;max-height:600px;word-wrap:normal;line-height:17.8048000335693px;background-color:rgb(238,238,238);background-repeat:initial initial"><code style="margin:0px;padding:0px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;white-space:inherit;background-repeat:initial initial"><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">ADD_DEPENDENCIES</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:init
i
 a
l initial">(
</span><
span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">cmake_sample CRFPP_EX_PROJ<span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial initial">)</span></code></pre>
                                    <p style="margin:0px 0px
                                      1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                      Sans','DejaVu
Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255)">but



                                      it seems not works ?</p>
                                    <p style="margin:0px 0px
                                      1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                      Sans','DejaVu
Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255)">Thanks



                                      for any help.</p>
                                    <p style="margin:0px 0px
                                      1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;font-family:Arial,'Liberation



                                      Sans','DejaVu
Sans',sans-serif;line-height:17.8048000335693px;background-color:rgb(255,255,255)"><br>
                                    </p>
                                  </s></s></div>
                              <s pan="" styl=""
                                e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial

                                initial"> <br>
                                --<br>
                                <br>
                                Powered by <a moz-do-not-send="true"
                                  href="http://www.kitware.com/"
                                  target="_blank">www.kitware.com</a><br>
                                <br>
                                Please keep messages on-topic and check
                                the CMake FAQ at: <a
                                  moz-do-not-send="true"
                                  href="http://www.cmake.org/Wiki/CMake_FAQ"
                                  target="_blank">http://www.cmake.org/Wiki/CMake_FAQ</a><br>
                                <br>
                                Kitware offers various services to
                                support the CMake community. For more
                                information on each offering, please
                                visit:<br>
                                <br>
                                CMake Support: <a
                                  moz-do-not-send="true"
                                  href="http://cmake.org/cmake/help/support.html"
                                  target="_blank">http://cmake.org/cmake/help/support.html</a><br>
                                CMake Consulting: <a
                                  moz-do-not-send="true"
                                  href="http://cmake.org/cmake/help/consulting.html"
                                  target="_blank">http://cmake.org/cmake/help/consulting.html</a><br>
                                CMake Training Courses: <a
                                  moz-do-not-send="true"
                                  href="http://cmake.org/cmake/help/training.html"
                                  target="_blank">http://cmake.org/cmake/help/training.html</a><br>
                                <br>
                                Visit other Kitware open-source projects
                                at <a moz-do-not-send="true"
                                  href="http://www.kitware.com/opensource/opensource.html"
                                  target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
                                <br>
                                Follow this link to
                                subscribe/unsubscribe:<br>
                                <a moz-do-not-send="true"
                                  href="http://public.kitware.com/mailman/listinfo/cmake"
                                  target="_blank">http://public.kitware.com/mailman/listinfo/cmake</a><br>
                              </s></blockquote>
                            <s pan="" styl=""
                              e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial

                              initial"> </s></div>
                          <s pan="" styl=""
                            e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial

                            initial"> <br>
                          </s></div>
                        <s pan="" styl=""
                          e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial

                          initial"> <br>
                          <fieldset class="mimeAttachmentHeader"></fieldset>
                          <br>
                        </s></blockquote>
                      <s pan="" styl=""
                        e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial

                        initial"> <br>
                      </s></div>
                    <s pan="" styl=""
                      e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial

                      initial"> </s></blockquote>
                  <s pan="" styl=""
                    e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial

                    initial"> </s></div>
                <s pan="" styl=""
                  e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial

                  initial"> <br>
                </s></blockquote>
              <s pan="" styl=""
                e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial

                initial"> <br>
              </s></div>
            <s pan="" styl=""
              e="margin:0px;padding:0px;border:0px;vertical-align:baseline;background-color:transparent;background-repeat:initial

              initial"> </s></blockquote>
        </div>
        <br>
        <br>
        <fieldset class="mimeAttachmentHeader"></fieldset>
        <br>
      </blockquote>
      <br>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
    </blockquote>
    <br>
  </body>
</html>