使用 boost:__func_Grm00gZzHB 使用不正确的参数调用的函数

Using boost: __func_Grm00gZzHB Function invoked with incorrect arguments

我在使用 boost 和 biicode 时遇到问题。我有一个带有 main 的简单项目。该项目使用升压。为了使用 biicode 获得提升,我使用了以下 cmake 文件:

include(biicode/boost/setup)
ADD_BII_TARGETS()

bii_find_boost(COMPONENTS unit_test_framework REQUIRED)

target_include_directories(${BII_BLOCK_TARGET} INTERFACE     ${Boost_INCLUDE_DIRS})
target_link_libraries(${BII_BLOCK_TARGET} INTERFACE ${Boost_LIBRARIES})

如果我现在调用 "bii configure",将下载并解压缩 boost(我检查了 .biicode/boost 文件夹)。尽管如此,我还是遇到了一些奇怪的错误(可以找到跟踪版本 here)并且配置过程失败:

$ bii configure --verbose
DEBUG: Everything up to date

DEBUG: No valid files found in d:\C++\Workspace\testx\blocks
INFO: Processing changes...
Running: "cmake"  -G "Visual Studio 12" -Wno-dev  ..\cmake

                BLOCK: user/testx
-----------------------------------------------------------
CMake Error at C:/Users/Tobi/AppData/Local/Temp/file_make_temporary_m6QEuq5c7B.tmp:1 (__func_1111111111):
  __func_1111111111 Function invoked with incorrect arguments for function
  named: __func_1111111111
Call Stack (most recent call first):
  C:/Users/Tobi/AppData/Local/Temp/file_make_temporary_m6QEuq5c7B.tmp:4 (include)
  ../deps/toeb/cmakepp/cmake/task/task_run_next.cmake:34 (eval)
  ../deps/toeb/cmakepp/cmake/task/task_run_next.cmake:42 (task_run_next)
  ../deps/toeb/cmakepp/cmake/task/task_run_all.cmake:6 (task_run_next)
  ../deps/toeb/cmakepp/cmakepp.cmake:110 (task_run_all)
  ../deps/boost/install/build_jobs.cmake:1 (include)
  ../deps/boost/install/install.cmake:2 (include)
  ../deps/biicode/boost/setup.cmake:1 (include)
  ../../CMakeLists.txt:1 (include)


CMake Error at C:/Users/Tobi/AppData/Local/Temp/file_make_temporary_m6QEuq5c7B.tmp:1 (__func_6oohAf7Azh):
  __func_6oohAf7Azh Function invoked with incorrect arguments for function
  named: __func_6oohAf7Azh
Call Stack (most recent call first):
  C:/Users/Tobi/AppData/Local/Temp/file_make_temporary_m6QEuq5c7B.tmp:4 (include)
  ../deps/toeb/cmakepp/cmake/task/task_run_next.cmake:34 (eval)
  ../deps/toeb/cmakepp/cmake/task/task_run_all.cmake:6 (task_run_next)
  ../deps/toeb/cmakepp/cmakepp.cmake:110 (task_run_all)
  ../deps/boost/install/build_jobs.cmake:1 (include)
  ../deps/boost/install/install.cmake:2 (include)
  ../deps/biicode/boost/setup.cmake:1 (include)
  ../../CMakeLists.txt:1 (include)


CMake Error at C:/Users/Tobi/AppData/Local/Temp/file_make_temporary_m6QEuq5c7B.tmp:1 (__func_F9SWokvms4):
  __func_F9SWokvms4 Function invoked with incorrect arguments for function
  named: __func_F9SWokvms4
Call Stack (most recent call first):
  C:/Users/Tobi/AppData/Local/Temp/file_make_temporary_m6QEuq5c7B.tmp:4 (include)
  ../deps/toeb/cmakepp/cmake/task/task_run_next.cmake:34 (eval)
  ../deps/toeb/cmakepp/cmake/task/task_run_all.cmake:6 (task_run_next)
  ../deps/toeb/cmakepp/cmakepp.cmake:110 (task_run_all)
  ../deps/boost/install/build_jobs.cmake:1 (include)
  ../deps/boost/install/install.cmake:2 (include)
  ../deps/biicode/boost/setup.cmake:1 (include)
  ../../CMakeLists.txt:1 (include)


CMake Error at C:/Users/Tobi/AppData/Local/Temp/file_make_temporary_m6QEuq5c7B.tmp:1 (__func_Grm00gZzHB):
  __func_Grm00gZzHB Function invoked with incorrect arguments for function
  named: __func_Grm00gZzHB
Call Stack (most recent call first):
  C:/Users/Tobi/AppData/Local/Temp/file_make_temporary_m6QEuq5c7B.tmp:4 (include)
  ../deps/toeb/cmakepp/cmake/task/task_run_next.cmake:34 (eval)
  ../deps/toeb/cmakepp/cmake/task/task_run_all.cmake:6 (task_run_next)
  ../deps/toeb/cmakepp/cmakepp.cmake:110 (task_run_all)
  ../deps/boost/install/build_jobs.cmake:1 (include)
  ../deps/boost/install/install.cmake:2 (include)
  ../deps/biicode/boost/setup.cmake:1 (include)
  ../../CMakeLists.txt:1 (include)


+ LIB: user_testx
+ EXE: user_testx___main
-- No linking type specified. Assuming static linking
-- Setting up biicode Boost configuration...
-- Building Boost 1.57.0 components with toolset msvc-12.0...
Starting unit_test_framework library build job...
Building Boost components, please wait [                                         ]
Finished building unit_test_framework library
-- Boost version: 1.57.0
-- Boost version: 1.57.0
-- Found the following Boost libraries:
--   unit_test_framework
-- Configuring incomplete, errors occurred!
See also "D:/C++/Workspace/testx/bii/build/CMakeFiles/CMakeOutput.log".
ERROR: CMake failed

好的,我没弄清楚问题出在哪里,但我解决了它^^。问题是二进制符号 RS (E1 (hex) in ascii) 被放置在 https://github.com/toeb/cmakepp 的一些源文件中(一定是 cmake 问题,因为删除它们后它们在执行 cmake 后再次出现)。

从版本 3.1.0-rc1 -> 3.3.0-rc3.

更新 cmake 后问题消失