相关疑难解决方法(0)

从文件列表中获取输入的Tar归档

我有一个文件,其中包含我想用tar存档的文件列表.我们称之为mylist.txt

它包含:

file1.txt
file2.txt
...
file10.txt
Run Code Online (Sandbox Code Playgroud)

有没有办法可以发出mylist.txt作为输入的TAR命令?就像是

tar -cvf allfiles.tar -[someoption?] mylist.txt
Run Code Online (Sandbox Code Playgroud)

所以它就像我发出这个命令一样:

tar -cvf allfiles.tar file1.txt file2.txt file10.txt 
Run Code Online (Sandbox Code Playgroud)

unix linux tar archive

146
推荐指数
6
解决办法
13万
查看次数

在CMake中获取目标所依赖的所有源文件

使用CMake,我如何获得进入可执行目标的所有源文件的列表,包括此可执行文件所依赖的所有目标中的所有源?

我们在代码库中有一个模式,其中初始化调用者是由构建系统根据源树中的文件名和路径生成的.因此,我需要可执行目标所依赖的所有源文件的完整路径(或相对于源根目录).

cmake

8
推荐指数
1
解决办法
2280
查看次数

CMake:如何更改子目录项目目标的属性?

我正在尝试在子项目中组织目标(在本例中为poco),但是我发现无法为ALIAS目标修改属性。我希望外部项目中的目标位于它们自己的文件夹中,而不是扩展到项目树中的所有位置(例如Visual Studio生成器)。有没有更简单的方法来添加具有自己属性的项目?

所以代替:

- CMakePredefinedTargets
    - ALL_BUILD
    - INSTALL
    - ...
- MyTargets
    - SomeLibrary
    - SomeExe
- CppUnit
- Crypto
- Data
- ...
Run Code Online (Sandbox Code Playgroud)

我想要:

- CMakePredefinedTargets
    - ALL_BUILD
    - INSTALL
    - ...
- MyTargets
    - SomeLibrary
    - SomeExe
- Poco
    - CppUnit
    - Crypto
    - Data
    - ...
Run Code Online (Sandbox Code Playgroud)

我的尝试:

function(add_subdirectory_with_folder folder_name)
    function(add_library name type)
    _add_library(${ARGV})

    set_target_properties(${name}
        PROPERTIES
        FOLDER "${folder_name}"
    )
    endfunction()
    add_subdirectory(${ARGN})
endfunction()

# External Libs
add_subdirectory_with_folder("Poco" libs/poco)
Run Code Online (Sandbox Code Playgroud)

poco库中的示例目标:

add_library( "${LIBNAME}" ${LIB_MODE} ${SRCS} )
add_library( "${POCO_LIBNAME}" ALIAS "${LIBNAME}") …
Run Code Online (Sandbox Code Playgroud)

c++ cmake build-tools poco-libraries

6
推荐指数
1
解决办法
2493
查看次数

标签 统计

cmake ×2

archive ×1

build-tools ×1

c++ ×1

linux ×1

poco-libraries ×1

tar ×1

unix ×1