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 17: |
Line 28: |
| == Install requirements for building == | | == Install requirements for building == |
| | | |
− | apt-get install -y git build-essential linux-headers-$(uname -r) linux-source-4.9 libss7-dev wget apt-utils dahdi-source dahdi-linux aptitude tcsh gawk libusb-dev vim | + | apt-get install -y git build-essential libss7-dev wget apt-utils dahdi-source dahdi-linux aptitude tcsh gawk libusb-dev vim '''libblkid-dev''' |
| | | |
− | == Get DAHDI source files == | + | == Compiling for PC == |
| | | |
− | wget https://github.com/KG7QIN/AllStarLink/raw/master/dahdi/dahdi-linux-complete-2.10.2%2B2.10.2.tar.gz
| + | === 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 |
| | | |
− | == Extract and build DAHDI == | + | === Build DAHDI === |
| | | |
− | tar -zxf dahdi-linux-complete-2.10.2+2.10.2.tar.gz | + | git clone https://github.com/PTTLink/ASL-DAHDI-PATCHED-2.11.1.git |
− | cd dahdi-linux-complete-2.10.2+2.10.2/linux/drivers/dahdi/voicebus/
| + | cd ASL-DAHDI-PATCHED-2.11.1 |
− |
| |
− | echo "--- GpakApi.c.orig 2018-06-09 18:54:14.205144479 -0700\n" \
| |
− | "+++ GpakApi.c 2018-06-09 18:54:28.196956036 -0700\n" \
| |
− | "@@ -1560,7 +1560,7 @@\n" \
| |
− | " if (DspStatus != 0)\n" \
| |
− | " return (RmmFailure);\n" \
| |
− | " \n" \
| |
− | "- for (i = 0; i < MemoryLength_Word16; i++)\n" \
| |
− | "+ for (i = 0; i < MemoryLength_Word16; i++) \n" \
| |
− | " pDest[i] = (short int) MsgBuffer[2 + i]; \n" > patch1
| |
− |
| |
− | patch -ful GpakApi.c patch1
| |
− |
| |
− | cd dahdi-linux-complete-2.10.2+2.10.2/tools/xpp/
| |
− | sed -i -e 's/inline /extern inline /g' echo_loader.c
| |
− |
| |
− | cd dahdi-linux-complete-2.10.2+2.10.2/ | |
− | sed -i -e 's/configure /configure CFLAGS=-Wno-error /g' Makefile
| |
− | cd tools/xpp
| |
− | sed -i -e 's/-I. -Ixtalk -Wall -Werror/-I. -Ixtalk -Wno-error/g' Makefile
| |
− | 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 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 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 ASL == | + | === 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 <code>LDFLAGS="-zmuldefs -lasound" CFLAGS="-Wno-unused -Wno-all -Wno-int-conversion"</code> | | ./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 |