I suggest that you use Module::Build instead of ExtUtils::MakeMaker.

过程 6.2. MakeMaker

  1. Makefile.PL

    use ExtUtils::MakeMaker;WriteMakefile(NAME      => 'Hello',VERSION   => '1.00',EXE_FILES => ['hello']
    );
  2. MANIFEST

    Makefile.PL
    hello
  3. hello

    #!/usr/bin/env perluse strict;
    use warnings;print "Hello, world!\n";

    $ chmod u+x hello

  4. $ perl Makefile.PL

    neo@master:~/neo/unit-test$ perl Makefile.PL
    Checking if your kit is complete...
    Looks good
    Writing Makefile for Hello
  5. $ make dist

    neo@master:~/neo/unit-test$ make dist
    rm -rf Hello-1.00
    \/usr/bin/perl "-MExtUtils::Manifest=manicopy,maniread" \-e "manicopy(maniread(),'Hello-1.00', 'best');"
    mkdir Hello-1.00
    Generating META.yml
    Could not add META.yml to MANIFEST: Could not open MANIFEST: No such file or directory at /usr/share/perl/5.8/ExtUtils/Manifest.pm line 565.tar cvf Hello-1.00.tar Hello-1.00
    Hello-1.00/
    Hello-1.00/hello
    Hello-1.00/META.yml
    Hello-1.00/Makefile.PL
    rm -rf Hello-1.00
    gzip --best Hello-1.00.tarneo@master:~/neo/unit-test$ ls
    hello  Hello-1.00.tar.gz  Makefile  Makefile.PL  MANIFEST

    get tarball ready to install with tar zxvf Hello-1.00.tar.gz; cd Hello-1.00; perl Makefile.PL; make; make install

  6. test

    make test

    TEST_FILE

    make test TEST_FILE=t/hello.t

    testdb

    make testdb TEST_FILE=t/hello.t
    

原文出处:Netkiller 系列 手札
本文作者:陈景峯
转载请与作者联系,同时请务必标明文章原始出处和作者信息及本声明。

6.2. ExtUtils::MakeMaker相关推荐

  1. rrdtool安装编译提示错误:Can’t locate ExtUtils/MakeMaker.pm in @INC

    转自:http://www.91rhca.com/976.html Make错误详细信息: Can't locate ExtUtils/MakeMaker.pm in @INC (@INC conta ...

  2. Can't locate ExtUtils/MakeMaker.pm

    2019独角兽企业重金招聘Python工程师标准>>> sudo yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker ...

  3. linux+postfix+extmail+dovecot搭建邮件服务器

    一.我们可以重新搭建服务器,也可以利用我前面的搭建方法编译安装,地址: http://wangzan18.blog.51cto.com/8021085/1605480,本次我们使用yum的方法来安装h ...

  4. jenkins使用Git为源码管理(windows master linux slave)

    作为一个不太经常总结的人,工作以来碰到过太多问题!往往解决之后没有有效记录,导致再次碰到需要重新查资料解决.现在改变下习惯,努力搞的了技术. 公司最近提倡开源(以前啥都机密,即使开源也没改变多少),代 ...

  5. 从cpan上安装perl模块

    CPAN是perl的一个第三方源码模块库,里面有上百万的perl模块,用来支撑perl强大的功能,从生物工程到天文计算,从宏观世界到原子力学,无所不有.为了很方便的安装perl模块,有人做了一个CPA ...

  6. 在CcentOS系统上将deb包转换为rpm包

    deb文件格式本是ubuntu/debian系统下的安装文件,那么我想要在redhat/centos/fedora中安装,需要把deb格式的软件包转化成rpm格式.   需要用到的转换工具:alien ...

  7. 利用mk-table-checksum监测Mysql主从数据一致性操作记录

    前面已经提到了mysql主从环境下数据一致性检查:mysql主从同步(3)-percona-toolkit工具(数据一致性监测.延迟监控)使用梳理 今天这里再介绍另一种Mysql数据一致性自动检测工具 ...

  8. BRCM5.02编译八: ERROR: you are missing a basic functioning perl installation

    现象: Checking libtoolize version: 2.4.2 Checking tar version: 1.26 ERROR: you are missing a basic fun ...

  9. 搭建私有Git服务器

    前言  远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改.GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得 ...

  10. DBA(六):MHA集群

    MHA集群概述 MHA介绍 MHA(Master High Availability) 由日本DeNA公司youshimaton开发 是一套优秀的实现MySQL高可用的解决方案 数据库的自动解决故障切 ...

最新文章

  1. linux 学习笔记 (五)
  2. 如何扩展Dojo tree成chekbox tree
  3. 定义变量时无引号,单引号,双引号区别与特点:
  4. 机器学习(5)--化无限为有限
  5. 福州大学java期末试卷2012_福州大学 07Java语言程序设计试卷(A卷).doc
  6. 一个简单的 Generic Factory 类
  7. 修复ext4日志(jbd2)bug( Ext4 文件系统有以下 Bug)
  8. 无人驾驶之入门(开篇)
  9. Redhat/CentOS修改主机名
  10. cubieboard开发板简介
  11. 【渝粤题库】广东开放大学 网络风险评估 形成性考核
  12. java将office文档,word,ppt,pdf文档转换成swf文件在线预览
  13. 2022金九银十Android大厂面试题来袭,面试字节跳动被问Android屏幕适配方案
  14. 从SQL出发,程序开发的必备大法
  15. 金蝶eas系统服务器连接,金蝶eas服务器连接设置
  16. birthday中文是什么_birthday是什么意思_birthday在线翻译_英语_读音_用法_例句_海词词典...
  17. 2018年GitHub最流行Python开源项目
  18. 设计模式之举例说 设计原则
  19. python做飞机大战游戏单机_Python制作简易版飞机大战小游戏
  20. cass实体编码列表

热门文章

  1. 【原创】MySql常见出错解决
  2. ORACLE DELETE数据慢的案例
  3. ASP.NET WebService 中使用 ASP.NET_SessionId
  4. 查看设备UUID的方法
  5. Linux Kernel中irq handler, softirq handler 和 tasklet
  6. Android WiFi Dhcp 获取到 IP 和配置的过程
  7. Java的GUI学习九(列出指定目录内容)
  8. 51单片机redefinition_关于c51单片机的一个问题
  9. mockito 外部接口_mockito – Spring批处理作业的端到端测试用例
  10. python劣势_Ruby对比Python的优势和劣势