Upgrading from version 1.2.13 to 1.6x

I am running Debian, and using the ‘apt-get install astersisk’ command only installs version 1.1.13, however I see that version 1.6.x has officially been released for some time. Is there anyway to force the apt-get command to fetch the newest version? My main issue is that version 1.2.13 doesnt support the GUI, and I really need that for this to work. I have tried downloading the .tar.gz file for the newest verison, but the “make install” command always comes up with errors. As 1.2.13 installs smoothly, is there an easy (command line!) way for me to get my Asterisk updated to the newest release??

What version of Debian are you running? It’s true that the Asterisk version in lenny (now the stable release) is 1.1.14 and this is all you will get with apt-get. However, you can download sources of later releases and run them, I’m using 1.6.0.6. Don’t forget to run ./configure before running make (menuselect).

Ian

I am running Debian version 2.6.12.6-arm1. When try to “make” the newest version (1.4+) of asterisk I get an error that says:

“-f command not found”

Also, when I run ./configure I get the following error:

“C++ preprocessor /lib/cpp fails sanity check”

When you run .configure in the asterisk directory, does it give you any errors?

Yes the c++ preprocessor error listed above is what I get when I run ./configure.

Do you have g++ installed?

apt-get install g++

Ok thanks G++ was not installed. I installed it, now the new error I am getting is

“configure:error termcap support not found”

Try
apt-get install libncurses-dev

You might also need to install the packages ncurses-term and ncurses-base - I can’t remember the dependencies.

Bah! It loaded and then failed on the last step due to the dev/root being full. I am going to see if I can free up some space or install it someplace else.

Ok, I tried to install it at another location however the new error is as follows:

“bad value (armv5tejl) for -march=switch”

“unknown architecture ‘arm5tejl’”
"make [2] *** [src/add.o] Error1"
"make[1] *** [gsm/lib/libgsm.a] Error 2"
“make: *** [codecs] Error 2”

As the message suggests, your architecture is not recognised by the compiler. I don’t have any experience with ARM devices so I can’t help much, but you could try changing the flag -march=xxxx in the Makefile, or removing it completely.

Ian

Do you think removing that line (referencing the hardware type) will cause any issues running the program?

Not if it compiles without errors.

Thats a good point. Which do you think is better, changing it to “xxxx” or deleting it? I should say, which do you think is less likely to cause conflict?

By xxxx I meant something similar to your architecture - you’ll have to look in the Makefile to see what values you can use. In my Makefile, for 1.6.0.6, it looks like you can set it to arm. Or you can just try without and see if it works. As I said, I have no experience with ARM devices, so I can’t give you much help.

Forgive me for my lack of knowledge on this topic, but where is the makefile located so that I can edit it? Below you will see what exists in the 1.4 directory.

root@LS-GL7D6:/mnt/disk1/asterisk/asterisk-1.4.23.1# ls
BUGS apps contrib menuselect-tree
CHANGES autoconf defaults.h menuselect.makedeps
COPYING bootstrap.sh doc menuselect.makeopts
CREDITS build_tools formats missing
ChangeLog cdr funcs mkinstalldirs
LICENSE channels images pbx
Makefile codecs include res
Makefile.moddir_rules config.guess install-sh sample.call
Makefile.rules config.log keys sounds
README config.status main static-http
UPGRADE-1.2.txt config.sub makeopts utils
UPGRADE.txt configs makeopts.embed_rules
Zaptel-to-DAHDI.txt configure makeopts.in
agi configure.ac menuselect

As you see in the listing, there is a file called Makefile. There is also a file called makeopts, and in there you should see a line that says:

PROC=armv5tejl

Try changing this to

PROC=arm

Then run ‘make’ again.

Typing vi makefile doesnt yield a result, as it attempts to create a new document. Is there a specific command I need to enter to get to that specific file?