Difference between revisions of "Compiling"

From "PTTLink Wiki"
Jump to navigation Jump to search
m (Added git clone line for Building Asterisk for ASL)
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Compiling AllStarLink =
 
  
The following commands will allow you to compile AllStarLink's ASL 1.01+ release.   
+
[[Category:Software]]
 +
[[Category:Development]]
 +
{{Infobox PTTLink
 +
| image = XCD-compiling.png
 +
| caption = Compiling
 +
| category = How to
 +
}}
 +
 
 +
How to compile the software for your on your own systems.
 +
 
 +
= Compiling PTTLinkLink =
 +
 
 +
The following commands will allow you to compile PTTLinkLink's PTTLink 1.01+ release.   
  
 
These instructions assume you are already familiar with compiling and installing software on Linux.
 
These instructions assume you are already familiar with compiling and installing software on Linux.
Line 7: Line 18:
 
Note:  These instructions are currently a Work In Progress.  You are going to have to resolve dependency issues yourself if you follow them.
 
Note:  These instructions are currently a Work In Progress.  You are going to have to resolve dependency issues yourself if you follow them.
  
You will also need to have cloned the main AllStarLink repo at https://github.com/AllStarLink/Asterisk
+
You will also need to have cloned the main PTTLinkLink repo at https://github.com/PTTLinkLink/Asterisk
  
 
== DO NOT BLINDLY RUN THE COMMANDS HERE WITHOUT UNDERSTANDING WHAT THEY DO!! ==
 
== DO NOT BLINDLY RUN THE COMMANDS HERE WITHOUT UNDERSTANDING WHAT THEY DO!! ==
Line 19: Line 30:
 
   apt-get install -y git build-essential libss7-dev wget apt-utils dahdi-source dahdi-linux aptitude tcsh gawk libusb-dev vim '''libblkid-dev'''
 
   apt-get install -y git build-essential libss7-dev wget apt-utils dahdi-source dahdi-linux aptitude tcsh gawk libusb-dev vim '''libblkid-dev'''
  
== Install Linux Sources/Headers ==
+
== Compiling for PC ==
 +
 
 +
=== Install Linux Sources and Headers ===
  
 
   apt-get install -y linux-headers-generic linux-source
 
   apt-get install -y linux-headers-generic linux-source
  
== Install Asterisk Prereqs ==
+
=== Install Asterisk Prereqs ===
  
 
   mkdir /etc/vpb
 
   mkdir /etc/vpb
Line 31: Line 44:
 
   apt-get install -f
 
   apt-get install -f
  
== Build DAHDI ==
+
=== Build DAHDI ===
  
   git clone https://github.com/AllStarLink/ASL-DAHDI-PATCHED-2.11.1.git
+
   git clone https://github.com/PTTLink/ASL-DAHDI-PATCHED-2.11.1.git
 
   cd ASL-DAHDI-PATCHED-2.11.1
 
   cd ASL-DAHDI-PATCHED-2.11.1
 
   make distclean
 
   make distclean
   make
+
   make MODULES_EXTRA="dahdi_dummy"
   make install
+
   make install MODULES_EXTRA="dahdi_dummy"
 
   make config
 
   make config
  
== Install GCC 4.9 to compile ASL 1.01+ ==
+
=== Install GCC 4.9 to compile PTTLink 1.01+ ===
 
   echo "deb http://ftp.us.debian.org/debian/ jessie main contrib non-free" >> /etc/apt/sources.list  
 
   echo "deb http://ftp.us.debian.org/debian/ jessie main contrib non-free" >> /etc/apt/sources.list  
 
   echo "deb-src http://ftp.us.debian.org/debian/ jessie main contrib non-free" >> /etc/apt/sources.list
 
   echo "deb-src http://ftp.us.debian.org/debian/ jessie main contrib non-free" >> /etc/apt/sources.list
Line 46: Line 59:
 
   apt-get install -y gcc-4.9 g++-4.9
 
   apt-get install -y gcc-4.9 g++-4.9
  
== Build Asterisk for ASL ==
+
=== Build Asterisk for PTTLink ===
  
   git clone https://github.com/AllStarLink/Asterisk
+
   git clone https://github.com/PTTLink/Asterisk
 
   cd Asterisk/asterisk
 
   cd Asterisk/asterisk
 
   '''./bootstrap.sh'''
 
   '''./bootstrap.sh'''
Line 69: Line 82:
 
   make bininstall
 
   make bininstall
  
== Final ==
+
=== Final ===
  
 
There is no guarantee this will work for you.  Your mileage may vary.
 
There is no guarantee this will work for you.  Your mileage may vary.
 +
 +
== Compiling for Raspberry PI ==
 +
 +
Coming soon

Latest revision as of 02:07, 19 March 2022

Compiling
XCD-compiling.png
Compiling


How to compile the software for your on your own systems.

Compiling PTTLinkLink

The following commands will allow you to compile PTTLinkLink's PTTLink 1.01+ release.

These instructions assume you are already familiar with compiling and installing software on Linux.

Note: These instructions are currently a Work In Progress. You are going to have to resolve dependency issues yourself if you follow them.

You will also need to have cloned the main PTTLinkLink repo at https://github.com/PTTLinkLink/Asterisk

DO NOT BLINDLY RUN THE COMMANDS HERE WITHOUT UNDERSTANDING WHAT THEY DO!!

This is for more advanced users. If you are a novice user at building software in a Linux environment or only prefer/can use plug and play/turnkey setups THEN THIS IS NOT FOR YOU TO TRY!

DO NOT TRY THIS ON A RASPBERRY PI UNLESS YOU KNOW HOW TO RESOLVE KERNEL SOURCE/DEPENDENCY ISSUES -- OTHERWISE YOU RUN THE RISK OF BLOWING UP YOUR SYSTEM!!

Install requirements for building

 apt-get install -y git build-essential libss7-dev wget apt-utils dahdi-source dahdi-linux aptitude tcsh gawk libusb-dev vim libblkid-dev

Compiling for PC

Install Linux Sources and Headers

 apt-get install -y linux-headers-generic linux-source

Install Asterisk Prereqs

 mkdir /etc/vpb
 apt-get build-dep asterisk -y
 apt-get purge -y libopenr2-3 libopenr2-dev
 dpkg --configure -a
 apt-get install -f

Build DAHDI

 git clone https://github.com/PTTLink/ASL-DAHDI-PATCHED-2.11.1.git
 cd ASL-DAHDI-PATCHED-2.11.1
 make distclean
 make MODULES_EXTRA="dahdi_dummy"
 make install MODULES_EXTRA="dahdi_dummy"
 make config

Install GCC 4.9 to compile PTTLink 1.01+

 echo "deb http://ftp.us.debian.org/debian/ jessie main contrib non-free" >> /etc/apt/sources.list 
 echo "deb-src http://ftp.us.debian.org/debian/ jessie main contrib non-free" >> /etc/apt/sources.list
 apt-get update
 apt-get install -y gcc-4.9 g++-4.9

Build Asterisk for PTTLink

 git clone https://github.com/PTTLink/Asterisk
 cd Asterisk/asterisk
 ./bootstrap.sh
 make distclean
 ./configure CXX=g++-4.9 CC=gcc-4.9 LDFLAGS="-zmuldefs -lasound" CFLAGS="-Wno-unused -Wno-all -Wno-int-conversion"
 make menuselect.makeopts 
 menuselect/menuselect --enable app_rpt --enable chan_beagle --enable chan_tlb --enable chan_usrp --enable chan_rtpdir --enable chan_usbradio --enable chan_simpleusb --enable chan_echolink --enable app_gps --enable chan_voter --enable radio-tune-menu --enable simpleusb-tune-menu menuselect.makeopts 

You will be taken to the main menuselect screen. Press ESC and "S" to save

 make
 make install

You can optionally install the sample Asterisk config files

 make samples

Note: If you have made any changes and just wish to update the binaries without going through the entire install run:

 make bininstall

Final

There is no guarantee this will work for you. Your mileage may vary.

Compiling for Raspberry PI

Coming soon