OpenWrt Forum Archive

Topic: [r18946]: FreeSwitch fails to compile

The content of this topic has been archived on 4 May 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Today, I just performed an OpenWRT SVN update, i.e. svn up and scripts/feeds update. When I executed make, the compilation returned and error message saying FreeSwitch failed to compile:

make[3] -C feeds/packages/net/freeswitch compile
make -r world: build failed. Please re-run make with V=99 to see what's going on
make: *** [world] Error 1

Then I executed make package/feeds/packages/freeswitch/compile V=99 and the compilation spitted out the following error messages:

make[10]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/libs/iksemel/src'
 mipsel-openwrt-linux-uclibc-gcc -DHAVE_CONFIG_H -I. -I../include -I../include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/target-mipsel_uClibc-0.9.30.1/usr/include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/target-mipsel_uClibc-0.9.30.1/include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/toolchain-mipsel_gcc-4.3.3+cs_uClibc-0.9.30.1/usr/include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/toolchain-mipsel_gcc-4.3.3+cs_uClibc-0.9.30.1/include -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fhonour-copts -msoft-float -Wall -I/usr/include -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fhonour-copts -msoft-float -Wall -MT libiksemel_la-io-posix.lo -MD -MP -MF .deps/libiksemel_la-io-posix.Tpo -c io-posix.c  -fPIC -DPIC -o libiksemel_la-io-posix.o
cc1: warning: include location "/usr/include" is unsafe for cross-compilation
io-posix.c:1: note: someone does not honour COPTS correctly, passed 2 times
io-posix.c: In function 'io_recv':
io-posix.c:116: error: can't find a register in class 'COP3_REGS' while reloading 'asm'
io-posix.c:116: error: 'asm' operand has impossible constraints
make[10]: *** [libiksemel_la-io-posix.lo] Error 1
make[10]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/libs/iksemel/src'
Making all in tools
make[10]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/libs/iksemel/tools'
make[10]: *** No rule to make target `../src/libiksemel.la', needed by `ikslint'.  Stop.
make[10]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/libs/iksemel/tools'
Making all in test
make[10]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/libs/iksemel/test'
make[10]: *** No rule to make target `../src/libiksemel.la', needed by `tst-ikstack'.  Stop.
make[10]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/libs/iksemel/test'
Making all in doc
make[9]: *** [all-recursive] Error 1
make[9]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/libs/iksemel'
make[8]: *** [../../../../libs/iksemel/src/libiksemel.la] Error 2
make[8]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/src/mod/endpoints/mod_dingaling'
make[7]: *** [all] Error 1
make[7]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/src/mod/endpoints/mod_dingaling'
make[6]: *** [mod_dingaling-all] Error 1
make[6]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/src/mod'
make[5]: *** [all-recursive] Error 1
make[5]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/src'
Making all in build
make[5]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/build'
 +-------- FreeSWITCH Build Complete -----------+
 + FreeSWITCH has been successfully built.      +
 + Install by running:                          +
 +                                              +
 +               make install                   +
 +----------------------------------------------+
make[5]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/build'
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4'
make[2]: *** [/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.1/freeswitch-1.0.4/.built] Error 2
make[2]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/feeds/packages/net/freeswitch'
make[1]: *** [package/feeds/packages/freeswitch/compile] Error 2
make[1]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U'
make: *** [package/feeds/packages/freeswitch/compile] Error 2

Bumped! Anyone?

Hi, Mazzilo:

I don't know about your problem, but I cannot compile it either due to Python dependencies failing before completion. In my case, I think the Python ARCH is incorrect but I'm not enough of a programmer to fix it. If it's not fixed by someone else with Python experience shortly, my team will look into it in a week or two.

marc.

I hope Zandbelt sees this thread and can fix the problem.

Mazilo:

We'll be taking a look at this in a few weeks as well and will straighten it out. I want to use Freeswitch for a commercial application on a brcm63xx platform.

Right now, we are finishing up a management application and will start on a USB root FS boot. The board we are using has a very big USB flash onboard smile

marc.

FS really consumes a lot of CPU resources that it takes sometimes to get ready once launched on a WGT634U @200MHz. I don't know how powerful a BRCM63XX CPU is, but I do believe it is much powerful than the CPU used on a WGT634U.

Mazilo:

In our case, it's 256MHz on the BCM6348 MIPS processor. It loads fast enough and though the ipkg from the buildbot is not really optimized, it seems fast enough. Once we get going, we'll optimize it and do some benchmarks between Freeswitch and Asterisk.

Based on real world tests in the x86 space, Freeswitch should be faster and consume less resources once optimized.

marc.

Marc,

Thanks for the information. On my WGT634U, it took 30+ seconds to get FS ready once executed. However, it  can take an exhausted 2+ minutes long time to perform an FS shutdown, IIRC.

I updated my local OpenWRT with SVN r19193 and recompile the whole trunk after a make distclean. This time, I selected binutils-2.20, gcc-4.4.2, and uClibc-0.9.30.2. However, FreeSwitch compilation still spits out error messages (can't find a register in class 'COP3_REGS' while reloading 'asm' under iksemel package) as follows:

make[10]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/src'
 mipsel-openwrt-linux-uclibc-gcc -DHAVE_CONFIG_H -I. -I../include -I../include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/target-mipsel_uClibc-0.9.30.2/usr/include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/target-mipsel_uClibc-0.9.30.2/include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/toolchain-mipsel_gcc-4.4.2_uClibc-0.9.30.2/usr/include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/toolchain-mipsel_gcc-4.4.2_uClibc-0.9.30.2/include -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fhonour-copts -msoft-float -Wall -I/usr/include -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fhonour-copts -msoft-float -Wall -MT libiksemel_la-io-posix.lo -MD -MP -MF .deps/libiksemel_la-io-posix.Tpo -c io-posix.c  -fPIC -DPIC -o libiksemel_la-io-posix.o
cc1: note: someone does not honour COPTS correctly, passed 2 times
io-posix.c: In function 'io_recv':
io-posix.c:116: error: can't find a register in class 'COP3_REGS' while reloading 'asm'
io-posix.c:116: error: 'asm' operand has impossible constraints
make[10]: *** [libiksemel_la-io-posix.lo] Error 1
make[10]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/src'
Making all in tools
make[10]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/tools'
make[10]: *** No rule to make target `../src/libiksemel.la', needed by `ikslint'.  Stop.
make[10]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/tools'
Making all in test
make[10]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/test'
make[10]: *** No rule to make target `../src/libiksemel.la', needed by `tst-ikstack'.  Stop.
make[10]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/test'
Making all in doc
make[9]: *** [all-recursive] Error 1
make[9]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel'
make[8]: *** [../../../../libs/iksemel/src/libiksemel.la] Error 2
make[8]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/src/mod/endpoints/mod_dingaling'
make[7]: *** [all] Error 1
make[7]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/src/mod/endpoints/mod_dingaling'
make[6]: *** [mod_dingaling-all] Error 1
make[6]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/src/mod'
make[5]: *** [all-recursive] Error 1
make[5]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/src'
Making all in build
make[5]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/build'
 +-------- FreeSWITCH Build Complete -----------+
 + FreeSWITCH has been successfully built.      +
 + Install by running:                          +
 +                                              +
 +               make install                   +
 +----------------------------------------------+
make[5]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/build'
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4'
make[2]: *** [/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/.built] Error 2
make[2]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/feeds/packages/net/freeswitch'
make[1]: *** [package/feeds/packages/freeswitch/compile] Error 2
make[1]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U'
make: *** [package/feeds/packages/freeswitch/compile] Error 2

mazilo, try the following patch:

Index: net/freeswitch/Makefile
===================================================================
--- net/freeswitch/Makefile    (Revision 19204)
+++ net/freeswitch/Makefile    (Arbeitskopie)
@@ -254,7 +254,7 @@
     config_BUILD_CC="$(HOSTCC)" \
     config_BUILD_CFLAGS="$(HOST_CFLAGS)" \
     config_TARGET_CC="$(TARGET_CC)" \
-    config_TARGET_CFLAGS="$(TARGET_CFLAGS)" \
+    config_TARGET_CFLAGS="$(TARGET_CFLAGS) -fomit-frame-pointer" \
     config_TARGET_READLINE_INC="$(TARGET_CPPFLAGS)" \
     config_TARGET_READLINE_LIBS="$(TARGET_LDFLAGS) -lreadline -lncurses" \
     config_TARGET_LIBS="$(TARGET_LDFLAGS) -lpthread" \

~ JoW

JoW,

I have applied the patch and it doesn't seem to affect the compilation that still spits out the same error messages as show below:

 mipsel-openwrt-linux-uclibc-gcc -DHAVE_CONFIG_H -I. -I../include -I../include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/target-mipsel_uClibc-0.9.30.2/usr/include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/target-mipsel_uClibc-0.9.30.2/include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/toolchain-mipsel_gcc-4.4.2_uClibc-0.9.30.2/usr/include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/toolchain-mipsel_gcc-4.4.2_uClibc-0.9.30.2/include -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fhonour-copts -msoft-float -Wall -I/usr/include -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fhonour-copts -msoft-float -Wall -MT libiksemel_la-io-posix.lo -MD -MP -MF .deps/libiksemel_la-io-posix.Tpo -c io-posix.c  -fPIC -DPIC -o libiksemel_la-io-posix.o
cc1: note: someone does not honour COPTS correctly, passed 2 times
io-posix.c: In function 'io_recv':
io-posix.c:116: error: can't find a register in class 'COP3_REGS' while reloading 'asm'
io-posix.c:116: error: 'asm' operand has impossible constraints
make[10]: *** [libiksemel_la-io-posix.lo] Error 1
make[10]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/src'
Making all in tools
make[10]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/tools'
hash.c: In function 'hash_delete':
hash.c:141: warning: passing argument 1 of 'iks_stack_delete' from incompatible pointer type
../include/iksemel.h:27: note: expected 'struct ikstack **' but argument is of type 'struct ikstack *'
make[10]: *** No rule to make target `../src/libiksemel.la', needed by `ikslint'.  Stop.
make[10]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/tools'
Making all in test
make[10]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/test'
tst-ikstack.c: In function 'test_stack':
tst-ikstack.c:43: warning: passing argument 1 of 'iks_stack_delete' from incompatible pointer type
../include/iksemel.h:27: note: expected 'struct ikstack **' but argument is of type 'struct ikstack *'
make[10]: *** No rule to make target `../src/libiksemel.la', needed by `tst-ikstack'.  Stop.
make[10]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/test'
Making all in doc
make[9]: *** [all-recursive] Error 1
make[9]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel'
make[8]: *** [../../../../libs/iksemel/src/libiksemel.la] Error 2
make[8]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/src/mod/endpoints/mod_dingaling'
make[7]: *** [all] Error 1
make[7]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/src/mod/endpoints/mod_dingaling'
make[6]: *** [mod_dingaling-all] Error 1
make[6]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/src/mod'
make[5]: *** [all-recursive] Error 1
make[5]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/src'
Making all in build
make[5]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/build'
 +-------- FreeSWITCH Build Complete -----------+
 + FreeSWITCH has been successfully built.      +
 + Install by running:                          +
 +                                              +
 +               make install                   +
 +----------------------------------------------+
make[5]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/build'
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4'
make[2]: *** [/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/.built] Error 2
make[2]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/feeds/packages/net/freeswitch'
make[1]: *** [package/feeds/packages/freeswitch/compile] Error 2
make[1]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U'
make: *** [package/feeds/packages/freeswitch/compile] Error 2

In other words, no "-fomit-frame-pointer" flag to be found on the compilation line as shown above. sad

I see. The patch above was done blindly, I did not actually test it. You need to find another way to inject this parameter, it helped me to overcome a similar asm related error in ffmpeg.

~ JoW

JoW,

Can you show me your ffmpeg patch?

Sure, for ffmpeg I just used the --extra-cflags option of configure:

Index: Makefile
===================================================================
--- Makefile    (revision 18823)
+++ Makefile    (working copy)
@@ -169,6 +169,7 @@
         CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) $(FPIC)" \
         LDFLAGS="$(TARGET_LDFLAGS)" \
         ./configure \
+        --extra-cflags="-I$(PKG_BUILD_DIR) -fomit-frame-pointer" \
         --enable-cross-compile \
         --cross-prefix="$(TARGET_CROSS)" \
         --arch="$(ARCH)" \

(Last edited by jow on 18 Jan 2010, 14:00)

JoW,

Thanks for your quick response. I managed to inject the -fomit-frame-pointer flag, but the compilation still spits out the same error messages as show below. It looks like the -fomit-frame-pointer flag has no effect at all.

 mipsel-openwrt-linux-uclibc-gcc -DHAVE_CONFIG_H -I. -I../include -I../include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/target-mipsel_uClibc-0.9.30.2/usr/include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/target-mipsel_uClibc-0.9.30.2/include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/toolchain-mipsel_gcc-4.4.2_uClibc-0.9.30.2/usr/include -I/opt/tmp/openwrt-svn-trunk-WGT634U/staging_dir/toolchain-mipsel_gcc-4.4.2_uClibc-0.9.30.2/include -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fomit-frame-pointer -fhonour-copts -msoft-float -Wall -I/usr/include -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fomit-frame-pointer -fhonour-copts -msoft-float -Wall -MT libiksemel_la-io-posix.lo -MD -MP -MF .deps/libiksemel_la-io-posix.Tpo -c io-posix.c  -fPIC -DPIC -o libiksemel_la-io-posix.o
cc1: note: someone does not honour COPTS correctly, passed 2 times
io-posix.c: In function 'io_recv':
io-posix.c:116: error: can't find a register in class 'COP3_REGS' while reloading 'asm'
io-posix.c:116: error: 'asm' operand has impossible constraints
make[10]: *** [libiksemel_la-io-posix.lo] Error 1
make[10]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/src'
Making all in tools
make[10]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/tools'
hash.c: In function 'hash_delete':
hash.c:141: warning: passing argument 1 of 'iks_stack_delete' from incompatible pointer type
../include/iksemel.h:27: note: expected 'struct ikstack **' but argument is of type 'struct ikstack *'
make[10]: *** No rule to make target `../src/libiksemel.la', needed by `ikslint'.  Stop.
make[10]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/tools'
Making all in test
make[10]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/test'
tst-ikstack.c: In function 'test_stack':
tst-ikstack.c:43: warning: passing argument 1 of 'iks_stack_delete' from incompatible pointer type
../include/iksemel.h:27: note: expected 'struct ikstack **' but argument is of type 'struct ikstack *'
make[10]: *** No rule to make target `../src/libiksemel.la', needed by `tst-ikstack'.  Stop.
make[10]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel/test'
Making all in doc
make[9]: *** [all-recursive] Error 1
make[9]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/libs/iksemel'
make[8]: *** [../../../../libs/iksemel/src/libiksemel.la] Error 2
make[8]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/src/mod/endpoints/mod_dingaling'
make[7]: *** [all] Error 1
make[7]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/src/mod/endpoints/mod_dingaling'
make[6]: *** [mod_dingaling-all] Error 1
make[6]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/src/mod'
make[5]: *** [all-recursive] Error 1
make[5]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/src'
Making all in build
make[5]: Entering directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/build'
 +-------- FreeSWITCH Build Complete -----------+
 + FreeSWITCH has been successfully built.      +
 + Install by running:                          +
 +                                              +
 +               make install                   +
 +----------------------------------------------+
make[5]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/build'
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4'
make[2]: *** [/opt/tmp/openwrt-svn-trunk-WGT634U/build_dir/target-mipsel_uClibc-0.9.30.2/freeswitch-1.0.4/.built] Error 2
make[2]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U/feeds/packages/net/freeswitch'
make[1]: *** [package/feeds/packages/freeswitch/compile] Error 2
make[1]: Leaving directory `/opt/tmp/openwrt-svn-trunk-WGT634U'
make: *** [package/feeds/packages/freeswitch/compile] Error 2

Finally, I managed to successfully compile FreeSwitch. All I did was to uncheck the mod-dingaling that uses iksemel library. No mod-dingaling, no compilation on libiksemel. No libiksemel, compilation successful.

The discussion might have continued from here.