Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cmake 如何交叉编译ctest?_Cmake_Arm_Cross Compiling_Ctest - Fatal编程技术网

Cmake 如何交叉编译ctest?

Cmake 如何交叉编译ctest?,cmake,arm,cross-compiling,ctest,Cmake,Arm,Cross Compiling,Ctest,我想在arm目标系统上使用ctest。 因此,尝试对cmake(包括ctest)进行交叉编译,但失败了。 我使用cross ng构建了arm交叉编译器,如下url所示: 我的测试臂机器是树莓皮。因此,上面的指南帮助我获得了arm交叉编译器 有了这个arm交叉编译器,我成功地构建并测试了helloworld 但是,使用这个arm交叉编译器,我无法编译cmake-2.8.12.2,如下所示 mkdir-p/somepath/bin/cmake cd/somepath/bin/cmake cmake

我想在arm目标系统上使用ctest。 因此,尝试对cmake(包括ctest)进行交叉编译,但失败了。 我使用cross ng构建了arm交叉编译器,如下url所示:

我的测试臂机器是树莓皮。因此,上面的指南帮助我获得了arm交叉编译器

有了这个arm交叉编译器,我成功地构建并测试了helloworld

但是,使用这个arm交叉编译器,我无法编译cmake-2.8.12.2,如下所示

mkdir-p/somepath/bin/cmake

cd/somepath/bin/cmake

cmake-DCMAKE_TOOLCHAIN_FILE=/home/me/bin/RaspberryPi/CMakeToolChain/TOOLCHAIN-RaspberryPi.cmake/somepath/src/cmake-2.8.12.2

用这种方法,我得到了错误,但cmake、ctest和cpack都是构建的。它们是arm二进制文件。 但是,当我将Ctp测试导入我的Raspberry Pi并进行测试时,它失败了,并显示以下消息:

/ctest:/lib/arm-linux-gnueabihf/libc.so.6:version'GLIBC_2.15'不是 找到(由./ctest所需)

让我发布我的工具链文件

设置(CMAKE\u系统\u名称Linux)

设置(CMAKE_系统_版本1)

集合(CMAKE_C_编译器 /home/me/local/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-gcc)

集合(CMAKE\U CXX\U编译器 /home/me/local/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-g++)

设置(CMAKE\u FIND\u ROOT\u路径 /home/me/local/x-tools/arm未知linux gnueabi)

设置(CMAKE\u FIND\u ROOT\u PATH\u MODE\u PROGRAM NEVER) 设置(仅限CMAKE\U FIND\U ROOT\U PATH\U MODE\U库) 设置(仅限CMAKE\U FIND\U ROOT\U PATH\U MODE\U INCLUDE)


有人能告诉我如何获取ctest的arm版本吗?

我找到了下面错误消息的解决方案:

/ctest:/lib/arm-linux-gnueabihf/libc.so.6:version'GLIBC_2.15'不是 找到(由./ctest所需)

我的目标机器是树莓皮。libc.so.6的版本是2.13版! 我必须从crosstool ng的menuconfig中配置它。 从crosstool ng的菜单配置中选择正确的libc版本是解决方案

非常感谢stackoverflows.com