代码之家  ›  专栏  ›  技术社区  ›  loics2

CPack-NuGet本机库

  •  0
  • loics2  · 技术社区  · 6 年前

    include(GNUInstallDirs)
    file(RELATIVE_PATH relDir
        ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}
        ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR})
    set(CMAKE_INSTALL_RPATH $ORIGIN $ORIGIN/${relDir})
    set(CMAKE_INSTALL_DOCDIR ${CMAKE_INSTALL_DATAROOTDIR}/doc/${PROJECT_NAME})
    
    # ...other CMake config...
    
    install(TARGETS MyLib
        RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
        LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
        ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
        INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/mylib
    )
    
    set(CPACK_PACKAGE_NAME MyLib)
    set(CPACK_PACKAGE_VENDOR Me)
    # ...standard CPack variables...
    
    if(WIN32)
        set(CPACK_NUGET_PACKAGE_TAGS "Native" "native")
        set(CPACK_GENERATOR ZIP;NuGet)
    else()
        set(CPACK_GENERATOR TGZ)
    endif()
    
    include(CPack)
    

    然后,我跑 cmake --build . --target package 要打包我的lib,CMake将正确生成 .nupkg 包含 .lib 和 .h 我想要的文件。但是,当我尝试在C++ /WiRT项目中使用生成的包时,我不能 #include

    所以我有以下几个问题:

    0 回复  |  直到 6 年前