明远智睿技术论坛

 找回密码
 立即注册
搜索
查看: 3114|回复: 0
打印 上一主题 下一主题

arm-poky-linux-gnueabi-g++和arm-poky-linux-gnueabi-gcc混编Makefile写法

[复制链接]

36

主题

745

帖子

2872

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2872
跳转到指定楼层
楼主
发表于 2019-5-31 10:23:27 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
CB140  对应cpu为cortex-A7          CB200和CB314 对应cpu为cortex-A9
交叉编译工具用arm-poky-linux-gnueabi-g++和arm-poky-linux-gnueabi-gcc混编

1.新建main.c  Makefile  myinclude.h  test.cpp

vim main.c
//filename main.c
#include <stdlib.h>
#include <stdio.h>

#include "myinclude.h"

int main()
{
    test_fun();
    return 0;
}


vim test.cpp
//filename test.cpp
#include <iostream>

#include "myinclude.h"

void test_fun()
{
    std::cout<<"hello, this is a c++ test"<<std::endl;
}


vim myinclude.h
//filename myinclude.h
#ifndef MYINCLUDE_H
#define MYINCLUDE_H

#ifdef __cplusplus
extern "C"{  //当使用g++编译时,这里将会被编译器识别,使用gcc编译时则跳过,这样这个公共头文件对不同的编译器产生不同的代码
#endif

    void test_fun();

#ifdef __cplusplus
}
#endif

#endif  //MYINCLUDE_H


vim Makefile
SRCFILES := test.cpp myinclude.h main.c
OBJFILES := test.o main.o
TARGET=my_cpp

$(TARGET)(OBJFILES)
        $(CXX) $(OBJFILES) -o $@
$(OBJFILES)(SRCFILES)
        $(CXX) test.cpp -c\
        $(CC ) main.c -c


.PHONY:
clean:.PHONY
        rm -rf $(OBJFILES) $(TARGET)


2.设置交叉编译工具
MY-IMX6-A9 系列交叉编译工具设置
source /opt/fsl-imx-fb-glibc-x86_64-meta-toolchain-qt5-cortexa9hf-neon-toolchain-4.1.15-2.1.0/environment-setup-cortexa9hf-neon-poky-linux-gnueabi


MY-IMX6-A7 系列交叉编译工具设置
source  /home/myzr/my-work/03_toolchain/fsl-imx-x11-glibc-x86_64-meta-toolchain-qt5-cortexa7hf-neon-toolchain-4.1.15-2.1.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi


注意:按CPU型号设置交叉编译工具就行
设置后好,默认设置好CC和CXX
echo $CC
echo $CXX



3.编译
make


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|明远智睿  

GMT+8, 2024-11-23 08:42 , Processed in 0.059531 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表