
<!DOCTYPE html>

<html lang="en">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>CMAKE_TRY_COMPILE_TARGET_TYPE &mdash; CMake 3.23.1 Documentation</title>

    <link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../_static/cmake.css" />
    
    <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
    <script src="../_static/jquery.js"></script>
    <script src="../_static/underscore.js"></script>
    <script src="../_static/doctools.js"></script>
    
    <link rel="shortcut icon" href="../_static/cmake-favicon.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="CMAKE_UNITY_BUILD" href="CMAKE_UNITY_BUILD.html" />
    <link rel="prev" title="CMAKE_TRY_COMPILE_PLATFORM_VARIABLES" href="CMAKE_TRY_COMPILE_PLATFORM_VARIABLES.html" />
 

  </head><body>

    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="CMAKE_UNITY_BUILD.html" title="CMAKE_UNITY_BUILD"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="CMAKE_TRY_COMPILE_PLATFORM_VARIABLES.html" title="CMAKE_TRY_COMPILE_PLATFORM_VARIABLES"
             accesskey="P">previous</a> |</li>
  <li>
    <img src="../_static/cmake-logo-16.png" alt=""
         style="vertical-align: middle; margin-top: -2px" />
  </li>
  <li>
    <a href="https://cmake.org/">CMake</a> &#187;
  </li>
  <li>
    <a href="../index.html">3.23.1 Documentation</a> &#187;
  </li>

          <li class="nav-item nav-item-1"><a href="../manual/cmake-variables.7.html" accesskey="U">cmake-variables(7)</a> &#187;</li>
        <li class="nav-item nav-item-this"><a href="">CMAKE_TRY_COMPILE_TARGET_TYPE</a></li> 
      </ul>
    </div>  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <div class="section" id="cmake-try-compile-target-type">
<span id="variable:CMAKE_TRY_COMPILE_TARGET_TYPE"></span><h1>CMAKE_TRY_COMPILE_TARGET_TYPE<a class="headerlink" href="#cmake-try-compile-target-type" title="Permalink to this headline">¶</a></h1>
<div class="versionadded">
<p><span class="versionmodified added">New in version 3.6.</span></p>
</div>
<p>Type of target generated for <span class="target" id="index-0-command:try_compile"></span><a class="reference internal" href="../command/try_compile.html#command:try_compile" title="try_compile"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">try_compile()</span></code></a> calls using the
source file signature.  Valid values are:</p>
<dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">EXECUTABLE</span></code></dt><dd><p>Use <span class="target" id="index-0-command:add_executable"></span><a class="reference internal" href="../command/add_executable.html#command:add_executable" title="add_executable"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">add_executable()</span></code></a> to name the source file in the
generated project.  This is the default if no value is given.</p>
</dd>
<dt><code class="docutils literal notranslate"><span class="pre">STATIC_LIBRARY</span></code></dt><dd><p>Use <span class="target" id="index-0-command:add_library"></span><a class="reference internal" href="../command/add_library.html#command:add_library" title="add_library"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">add_library()</span></code></a> with the <code class="docutils literal notranslate"><span class="pre">STATIC</span></code> option to name the
source file in the generated project.  This avoids running the
linker and is intended for use with cross-compiling toolchains
that cannot link without custom flags or linker scripts.</p>
</dd>
</dl>
</div>


            <div class="clearer"></div>
          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
  <h4>Previous topic</h4>
  <p class="topless"><a href="CMAKE_TRY_COMPILE_PLATFORM_VARIABLES.html"
                        title="previous chapter">CMAKE_TRY_COMPILE_PLATFORM_VARIABLES</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="CMAKE_UNITY_BUILD.html"
                        title="next chapter">CMAKE_UNITY_BUILD</a></p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../_sources/variable/CMAKE_TRY_COMPILE_TARGET_TYPE.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<div id="searchbox" style="display: none" role="search">
  <h3 id="searchlabel">Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>
    </div>
</div>
<script>$('#searchbox').show(0);</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             >index</a></li>
        <li class="right" >
          <a href="CMAKE_UNITY_BUILD.html" title="CMAKE_UNITY_BUILD"
             >next</a> |</li>
        <li class="right" >
          <a href="CMAKE_TRY_COMPILE_PLATFORM_VARIABLES.html" title="CMAKE_TRY_COMPILE_PLATFORM_VARIABLES"
             >previous</a> |</li>
  <li>
    <img src="../_static/cmake-logo-16.png" alt=""
         style="vertical-align: middle; margin-top: -2px" />
  </li>
  <li>
    <a href="https://cmake.org/">CMake</a> &#187;
  </li>
  <li>
    <a href="../index.html">3.23.1 Documentation</a> &#187;
  </li>

          <li class="nav-item nav-item-1"><a href="../manual/cmake-variables.7.html" >cmake-variables(7)</a> &#187;</li>
        <li class="nav-item nav-item-this"><a href="">CMAKE_TRY_COMPILE_TARGET_TYPE</a></li> 
      </ul>
    </div>

    <div class="footer" role="contentinfo">
        &#169; Copyright 2000-2022 Kitware, Inc. and Contributors.
      Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 4.1.2.
    </div>
  </body>
</html>