zoukankan      html  css  js  c++  java
  • Cmake,链接一个外部(也可能是第三方,也可能是自己编译的)库

    相当于设置VS工程里面的:

    然后,为了链接成可执行文件,链接器就会到指定的目录寻找相应的库了。

    以下时Demo:

     1 cmake_minimum_required(VERSION 2.8)
     2 
     3 #set(CMAKE_C_COMPILER "D:VS2008ReleaseVCinamd64")
     4 #set(CMAKE_CXX_COMPILER "D:VS2008ReleaseVCinamd64")
     5 
     6 PROJECT(CONVERT) 
     7 
     8 add_definitions(-D_CONSOLE)
     9 add_definitions(-D_LIB)
    10 
    11 add_definitions(-D_VISUALC_)
    12 add_definitions(-DNeedFunctionPrototypes)
    13 
    14 include_directories(../)
    15 
    16 
    17 #shang LINK_DIRECTORIES(../../build/lib)
    18 LINK_DIRECTORIES(${CMAKE_BINARY_DIR}/lib)
    19 
    20 
    21 
    22 set(SRC ${PROJECT_SOURCE_DIR}/convert.c)
    23 
    24 
    25 add_executable(convert ${SRC})
    26 
    27 set(IMAGEMAGICK_LIB CORE_wand CORE_magick CORE_wmf CORE_pixman CORE_ffi CORE_croco CORE_cairo CORE_webp CORE_ttf CORE_tiff CORE_png CORE_pango CORE_lqr  CORE_libxml CORE_librsvg CORE_lcms CORE_jp2 CORE_jbig CORE_glib CORE_filters CORE_coders CORE_jpeg CORE_bzlib CORE_zLib)
    28 target_link_libraries(convert ${IMAGEMAGICK_LIB} urlmon.lib)
    29 
    30 set(CompilerFlags
    31         CMAKE_CXX_FLAGS
    32         CMAKE_CXX_FLAGS_DEBUG
    33         CMAKE_CXX_FLAGS_RELEASE
    34         CMAKE_C_FLAGS
    35         CMAKE_C_FLAGS_DEBUG
    36         CMAKE_C_FLAGS_RELEASE
    37         )
    38 foreach(CompilerFlag ${CompilerFlags})
    39   string(REPLACE "/MD" "/MT" ${CompilerFlag} "${${CompilerFlag}}")
    40   string(REPLACE "/Ob0" "" ${CompilerFlag} "${${CompilerFlag}}")
    41   string(REPLACE "/TC" "" ${CompilerFlag} "${${CompilerFlag}}")
    42 endforeach()
    View Code

    Reference:

    http://stackoverflow.com/questions/8774593/cmake-link-to-external-library

  • 相关阅读:
    flush()方法
    多对一关联映射(manytoone)
    Hibernate配置数据库解决插入乱码问题
    lazy
    一对多关联映射(单向)
    属性类的映射
    多对多关联(双向)
    多对多关联映射(单向)
    多态查询
    Visual C# 2008+SQL Server 2005 数据库与网络开发11.2.2 LINQ的基本查询操作
  • 原文地址:https://www.cnblogs.com/foohack/p/3523685.html
Copyright © 2011-2022 走看看