testProj/src/test.c1.创建工程目录
1.mkdir testProj
2.cd testProj
3.mkdir src
4.mkdir include
5.mkdir build
2.编写CMakeLists.txt
#appoint to cmake verison
cmake_minimum_required(VERSION 2.8)
#project name
PROJECT(testProj)
#head file path
INCLUDE_DIRECTORIES(
"./include"
"/home/samba/gcc-3.4.6-glibc-2.3.6/arm-linux/arm-linux/include"
)
#source directory
AUX_SOURCE_DIRECTORY(src DIR_SRCS)
LINK_DIRECTORIES(
"/home/samba/gcc-3.4.6-glibc-2.3.6/arm-linux/arm-linux/lib"
)
#set environment variable
SET(TEST_MATH
${DIR_SRCS}
)
#add executalbe file
ADD_EXECUTABLE(${PROJECT_NAME} ${TEST_MATH})
#add link library
#TARGET_LINK_LIBRARIES(/home/samba/gcc-3.4.6-glibc-2.3.6/arm-linux/arm-linux/lib m)
3.添加代码testProj/src/test.c
#include "stdio.h"
#include "../include/mysum.h"
int main(int argc, char* argv[])
{
int a,b,sum;
if(argc < 3){
printf("input parameter lost");
return -1;
}
a =atoi(argv[1]);
b =atoi(argv[2]);
sum =mySum(a,b);
printf("%d+%d=%d",a,b,sum);
return 0;
}
添加testProj/src/mysum.c
#include "stdio.h"
int mySum(int a,int b)
{
return (a+b);
}
添加testProj/include/mysum.h
#ifndef __MY_SUM_H___
#define __MY_SUM_H___
extern int mySum(int a,int b);
#endif
4.指定编译器
export CC=/home/samba/gcc-3.4.6-glibc-2.3.6/arm-linux/bin/arm-linux-gcc
export CXX=/home/samba/gcc-3.4.6-glibc-2.3.6/arm-linux/bin/arm-linux-g++
5.执行编译(在build目录中执行)
cmake ..
make