OpenWRT: Build Firmware X86: Difference between revisions

From OnnoCenterWiki
Jump to navigationJump to search
Onnowpurbo (talk | contribs)
Onnowpurbo (talk | contribs)
 
(15 intermediate revisions by the same user not shown)
Line 2: Line 2:


  sudo su
  sudo su
  apt-get update
  apt update
  apt-get install subversion gawk flex sharutils bison libz-dev zlib1g-dev patch \
  apt -y install subversion gawk flex sharutils bison libz-dev zlib1g-dev patch \
  fakeroot lzma git-core build-essential unzip libncurses5-dev curl php-xml-parser \
  fakeroot lzma git git-core build-essential unzip libncurses5-dev curl \
  libexpat1 libexpat1-dev libssl-dev libdaemon*
  libexpat1 libexpat1-dev libssl-dev libdaemon* \
libdaemon0-dbg libdaemon-generic-perl libdaemon0 libdaemon-dev libdaemon-doc libdaemon-control-perl
 
Install XML-Parser


  cd /usr/local/src
  cd /usr/local/src
Line 13: Line 16:
  perl Makefile.PL
  perl Makefile.PL
  make install
  make install


==Compile Menggunakan Development Trunk==
==Compile Menggunakan Development Trunk==
Line 21: Line 23:
Lakukan sebagai '''user biasa'''
Lakukan sebagai '''user biasa'''


  svn co svn://svn.openwrt.org/openwrt/trunk/ ~/openwrt.trunk/trunk
  cd ~
  cd ~/openwrt.trunk/trunk/
git clone https://github.com/openwrt/openwrt.git
  cd openwrt
  ./scripts/feeds update
  ./scripts/feeds update
  ./scripts/feeds install meshwizard openssh-server openssh-client
  ./scripts/feeds install meshwizard openssh-server openssh-client
Line 29: Line 32:
  ./scripts/feeds install luci-app-olsr-viz luci-app-freifunk-policyrouting luci-mod-freifunk
  ./scripts/feeds install luci-app-olsr-viz luci-app-freifunk-policyrouting luci-mod-freifunk
  ./scripts/feeds install luci-theme-freifunk-generic olsrd olsrd-mod-txtinfo olsrd-mod-dyn-gw
  ./scripts/feeds install luci-theme-freifunk-generic olsrd olsrd-mod-txtinfo olsrd-mod-dyn-gw
./scripts/feeds install luci-i18n-olsr-en
  ./scripts/feeds install olsrd-mod-dyn-gw-plain olsrd-mod-dot-draw
  ./scripts/feeds install olsrd-mod-dyn-gw-plain olsrd-mod-dot-draw
  ./scripts/feeds install olsrd-mod-arprefresh olsrd-mod-watchdog olsrd-mod-tas olsrd-mod-httpinfo
  ./scripts/feeds install olsrd-mod-arprefresh olsrd-mod-watchdog olsrd-mod-tas olsrd-mod-httpinfo
Line 38: Line 42:
  ./scripts/feeds install pptpd ppp-mod-pptp smstools3 picocom
  ./scripts/feeds install pptpd ppp-mod-pptp smstools3 picocom
  ./scripts/feeds install kamailio4 kamailio asterisk18 asterisk11 coova-chilli
  ./scripts/feeds install kamailio4 kamailio asterisk18 asterisk11 coova-chilli
./scripts/feeds install batctl batmand kmod-batman-adv
./scripts/feeds install bird4-uci bird4 bird6-uci bird6 birdc4 birdc6 birdcl4 birdcl6
./scripts/feeds install quagga-bgpd quagga-isisd quagga-libospf quagga-libzebra quagga-ospf6d
./scripts/feeds install quagga ospfd quagga-ripd quagga-ripngd quagga-vtysh quagga-watchquagga
./scripts/feeds install quagga-zebra quagga
./scripts/feeds install openvpn-easy-rsa openvpn-mbedtls openvpn-nossl
./scripts/feeds install openvpn-openssl openwrt-keyring
  ./scripts/feeds update -a
  ./scripts/feeds update -a
  ./scripts/feeds install -a
  ./scripts/feeds install -a
Line 43: Line 54:
  make defconfig
  make defconfig
  make menuconfig
  make menuconfig
  make world
  make world
make -j1 -V=sc world # alternatif untuk  debugging


Hasilnya akan tersimpan di
Hasilnya akan tersimpan di


  ~/openwrt.trunk/trunk/bin/
  ~~/openwrt/bin/targets/x86/64


==Konfigurasi Default==
==Konfigurasi Default==
Line 58: Line 72:
  Target Profile (Generic)  --->
  Target Profile (Generic)  --->
  Target Images  --->
  Target Images  --->
      [*] tar.gz (NEW)
    *** Root filesystem archives ***
      [*] ext4 (NEW)
    [*] cpio.gz
      [*] squashfs (NEW)
    [*] tar.gz
      -*- Build GRUB images (Linux x86 or x86_64 host only)
    *** Root filesystem images ***
      [*]  Use Console Terminal (in addition to Serial) (NEW)
    [*] ext4 --->
      (ttyS0) Serial port device (NEW)
    [*] iso
      (38400) Serial port baud rate (NEW)
    [*] jffs2
      [*] Build VirtualBox image files (VDI)
    [*] squashfs --->
      [*] Build VMware image files (VMDK)
    -*- Build GRUB images (Linux x86 or x86_64 host only)
      -*- Pad images to filesystem size (for JFFS2)  
    [*]  Use Console Terminal (in addition to Serial)
      [*] GZip images (NEW)
    (ttyS0) Serial port device
          *** Image Options ***
    (38400) Serial port baud rate
      (10) Kernel partition size (in MB)
    (5)   Seconds to wait before booting the default entry
      (60) Root filesystem partition size (in MB) (NEW)
    [*] Build VirtualBox image files (VDI)
      (/dev/sda2) Root partition on target device (NEW)
    [*] Build VMware image files (VMDK)
    -*- Pad images to filesystem size (for JFFS2)
    [*] GZip images
    *** Image Options ***
    (25) Kernel partition size (in MB)
    (70) Root filesystem partition size (in MB)
    () Root partition on target device
Kernel modules  --->
    Network Devices  --->
      <*> kmod-3c59x
      <*> kmod-8139cp
      <*> kmod-8139too
      <*> kmod-dummy
      <*> kmod-e100
      -*- kmod-e1000
      <*> kmod-e1000e
      -*- kmod-libphy
      -*- kmod-mii
      <*> kmod-natsemi
      <*> kmod-ne2k-pci
      <*> kmod-pcnet32
      <*> kmod-r8169
      <*> kmod-sis900
      <*> kmod-tg3
      <*> kmod-via-rhine
      <*> kmod-via-velocity
      <*> kmod-vmxnet3   
  LuCI  --->
  LuCI  --->
       1. Collections  --->
       1. Collections  --->
Line 91: Line 131:
       6. Libraries  --->
       6. Libraries  --->


==Konfigurasi untuk Kemampuan Routing==
Agar Firmware OpenWRT mempunyai kemampuan routing yang baik, ada baiknya kita masukan:
Kernel modules > Network Support >
      <*> kmod-gre
      <*> kmod-gre6
      -*- kmod-ip6-tunnel
      -*- kmod-ipip
      <*> kmod-ipsec
      <*>  kmod-ipsec4
      <*>  kmod-ipsec6
      -*- kmod-iptunnel6
      -*- kmod-ipv6
Network Network > Routing and Redirection >
      -*- bird4
      <*> bird4-uci
      -*- bird6
      <*> bird6-uci
      <*> birdc4
      <*> birdc6
      <*> birdcl4
      <*> birdcl6
      <M> ip
      <*> ip-bridge
      <*> ip-full
      <*> olsrd >
            <*>  olsrd-mod-arprefresh
            <*>  olsrd-mod-bmf
            <*>  olsrd-mod-dot-draw
            <*>  olsrd-mod-dyn-gw
            <*>  olsrd-mod-dyn-gw-plain
            <*>  olsrd-mod-httpinfo
            <*>  olsrd-mod-jsoninfo
            <*>  olsrd-mod-mdns
            <*>  olsrd-mod-nameservice
            <*>  olsrd-mod-p2pd
            <*>  olsrd-mod-pgraph
            <*>  olsrd-mod-pud
            <*>  olsrd-mod-quagga
            <*>  olsrd-mod-secure
            <*>  olsrd-mod-sgwdynspeed
            <*>  olsrd-mod-txtinfo
            <*>  olsrd-mod-watchdog
      <*> quagga >
            <*>  quagga-babeld
            <*>  quagga-bgpd
            <*>  quagga-isisd
            -*-  quagga-libospf
            -*-  quagga-libzebra
            <*>  quagga-ospf6d
            <*>  quagga-ospfd
            <*>  quagga-ripd
            <*>  quagga-ripngd
            <*>  quagga-vtysh
            <*>  quagga-watchquagga
            <*>  quagga-zebra


==Pranala Menarik==
==Pranala Menarik==


* [[OpenWRT]]
* [[VirtualBox: Instalasi OpenWRT image]]
* [[Gns3]]
* [[Gns3]]
* [[GNS3: Download]]
* [[GNS3: Download]]
* [[GNS3: Instalasi]]
* [[GNS3: Instalasi]]
* [[IPv6: Quagga]]

Latest revision as of 04:26, 25 December 2019

Siapkan Aplikasi Pendukung

sudo su
apt update
apt -y install subversion gawk flex sharutils bison libz-dev zlib1g-dev patch \
fakeroot lzma git git-core build-essential unzip libncurses5-dev curl \
libexpat1 libexpat1-dev libssl-dev libdaemon* \
libdaemon0-dbg libdaemon-generic-perl libdaemon0 libdaemon-dev libdaemon-doc libdaemon-control-perl

Install XML-Parser

cd /usr/local/src
wget http://www.cpan.org/modules/by-module/XML/XML-Parser-2.44.tar.gz
tar zxvf XML-Parser-2.44.tar.gz
cd /usr/local/src/XML-Parser-2.44
perl Makefile.PL
make install

Compile Menggunakan Development Trunk

Development Trunk tampaknya paling RECOMMENDED

Lakukan sebagai user biasa

cd ~
git clone https://github.com/openwrt/openwrt.git
cd openwrt
./scripts/feeds update
./scripts/feeds install meshwizard openssh-server openssh-client
./scripts/feeds install freifunk-common freifunk-gwcheck freifunk-mapupdate
./scripts/feeds install luci luci-app-meshwizard luci-app-olsr luci-app-olsr-services
./scripts/feeds install luci-app-olsr-viz luci-app-freifunk-policyrouting luci-mod-freifunk
./scripts/feeds install luci-theme-freifunk-generic olsrd olsrd-mod-txtinfo olsrd-mod-dyn-gw
./scripts/feeds install luci-i18n-olsr-en
./scripts/feeds install olsrd-mod-dyn-gw-plain olsrd-mod-dot-draw
./scripts/feeds install olsrd-mod-arprefresh olsrd-mod-watchdog olsrd-mod-tas olsrd-mod-httpinfo
./scripts/feeds install olsrd-mod-pgraph olsrd-mod-secure olsrd-mod-bmf
./scripts/feeds install luci-app-upnp minidlna miniupnpc miniupnpd luci-app-minidlna
./scripts/feeds install libdlna libgupnp libgupnp-dlna rtorrent
./scripts/feeds install usb-modeswitch usb-modeswitch-data usbutils multiwan
./scripts/feeds install 6in4 6rd 4th 6to4 6tunnel libdaemon aprx usb-modeswitch
./scripts/feeds install pptpd ppp-mod-pptp smstools3 picocom
./scripts/feeds install kamailio4 kamailio asterisk18 asterisk11 coova-chilli
./scripts/feeds install batctl batmand kmod-batman-adv
./scripts/feeds install bird4-uci bird4 bird6-uci bird6 birdc4 birdc6 birdcl4 birdcl6
./scripts/feeds install quagga-bgpd quagga-isisd quagga-libospf quagga-libzebra quagga-ospf6d
./scripts/feeds install quagga ospfd quagga-ripd quagga-ripngd quagga-vtysh quagga-watchquagga
./scripts/feeds install quagga-zebra quagga
./scripts/feeds install openvpn-easy-rsa openvpn-mbedtls openvpn-nossl
./scripts/feeds install openvpn-openssl openwrt-keyring
./scripts/feeds update -a
./scripts/feeds install -a
make clean
make defconfig
make menuconfig


make world
make -j1 -V=sc world # alternatif untuk  debugging

Hasilnya akan tersimpan di

~~/openwrt/bin/targets/x86/64

Konfigurasi Default

Konfigurasi untuk X86 untuk simulasi GNS3


Target System (x86)  --->
Subtarget (Generic)  --->
Target Profile (Generic)  --->
Target Images  --->
   *** Root filesystem archives ***
   [*] cpio.gz
   [*] tar.gz
   *** Root filesystem images ***
   [*] ext4  --->
   [*] iso
   [*] jffs2
   [*] squashfs  --->
   -*- Build GRUB images (Linux x86 or x86_64 host only)
   [*]   Use Console Terminal (in addition to Serial)
   (ttyS0) Serial port device
   (38400) Serial port baud rate
   (5)   Seconds to wait before booting the default entry
   [*] Build VirtualBox image files (VDI)
   [*] Build VMware image files (VMDK)
   -*- Pad images to filesystem size (for JFFS2)
   [*] GZip images
   *** Image Options ***
   (25) Kernel partition size (in MB)
   (70) Root filesystem partition size (in MB)
   ()  Root partition on target device
Kernel modules  --->
   Network Devices  --->
      <*> kmod-3c59x
      <*> kmod-8139cp
      <*> kmod-8139too
      <*> kmod-dummy
      <*> kmod-e100
      -*- kmod-e1000
      <*> kmod-e1000e
      -*- kmod-libphy
      -*- kmod-mii
      <*> kmod-natsemi
      <*> kmod-ne2k-pci
      <*> kmod-pcnet32
      <*> kmod-r8169
      <*> kmod-sis900
      <*> kmod-tg3
      <*> kmod-via-rhine
      <*> kmod-via-velocity
      <*> kmod-vmxnet3    
LuCI  --->
      1. Collections  --->
            -*- luci
            <*> luci-ssl
      2. Modules  --->
            -*- luci-base
            -*- luci-mod-admin-full
      3. Applications  --->
            -*- luci-app-firewall
      4. Themes  --->
            -*- luci-theme-bootstrap
            <*> luci-theme-openwrt
      5. Protocols  --->
            <*> luci-proto-3g
            <*> luci-proto-ipv6
            -*- luci-proto-ppp
      6. Libraries  --->


Konfigurasi untuk Kemampuan Routing

Agar Firmware OpenWRT mempunyai kemampuan routing yang baik, ada baiknya kita masukan:

Kernel modules > Network Support >
      <*> kmod-gre
      <*> kmod-gre6
      -*- kmod-ip6-tunnel
      -*- kmod-ipip
      <*> kmod-ipsec
      <*>   kmod-ipsec4
      <*>   kmod-ipsec6
      -*- kmod-iptunnel6
      -*- kmod-ipv6
Network Network > Routing and Redirection >
      -*- bird4
      <*> bird4-uci
      -*- bird6
      <*> bird6-uci
      <*> birdc4
      <*> birdc6
      <*> birdcl4
      <*> birdcl6
      <M> ip
      <*> ip-bridge
      <*> ip-full
      <*> olsrd >
            <*>   olsrd-mod-arprefresh
            <*>   olsrd-mod-bmf
            <*>   olsrd-mod-dot-draw
            <*>   olsrd-mod-dyn-gw
            <*>   olsrd-mod-dyn-gw-plain
            <*>   olsrd-mod-httpinfo
            <*>   olsrd-mod-jsoninfo
            <*>   olsrd-mod-mdns
            <*>   olsrd-mod-nameservice
            <*>   olsrd-mod-p2pd
            <*>   olsrd-mod-pgraph
            <*>   olsrd-mod-pud
            <*>   olsrd-mod-quagga
            <*>   olsrd-mod-secure
            <*>   olsrd-mod-sgwdynspeed
            <*>   olsrd-mod-txtinfo
            <*>   olsrd-mod-watchdog
      <*> quagga >
            <*>   quagga-babeld
            <*>   quagga-bgpd
            <*>   quagga-isisd
            -*-   quagga-libospf
            -*-   quagga-libzebra
            <*>   quagga-ospf6d
            <*>   quagga-ospfd
            <*>   quagga-ripd
            <*>   quagga-ripngd
            <*>   quagga-vtysh
            <*>   quagga-watchquagga
            <*>   quagga-zebra

Pranala Menarik