Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>The issue is hopefully pretty easy to resolve. When you do this...</p> <pre><code>set(ARMADILLO_LIBRARY "C:\\Program Files (x86)\\armadillo\\lib") set(ARMADILLO_INCLUDE_DIR "C:\\Program Files (x86)\\armadillo\\include") </code></pre> <p>you're effectively short-circuiting the <code>find_package(Armadillo 2.4.2 REQUIRED)</code> call, since it expects to have to do the work to find these paths. However, when <code>find_package</code> does the work, the variable <code>ARMADILLO_LIBRARY</code> gets set to the path to the library itself - not the path to the lib's directory.</p> <p>So the problem boils down to setting <code>ARMADILLO_LIBRARY</code> to the path to the lib's directory rather than the lib itself. This ultimately yields a linker error since the target <code>gmm</code> (added in src\mlpack\methods\gmm\CMakeLists.txt) links to <code>mlpack</code>, and <code>mlpack</code> has been set to link to <code>${ARMADILLO_LIBRARIES}</code>, which isn't set correctly.</p> <p>It turns out that <code>find_package(Armadillo ...)</code> already checks in <code>"$ENV{ProgramFiles}/Armadillo/lib"</code> and <code>"$ENV{ProgramFiles}/Armadillo/include"</code>, and I expect these resolve to <code>"C:\\Program Files (x86)\\armadillo\\lib"</code> and <code>"C:\\Program Files (x86)\\armadillo\\include"</code> on your machine.</p> <p>So to fix this, you should delete the lines setting <code>ARMADILLO_LIBRARY</code> and <code>ARMADILLO_INCLUDE_DIR</code>, and revert your change in src\mlpack\CMakeLists.txt (using <a href="http://www.cmake.org/cmake/help/v2.8.10/cmake.html#command%3alink_directories" rel="nofollow" title="CMake v2.8.10 documentation for &quot;link_directories&quot; command"><code>link_directories</code></a> is generally a bad idea anyway).</p> <p>After making these changes, you should delete at least your CMakeCache.txt (in the root of your build tree), or even your entire build tree before re-running CMake to avoid the possibility of using bad cached values from previous failed attempts.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload