2

I am trying to compile my code with nana gui library using Biicode. 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]

After command bii build Output is:

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()

Line 19 is : " list(REMOVE_ITEM BII_LIB_SRC ${trash_files})"

Szymon Madera
  • 87
  • 1
  • 6
  • I have tried to build your code after a "bii open" of it, and had a couple of problems. I am trying with MinGW in Win. The error output does not show. It seems there are no "main" anywhere in the code, thus no target is built. Could you please tell your dev setup (OS, compiler, etc).? It is also useful if you add a link to the github repo (your fork), and if your ongoing work is in a branch. It is much easier to collaborate from there. – drodri Apr 11 '15 at 23:36

2 Answers2

1

It seems it is not biicode related, but CMake related. Your ${trash_files} variable is actually empty, and then the REMOVE_ITEM list function fails. Check this code in a regular 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 you think that a variable might be empty in such operations, protect that code with a conditional:

if(trash_files)
    list(REMOVE_ITEM MY_LIST ${trash_files})
endif()
drodri
  • 5,157
  • 15
  • 21
0

Resently it was an update addresing this.

In GitHub you will need to use the branch develop

qPCR4vir
  • 3,521
  • 1
  • 22
  • 32