Mac M1下Clion编译错误:Undefined symbols for architecture x86_64和ld: symbol(s) not found for architecture

问题:

Undefined symbols for architecture arm64:

  "_main", referenced from:

     implicit entry/start for main executable

ld: symbol(s) not found for architecture arm64

clang: error: linker command failed with exit code 1 (use -v to see invocation)

解决:
去掉了C编译环境和C++编译环境

/opt/homebrew/Cellar/gcc/13.1.0/bin/g++-13
/opt/homebrew/Cellar/gcc/13.1.0/bin/gcc-13

请添加图片描述
main.cp如下:

#include <iostream>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main() {
    cv::Mat image = cv::imread("/Users/xinwu/Desktop/opencv_demo/00.jpg");
    cout<<image.size<<endl;
    imshow("tuxiang",image);
    cv::waitKey(0);
    std::cout << "Hello, World!" << std::endl;
    return 0;
}

CMakeLists.txt,注意cmake版本与你安装的一致
add_executable()target_linnk_libraries()顺序不能写,如下:

cmake_minimum_required(VERSION 3.26)
project(opencv_demo)

set(CMAKE_CXX_STANDARD 11)

find_package(OpenCV)
include_directories(${OpenCV_INCLUDE_DIRS})
add_executable(opencv_demo main.cpp)

target_link_libraries(opencv_demo ${OpenCV_LIBS})
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

进阶媛小吴

规则简单易懂,粗暴却完美!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值