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. Atitit.播放系统的选片服务器,包厢记时系统 的说明,教程,维护,故障排查手册p825...
  2. Spring Boot –适合您的靴子!
  3. 容器编排技术 -- Kubernetes kubectl delete 命令详解
  4. 886. 求组合数 II(模板)
  5. android真机调试看不到logcat信息
  6. 北京联通光猫 F427 路由改桥接的方法
  7. Dll学习心得(2)
  8. Power BI数据源之web
  9. Java学习博客第一篇
  10. 植物免疫研究与抗病虫绿色防控:进展、机遇与挑战
  11. @Aspect不生效
  12. 别再说不会分析多选题了!这6种方法解决你的烦恼!
  13. 浅谈framework之PowerManagerService
  14. Swift 检查版本更新 itunes
  15. 12864液晶8x16ascii点阵_【单片机自学】7.液晶实验
  16. JavaScript运行原理解析
  17. day01 计算机的基本知识
  18. 【Nav2中文网】七、配置指南(八)Smac 2D规划器 之 Smac国家格规划器
  19. 2021-03-08NDVI(未完,待续)
  20. ps流 转发_(转)RTP协议全解(H264码流和PS流)

热门文章

  1. 一周试用yii开发一个带各种该有功能的web程序(三)
  2. TCP/IP之socket编程
  3. ABP源码分析五:ABP初始化全过程
  4. Java排序算法(四):Shell排序
  5. Android SDK Tools Platform-tools Build-tools
  6. 完善的WebGis地图编辑器
  7. 几个负载均衡软件比较(Haproxy vs LVS vs Nginx)
  8. linux压缩和备份工具
  9. Android 四大组件学习之Activity二
  10. Linux内核中的PID散列表实例