如何使用带有biicode的gui nana库

时间:2015-04-11 10:34:39

标签: biicode nana

我正在尝试使用Biicode使用nana gui库编译我的代码。 https://www.biicode.com/qiangwu/qiangwu/nana/master/0/biicode.conf

    # Biicode configuration file migrated from old config files

[requirements]
    qiangwu/nana: 0

[parent]

[paths]

[dependencies]
    include/nana/config.hpp + build/cmake/config.hpp
[mains]

[hooks]

[includes]

[data]

命令bii build之后 输出是:

H:\na4\nana>bii build
INFO: Processing changes...
WARN: user/nana/biicode.conf, [dependencies] include/nana/config.hpp + build/cmake/config.hpp
        There are no files matching pattern include/nana/config.hpp
Building: "cmake" --build .

                BLOCK: qiangwu/nana
-----------------------------------------------------------
CMake Error at H:/na4/nana/bii/deps/qiangwu/nana/CMakeLists.txt:19 (list):
  list sub-command REMOVE_ITEM requires two or more arguments.


Error copying file (if different) from "H:/na4/nana/bii/deps/qiangwu/nana/build/cmake/config.hpp" to "H:/na4/nana/bii/deps/qiangwu/nana/include/nana/".
+ LIB: qiangwu_nana

                BLOCK: user/nana
-----------------------------------------------------------
+ LIB: user_nana
+ EXE: user_nana_main
-- Configuring incomplete, errors occurred!
See also "H:/na4/nana/bii/build/CMakeFiles/CMakeOutput.log".
See also "H:/na4/nana/bii/build/CMakeFiles/CMakeError.log".
mingw32-make.exe: *** [cmake_check_build_system] Error 1
ERROR: Build failed

的CMakeLists.txt:

if(NOT BIICODE)
    project(nana)
    cmake_minimum_required(VERSION 2.8)
else()
    set(LIB_SRC ${BII_LIB_SRC})

    foreach(cpp ${BII_LIB_SRC})
        if(${cpp} MATCHES "(include/nana|source)/detail/[A-Za-z0-9_]+/.+$")
            list(APPEND trash_files ${cpp})
        endif()
    endforeach()

    list(REMOVE_ITEM BII_LIB_SRC ${trash_files})
endif()

第19行是:"列表(REMOVE_ITEM BII_LIB_SRC $ {trash_files})"

2 个答案:

答案 0 :(得分:1)

似乎它与biicode无关,但与CMake有关。您的${trash_files}变量实际上是空的,然后REMOVE_ITEM列表函数失败。在常规CMakeLists.txt中检查此代码:

SET(MY_VAR a b c)
SET(TRASH_FILES )
SET(MY_LIST a b c d)
foreach(cpp ${MY_VAR})
    if(${cpp} MATCHES d)
        list(APPEND trash_files ${cpp})
    endif()
endforeach()
list(REMOVE_ITEM MY_LIST ${trash_files})

如果您认为变量在此类操作中可能为空,请使用条件保护该代码:

if(trash_files)
    list(REMOVE_ITEM MY_LIST ${trash_files})
endif()

答案 1 :(得分:0)

不幸的是,这是一个更新地址。

在GitHub中,您需要使用分支develop