程序中用到的核心代码用库的形式进行封装,并且给出示例程序,下面给出一个程序文件夹的建立脚本。

如运行sh MakeProject.sh  PersonNameIdentification PNILib TestCode

表示顶层目录名字叫做PersonNameIdentification,该目录下面有PNILib 和TestCode两个目录,分别存放核心代码库和调用接口。除此之外顶层文件下还有Scripts Documents Resource Data目录。

功能如下: 1. Scripts目录下存放相关的功能脚本或者起补充功能的功能脚本,Documents目录下有算法的涉及逻辑实验报告评测等内容 Resource统一存放算法或者程序需要用到的数据资源 Data目录为临时的数据文件,包括工程项目自身临时产生的,或者是偶尔来了一个临时任务的数据;

Makefile.am configure.ac等自动Makefile的宏在顶层目录处理之下

这样做的好处是:方便代码移植和SVN归档。

liuyu: ~/Utilities/PersonNameIdentification$ l
总计 0
drwxrwxr-x 2 liuyu liuyu 6 08-22 17:49 Resource
drwxrwxr-x 2 liuyu liuyu 6 08-22 17:49 PNILib
drwxrwxr-x 2 liuyu liuyu 6 08-22 17:49 TestCode
drwxrwxr-x 2 liuyu liuyu 6 08-22 17:49 Scripts
drwxrwxr-x 2 liuyu liuyu 6 08-22 17:49 Data
drwxrwxr-x 2 liuyu liuyu 6 08-22 17:49 Documents

########################################################################
# Copyright (C) All rights reserved.
#
# 文件名称:MakeProject.sh
# 创 建 者:刘禹
# 创建日期:2013年08月22日
# 描 述:
#
# 备 注:
#
#########################################################################
#!/bin/bash # please add your code here!
if [ -z $ ]; then
echo "USAGE: prog [IN]input_file"
exit;
fi
if [ -z $ ]; then
echo "USAGE: prog [IN]input_file"
exit;
fi
if [ -z $ ]; then
echo "USAGE: prog [IN]input_file"
exit;
fi
#以下两行为配置crontab 运行环境
#source /etc/profile
#source ~/.bash_profile
#可以产生core
ulimit -c unlimited
curdir=`pwd`
mkdir $;
cd $;
#代码中所用资源
mkdir Resource;
#C代码库目录
mkdir $;
#C代码调用程序
mkdir $
#临时数据目录
mkdir Data;
#辅助脚本目录
mkdir Scripts;
#代码文档和说明目录
mkdir Documents;
cd ${curdir};
echo "$0 has finished,congratulations!">&;

工程技巧Linux上建立工程项目的更多相关文章

  1. 部署springboot工程到linux上及遇到的坑

    一.步骤 1.将工程打成jar包 IDEA中点击file-project structure,如下图: 选择Artifacts-JAR-From modules,选择入口类Main Class,如下图 ...

  2. 在linux上建立多个ORACLE的实例

    1.打开终端,输入如下的命令:      [root@ptest4 ~]# export DISPLAY=localhost:1       [root@ptest4 ~]# xhost + 2.切换 ...

  3. 在Linux上使用cmake创建CodeBlocks工程

    最近在linux上使用cmake,对于使用GUI习惯的还真不能适应,真是想尽一切办法把原来使用cmake的工程创建成CodeBlocks工程.工程小了还能接受,工程大了太麻烦了. 看了一下cmake的 ...

  4. Linux git 在自己的服务器上建立 git 仓库(repository)

    Linux git 在自己的服务器上建立 git 仓库(repository) 服务器端: 在这里使用 ssh 方式登陆: ssh [username]@server_address(建议用超级用户登 ...

  5. 两台linux之间建立信任关系,实现免密码ssh远程登录或scp数据上传

    两台linux之间建立信任关系,实现免密码远程登录或数据上传 1.执行ssh-keygen命令,生成建立安全信任关系的证书: linux1上:执行命令  ssh-keygen  -t rsa 在程序提 ...

  6. mkfs在特定的分区上建立 linux 文件系统

    Linux mkfs命令用于在特定的分区上建立 linux 文件系统 使用方式 : mkfs [-V] [-t fstype] [fs-options] filesys [blocks]参数 :    ...

  7. 12.linux上Apache虚拟主机的建立和https协议网站建立

    一.Apache虚拟主机的建立   虚拟web主机 在同一台服务器上建立多个web站点,每个站点不独占用一台真正的服务器       1.建立dns解析 两个域名同一个ip               ...

  8. GIT在Linux上的安装和使用简介

    GIT最初是由Linus Benedict Torvalds为了更有效地管理Linux内核开发而创立的分布式版本控制软件,与常用的版本控制工具如CVS.Subversion不同,它不必服务器端软件支持 ...

  9. 在LINUX上创建GIT服务器【转】

    转自:http://blog.csdn.net/xiongmc/article/details/9176785 如果使用git的人数较少,可以使用下面的步骤快速部署一个git服务器环境. 1. Cli ...

随机推荐

  1. FLASH CC 2015 CANVAS (六)如何像FLASH那样实现场景(多canvas)

    注意 此系列贴 为个人边“开荒”边写,所以不保证就是最佳做法,也难免有错误! 正式教程会在后续开始更新. swf 项目中,我们可以很容易在一个fla文档里创建多场景.也可以通过多个fla文件发布多个s ...

  2. Android ActionBar以及menu的代码设置样式

    menu部分xml代码 <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android= ...

  3. iOS - UIKit

    1.UIKit 框架基本结构 1)控件 屏幕上的所有 UI 元素都叫做控件(也有叫做视图.组件),比如按钮(UIButton).文本(UILabel)都是控件. 为了便于开发者打造各式各样的优秀 Ap ...

  4. Java 日期往后推迟n天

    在Java中经常会遇到,以指定的日期为基准,计算向后n天<n可以为正.负数,负数为向前移>. 这时需要在Date类的基础上使用Calendar类,处理方法基本如下: import java ...

  5. 禁止ubuntu的super快捷键

    在mac上安装了ubuntu虚拟机, 但是发现command健(ubuntu中叫super健)被系统占用了, 习惯了command健的同学来说非常不方便, 如何禁用默认的command健呢? You ...

  6. Linux内核访问外设I/O--动态映射(ioremap)和静态映射(map_desc) (转载)

    [转](转)Linux内核访问外设I/O资源的方式-静态映射(map_desc)方式 Linux内核访问外设I/O资源的方式 Author: Dongas Date: 08-08-02 我们知道默认外 ...

  7. Python学习(5)条件语句

    目录 Python 条件语句 Python 简单的语句组 Python 条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了 ...

  8. mysql 1030 Got error 28 from storage engine

    mysql 1030 Got error 28 from storage engine 错误原因:磁盘临时空间不够. 解决办法:df -h 查看设备存储的使用情况 du -h --max-depth= ...

  9. JS常用方法函数

    document.write("");为 输出语句    2.JS中的注释为//    3.传统的HTML文档顺序是:document->html->(head,bod ...

  10. (五)c语言条件编译#ifdef与#if defined

    c语言条件编译#ifdef与#if defined defined NAME是用来判断NAME是否被定义了(被用define定义了). #ifdef NAME == #if defined(NAME) ...