openWrt軟件移植簡述

進入package目錄下,新建目錄my_netcat。

編寫如下Makefile


include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=netcat //軟件名字
PKG_RELEASE:=1 //當前Makefile版本
PKG_SOURCE_URL:= http://sourceforge.net/projects/netcat/files/netcat/0.7.1/ //軟件下載目錄
PKG_VERSION:=0.7.1 //軟件版本
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz //軟件下載名字(跟在軟件目錄後形成完整下載路徑)
include $(INCLUDE_DIR)/package.mk
define Package/my_netcat
  SECTION:=net//軟件類型
  CATEGORY:=Base system //make menuconfig 存在的一級目錄
  TITLE:=This simple utility reads and writes data across TCP or UDP network connections.
  URL:=http://sectools.org/tool/netcat/
endef
define Package/my_netcat/install //安裝軟件
    $(INSTALL_DIR) $(1)/usr/sbin
    $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/netcat $(1)/usr/sbin/my_netcat
endef
$(eval $(call BuildPackage,my_netcat))


添加完成後,回到根目錄make meuconfig


wKioL1M5PXaiguXPAAqyId4sHxw998.jpg

勾選my_netcat,make V=99完成編譯


root@DreamBox:/usr/bin# m
md5sum      mkdir       mknod       mktemp      mount_root  mv
mesg        mkfifo      mkswap      mount       mtd         my_netcat
root@DreamBox:/usr/bin# my_netcat -h
GNU netcat 0.7.1, a rewrite of the famous networking tool.
Basic usages:
connect to somewhere:  my_netcat [options] hostname port [port] ...
listen for inbound:    my_netcat -l -p port [options] [hostname] [port] ...
tunnel to somewhere:   my_netcat -L hostname:port -p port [options]

Mandatory arguments to long options are mandatory for short options too.
Options:
 -c, --close                close connection on EOF from stdin
 -e, --exec=PROGRAM         program to exec after connect
 -g, --gateway=LIST         source-routing hop point[s], up to 8
 -G, --pointer=NUM          source-routing pointer: 4, 8, 12, ...
 -h, --help                 display this help and exit
 -i, --interval=SECS        delay interval for lines sent, ports scanned
 -l, --listen               listen mode, for inbound connects
 -L, --tunnel=ADDRESS:PORT  forward local port to remote address
 -n, --dont-resolve         numeric-only IP addresses, no DNS
 -o, --output=FILE          output hexdump traffic to FILE (implies -x)
 -p, --local-port=NUM       local port number
 -r, --randomize            randomize local and remote ports
 -s, --source=ADDRESS       local source address (ip or hostname)
 -t, --tcp                  TCP mode (default)
 -T, --telnet               answer using TELNET negotiation
 -u, --udp                  UDP mode
 -v, --verbose              verbose (use twice to be more verbose)
 -V, --version              output version information and exit
 -x, --hexdump              hexdump incoming and outgoing traffic
 -w, --wait=SECS            timeout for connects and final net reads
 -z, --zero                 zero-I/O mode (used for scanning)

Remote port number can also be specified as range.  Example: '1-1024'


成功移植netcat.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章