Difference between revisions of "Compiling"
(Created initial page) |
|||
(13 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | |||
− | The following commands will allow you to compile | + | [[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 | + | 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 17: | Line 28: | ||
== Install requirements for building == | == Install requirements for building == | ||
− | apt-get install -y git build-essential | + | 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 === | |
− | == Asterisk Prereqs == | + | apt-get install -y linux-headers-generic linux-source |
+ | |||
+ | === Install Asterisk Prereqs === | ||
mkdir /etc/vpb | mkdir /etc/vpb | ||
Line 31: | Line 44: | ||
apt-get install -f | 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 | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | cd | ||
− | |||
− | |||
− | |||
− | |||
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 | + | === 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 67: | 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 | + | === Build Asterisk for PTTLink === |
+ | git clone https://github.com/PTTLink/Asterisk | ||
cd Asterisk/asterisk | cd Asterisk/asterisk | ||
+ | '''./bootstrap.sh''' | ||
make distclean | make distclean | ||
− | ./configure CXX=g++-4.9 CC=gcc-4.9 | + | ./configure CXX=g++-4.9 CC=gcc-4.9 <code>LDFLAGS="-zmuldefs -lasound" CFLAGS="-Wno-unused -Wno-all -Wno-int-conversion"</code> |
− | make menuselect.makeopts | + | 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 | + | 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 | ||
make install | make install | ||
+ | |||
+ | You can optionally install the sample Asterisk config files | ||
+ | |||
make samples | make samples | ||
− | == Final == | + | 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. | 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
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