我无法让CMake找到带有Linaro ARM工具链的线程(我已经尝试过几个不同的线程)。以下是我所做的:
下载并解压缩到/opt。
下载了相应的sysroot并解压缩到~/sysroot
我创建了一个工具链-Linaro-arm.cmake文件,如下所示:
set (CMAKE_SYSTEM_NAME Linux)
include (CMakeForceCompiler)
我正在尝试使用在ARM的Ubuntu14.04上构建OpenCV。我已经尝试安装每个包,但它在CMAKE上提供了这些错误。
checking for module 'gstreamer-base-1.0'
package 'gstreamer-base-1.0' not found
checking for module 'gstreamer-video-1.0'
package 'gstreamer-video-1.0' not found
checking for module 'gstreamer-app-1.0
我有一个跨平台项目运行在多个平台上。项目中的每个目录都有一个CmakeLists.txt,大多数cmake文件的代码类似于:
输入:
# set target os
if (DEFINED target_os)
SET (HRAD_SDK_TARGET_OS "${target_os}")
else ()
SET (HRAD_SDK_TARGET_OS "${CMAKE_SYSTEM_NAME}")
endif ()
message(STATUS "=============== SDK: cccccccccccccccccccccccccccccc
我正在尝试在Ubuntu 16.04.4 LTS xenial上引导cmake 3.11.3。
我已经将我的gnu g++编译器升级如下:
> $ g++ --version
g++ (Ubuntu 8.1.0-5ubuntu1~16.04) 8.1.0 Copyright (C) 2018 Free
Software Foundation, Inc. This is free software; see the source for
copying conditions. There is NO warranty; not even for MERCHANTABILITY
or
我试图在我的ubuntu机器上安装google ():记住,我使用的是用于linux的windows子系统。
# Check out the library.
$ git clone https://github.com/google/benchmark.git
# Go to the library root directory
$ cd benchmark
# Make a build directory to place the build output.
$ cmake -E make_directory "build"
# Generate build system
我试图在基于ARM-linux的系统上编译OPENCV。为此,我创建了一个带有以下选项的工具链cmake文件
SET (CMAKE_SYSTEM_NAME Linux)
SET (CMAKE_SYSTEM_VERSION 1)
SET (CMAKE_SYSTEM_PROCESSOR arm)
SET (CMAKE_C_COMPILER "/usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-gcc")
SET (CMAKE_CXX_COMPILER "/usr/local/arm/4.3.1-eabi-armv6/usr/
简而言之,我可以使用直接的g++命令行构建程序。然后构建成功地在目标上执行。
但是,如果我使用我能想到的最简单的cmake脚本,构建就会成功,但是程序无法在目标上执行。可执行文件的失败输出如下:
terminate called after throwing an instance of 'std::system_error'
what(): Enable multithreading to use std::thread: Operation not permitted
Aborted
成功构建和执行时使用的g++命令行是:
/opt/criticallink/mityom
我交叉编译了一个用于HummingBoard-Pro (arm处理器)的软件。
该软件仅使用lcm协议接收一些数据。如果我使用交叉编译软件,应用程序接收到的数据是无效的,而如果我使用板载编译软件,则一切正常。
-The软件是完全相同的!-I交叉编译使用cmake和特定的arm工具链。
交叉编译sw的输出示例:
first value 5.73599e+107
second value 5.73599e+107
third value 5.73599e+107
板载编译软件的输出示例:
first value 1
second value 2
third va
我正在尝试配置一个无头构建服务器,以构建一个使用Cmake构建C++部件的Android项目。
现在我有个问题:
* What went wrong:
A problem occurred configuring project ':app'.
> Failed to find CMake.
Install from Android Studio under File/Settings/Appearance & Behavior/System Settings/Android SDK/SDK Tools/CMake.
Expected CMake exec
当我在Ubuntu20.04.3LTS上构建webkitgtk-2.34.6时,使用以下命令:(遵循正式的documentation)https://trac.webkit.org/wiki/BuildingGtk )
cmake -DPORT=GTK -DCMAKE_BUILD_TYPE=RelWithDebInfo -GNinja
“找不到WebP库”出现了错误:
-- The CMake build type is: RelWithDebInfo
-- Could NOT find Ruby (missing: RUBY_INCLUDE_DIR RUBY_LIBRARY RUBY_CON
我试图获得最新版本的CMake,因为OpenSUSE坚持使用3.5.2。
version=3.10
build=2
mkdir ~/temp
cd ~/temp
wget https://cmake.org/files/v$version/cmake-$version.$build.tar.gz
tar -xzvf cmake-$version.$build.tar.gz
cd cmake-$version.$build/
./bootstrap
make -j3
sudo make install
但有些事情却悄悄地出错了:
VM-LINUX:~/temp/cmake-3.10.2 # cm
CMake文档表明交叉编译时设置了CMAKE_CROSSCOMPILING。在我的CMakeLists.txt中,我有这样的台词:
IF(CMAKE_CROSSCOMPILING)
message(STATUS "Cross-compiling so skipping unit tests.")
option(GAME_PORTAL_UNIT_TEST "Enable unit testing of Game Portal code" OFF)
ELSE()
message(STATUS "Enabling unit testin