在aarch64-himix100-linux-gcc下cmake报错(The C compiler identification is unknown)

项目场景:

华为好望角AI摄像头C系列的算法移植过程中,遇到cmake报错


问题描述:

gcc: aarch64-himix100-linux-gcc

CMakeLists.txt文档:

cmake_minimum_required(VERSION 3.14)
project(NNIE_tutorial)

set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_COMPILER /home/liuky/HDD_1/soft/aarch-linux-gnu/bin/aarch64-linux-gnu-g++)
set(CMAKE_C_COMPILER /home/liuky/HDD_1/soft/aarch-linux-gnu/bin/aarch64-linux-gnu-gcc)

include_directories(3rd_party/hisi/include)
include_directories(include)

file(GLOB SRCS
        src/*.cpp
        src/*.hpp
        )
file(GLOB LIBS
        libs/libsecurec.a)

add_executable(NNIE_tutorial ${SRCS})

target_link_libraries(NNIE_tutorial pthread m dl)
target_link_libraries(NNIE_tutorial ${LIBS})

注意:此处修改标红地址,改成你自己的aarch64-linux-gnu-g++和aarch64-linux-gnu-gcc所在地址。

1、set(CMAKE_CXX_COMPILER /home/liuky/HDD_1/soft/aarch-linux-gnu/bin/aarch64-linux-gnu-g++)

2、set(CMAKE_C_COMPILER /home/liuky/HDD_1/soft/aarch-linux-gnu/bin/aarch64-linux-gnu-gcc)

在CMakeLists.txt所在目录下,依次执行以下命令,

mkdir bin # 创建bin文件夹,方便存放cmake生成的中间文件
cd bin
cmake .. # ..是CMakeLists.txt所在

报错

-- The C compiler identification is unknown
-- The CXX compiler identification is unknown
CMake Error at CMakeLists.txt:2 (project):
  No CMAKE_C_COMPILER could be found.

  Tell CMake where to find the compiler by setting either the environment
  variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to
  the compiler, or to the compiler name if it is in the PATH.


CMake Error at CMakeLists.txt:2 (project):
  No CMAKE_CXX_COMPILER could be found.

  Tell CMake where to find the compiler by setting either the environment
  variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
  to the compiler, or to the compiler name if it is in the PATH.


-- Configuring incomplete, errors occurred!
See also "/home/HuaweiAI/nnie_sdc_tutorial/Part_3/bin/CMakeFiles/CMakeOutput.log".
See also "/home/HuaweiAI/nnie_sdc_tutorial/Part_3/bin/CMakeFiles/CMakeError.log".


解决方案:

1、确认 aarch64-himix100-linux-gcc安装上了,执行如下命令

aarch64-himix100-linux-gcc -v

如果正确安装,则输出gcc version。

2、依次执行以下命令,更新依赖

sudo apt-get update
sudo apt-get install -y build-essential

此时再cmake,则成功,如下

root@e3f6c5260a7b:/home/HuaweiAI/nnie_sdc_tutorial/Part_3/bin# cmake ..
-- The C compiler identification is GNU 5.4.0
-- The CXX compiler identification is GNU 5.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/HuaweiAI/nnie_sdc_tutorial/Part_3/bin

### 回答1: aarch64-himix210-linux 是指在华为海思平台上以Aarch64架构运行的Linux操作系统。Qt是一个跨平台的C++图形用户界面应用程序开发框架,支持在不同操作系统上开发应用程序。 对于aarch64-himix210-linux来说,Qt提供了相应的版本来兼容。目前,Qt采用了两个主要版本策略:Qt 5和Qt 6。 1. Qt 5版本:Qt 5是当前广泛使用的版本,并且对于aarch64-himix210-linux平台来说也提供了兼容的版本。具体来说,Qt 5.9和更高版本都可以在该平台上进行编译和运行,以构建使用Qt的应用程序。 2. Qt 6版本:Qt 6是Qt的最新版本,它提供了新的功能和改进,并且也会兼容aarch64-himix210-linux平台。根据Qt的发布计划,Qt 6.2版本将提供对该平台的支持,用户可以使用Qt 6.2及更高版本来开发针对该平台的应用程序。 总的来说,Qt提供了适用于aarch64-himix210-linux平台的版本,包括Qt 5.9及更高版本以及Qt 6.2及更高版本。开发者可以根据具体需求选择合适的Qt版本,进行应用程序的开发和调试。 ### 回答2: aarch64-himix210-linux能兼容Qt的版本有Qt 5.9和Qt 5.12。 Qt是一个跨平台的应用程序开发框架,可以用于开发图形用户界面(GUI)和嵌入式应用程序。aarch64-himix210-linux是一种针对海思平台的ARM64体系结构的Linux操作系统。 在aarch64-himix210-linux平台上,可以使用Qt 5.9和Qt 5.12进行开发。这些版本在运行时会适配针对该平台的库和驱动程序,确保应用程序在aarch64-himix210-linux上能够正常运行。 Qt 5.9和Qt 5.12具有较高的兼容性和稳定性,在海思平台上广泛应用于各种领域的嵌入式系统和设备,如智能摄像头、智能家居等。 总之,aarch64-himix210-linux兼容Qt的版本主要有Qt 5.9和Qt 5.12,开发者可以选择其中一个版本来创建、测试和部署他们的应用程序。这将确保应用程序能够在aarch64-himix210-linux平台上顺利运行,并具备良好的性能和稳定性。 ### 回答3: aarch64-himix210-linux是适用于海思HiSilicon的一种64位ARM架构的Linux操作系统。它是为海思芯片量身定制的,因此可以兼容许多版本的Qt。 Qt是一个跨平台的图形用户界面开发框架,可以用于开发各种应用程序。在aarch64-himix210-linux上,可以使用Qt 5版本进行开发。Qt 5是Qt框架的最新版本,具有更多先进的功能和优化。 Qt 5中,提供了许多不同的模块和组件,用于实现不同类型的应用程序,如Qt Widgets、Qt Quick和Qt Multimedia等。这些模块可以在aarch64-himix210-linux上进行开发和调试,以创建适用于该操作系统的应用程序。 此外,Qt还提供了Qt Creator集成开发环境(IDE),可以帮助开发者更快速地创建和调试Qt应用程序。Qt Creator提供了许多有用的工具和功能,如代码编辑器、调试器和可视化设计工具,使开发过程更加便捷。 总结而言,aarch64-himix210-linux兼容Qt 5及其各个模块和组件。开发者可以使用Qt Creator来编写、调试和部署适用于aarch64-himix210-linux的应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值