Ovidiu, It work, I was passing a wrong arguments to the make.
Thank you very much Regards, Caio Pereira 2015-10-21 12:10 GMT-02:00 Ovidiu Sas <[email protected]>: > I was cross compiling opensips for several platforms and the fastlock > was disabled by default (regular locks were used instead). > It seems that you are not cross compiling. > You will need to track down in the Makefile how your compiler is > detected and what settings are applied. > > For your reference, here's the makefile that I used for cross compiling: > http://svn.nslu2-linux.org/svnroot/optware/trunk/make/opensips.mk > > Regards, > Ovidiu Sas > > On Wed, Oct 21, 2015 at 9:37 AM, Caio <[email protected]> wrote: > > It's possible to disable fastlock.h and futex_lock.h in the > Makefile.conf? > > > > Thanks > > > > Regards, > > > > Caio Pereira > > > > 2015-10-20 18:49 GMT-02:00 Caio <[email protected]>: > >> > >> Ovidiu, > >> > >> My Log > >> > >> echo $CC_EXTRA_OPTS > >> -march=armv7-a -marm -mthumb-interwork -mfloat-abi=hard -mfpu=neon > >> --sysroot=/home/caio/fsl-community-bsp/imx6/tmp/sysroots/imx6" > >> > >> CPU=armv7a > >> LD=arm-poky-linux-gnueabi-ld > >> --sysroot=/home/caio/fsl-community-bsp/imx6/tmp/sysroots/imx6 > >> > >> CC=arm-poky-linux-gnueabi-gcc -march=armv7-a -marm -mthumb-interwork > >> -mfloat-abi=hard -mfpu=neon > >> --sysroot=/home/caio/fsl-community-bsp/imx6/tmp/sysroots/imx6 > >> > >> > >> cat Makefile.conf > >> > >> #DEFS+= -DPKG_MALLOC #Uses a faster malloc (exclusive w/ USE_SHM_MEM) > >> DEFS+= -DSHM_MMAP #Use mmap instead of SYSV shared memory > >> DEFS+= -DUSE_MCAST #Compile in support for IP Multicast > >> DEFS+= -DDISABLE_NAGLE #Disabled the TCP NAgle Algorithm ( lower delay ) > >> DEFS+= -DSTATISTICS #Enables the statistics manager > >> DEFS+= -DHAVE_RESOLV_RES #Support for changing some of the resolver > >> parameters > >> #DEFS+= -DHP_MALLOC #High performance allocator with fine-grained > locking > >> #DEFS+= -DF_MALLOC #An even faster allocator. Not recommended for > >> debugging > >> #DEFS+= -DF_MALLOC_OPTIMIZATIONS #Remove all internal checks in F_MALLOC > >> #DEFS+= -DDBG_QM_MALLOC #Allocator used for debugging information > >> #DEFS+= -DUSE_SHM_MEM #All PKG allocations are mapped to SHM ( exclusive > >> w/ PKG_MALLOC ) > >> #DEFS+= -DDBG_F_MALLOC #TODO ? > >> #DEFS+= -DNO_DEBUG #Turns off all debug messages > >> #DEFS+= -DNO_LOG #Completely turns off all the logging > >> #DEFS+= -DVQ_MALLOC #TODO ? > >> #DEFS+= -DFAST_LOCK #Uses fast architecture specific locking > >> #DEFS+= -DUSE_FUTEX #Uses linux futexs with fast architecture specific > >> locking > >> DEFS+= -DUSE_SYSV_SEM #Uses SYSV sems for locking ( slower & limited > >> number of locks > >> #DEFS+= -DUSE_PTHREAD_MUTEX #Uses pthread mutexes > >> #DEFS+= -DBUSY_WAIT #Uses busy waiting on the lock > >> #DEFS+= -DDBG_LOCK #TODO ? > >> DEFS+= -DNOSMP #Do not use SMP sompliant locking. Faster but won't work > on > >> SMP machines > >> #DEFS+= -DEXTRA_DEBUG #Compiles in some extra debugging code > >> > >> > >> make all > >> Compiling blacklists.c > >> In file included from blacklists.h:30:0, > >> from blacklists.c:38: > >> ip_addr.h: In function 'sockaddr2ip_addr': > >> ip_addr.h:224:25: warning: cast increases required alignment of target > >> type [-Wcast-align] > >> memcpy(ip->u.addr, &((struct sockaddr_in*)sa)->sin_addr, 4); > >> ^ > >> ip_addr.h:229:25: warning: cast increases required alignment of target > >> type [-Wcast-align] > >> memcpy(ip->u.addr, &((struct sockaddr_in6*)sa)->sin6_addr, 16); > >> ^ > >> In file included from locking.h:66:0, > >> from blacklists.h:32, > >> from blacklists.c:38: > >> lock_alloc.h: In function 'lock_set_alloc': > >> lock_alloc.h:70:13: warning: cast increases required alignment of target > >> type [-Wcast-align] > >> ls->locks=(gen_lock_t*)((char*)ls+sizeof(gen_lock_set_t)); > >> ^ > >> {standard input}: Assembler messages: > >> {standard input}:105: Error: bad instruction `btsl $0,[r6]' > >> {standard input}:106: Error: bad instruction `adcl $0,r3' > >> {standard input}:208: Error: bad instruction `movb $0,(r3)' > >> {standard input}:305: Error: bad instruction `btsl $0,[r9]' > >> {standard input}:306: Error: bad instruction `adcl $0,r3' > >> {standard input}:390: Error: bad instruction `movb $0,(r3)' > >> {standard input}:436: Error: bad instruction `btsl $0,[r10]' > >> {standard input}:437: Error: bad instruction `adcl $0,r3' > >> {standard input}:480: Error: bad instruction `movb $0,(r3)' > >> {standard input}:526: Error: bad instruction `btsl $0,[r10]' > >> {standard input}:527: Error: bad instruction `adcl $0,r3' > >> {standard input}:555: Error: bad instruction `movb $0,(r2)' > >> {standard input}:619: Error: bad instruction `btsl $0,[r10]' > >> {standard input}:620: Error: bad instruction `adcl $0,r3' > >> {standard input}:718: Error: bad instruction `movb $0,(r3)' > >> {standard input}:3194: Error: bad instruction `btsl $0,[r7]' > >> {standard input}:3195: Error: bad instruction `adcl $0,r6' > >> {standard input}:3249: Error: bad instruction `movb $0,(r3)' > >> {standard input}:3300: Error: bad instruction `btsl $0,[r7]' > >> {standard input}:3301: Error: bad instruction `adcl $0,r3' > >> {standard input}:3340: Error: bad instruction `movb $0,(r0)' > >> {standard input}:3366: Error: bad instruction `btsl $0,[r6]' > >> {standard input}:3367: Error: bad instruction `adcl $0,r3' > >> {standard input}:3411: Error: bad instruction `movb $0,(r1)' > >> {standard input}:3497: Error: bad instruction `btsl $0,[r6]' > >> {standard input}:3498: Error: bad instruction `adcl $0,r3' > >> {standard input}:3542: Error: bad instruction `movb $0,(r1)' > >> {standard input}:3795: Error: bad instruction `btsl $0,[r6]' > >> {standard input}:3796: Error: bad instruction `adcl $0,r3' > >> {standard input}:3839: Error: bad instruction `movb $0,(r3)' > >> {standard input}:3882: Error: bad instruction `btsl $0,[fp]' > >> {standard input}:3883: Error: bad instruction `adcl $0,r3' > >> {standard input}:3981: Error: bad instruction `movb $0,(r3)' > >> {standard input}:4020: Error: bad instruction `btsl $0,[r6]' > >> {standard input}:4021: Error: bad instruction `adcl $0,r3' > >> {standard input}:4081: Error: bad instruction `movb $0,(r3)' > >> {standard input}:4129: Error: bad instruction `btsl $0,[r10]' > >> {standard input}:4130: Error: bad instruction `adcl $0,r3' > >> {standard input}:4381: Error: bad instruction `movb $0,(r3)' > >> {standard input}:4837: Error: bad instruction `btsl $0,[fp]' > >> {standard input}:4838: Error: bad instruction `adcl $0,r3' > >> {standard input}:4951: Error: bad instruction `movb $0,(r3)' > >> {standard input}:5312: Error: bad instruction `btsl $0,[r6]' > >> {standard input}:5313: Error: bad instruction `adcl $0,r9' > >> {standard input}:5383: Error: bad instruction `btsl $0,[r8]' > >> {standard input}:5384: Error: bad instruction `adcl $0,r5' > >> {standard input}:5471: Error: bad instruction `movb $0,(r3)' > >> {standard input}:5510: Error: bad instruction `btsl $0,[r6]' > >> {standard input}:5511: Error: bad instruction `adcl $0,r3' > >> {standard input}:5557: Error: bad instruction `movb $0,(r3)' > >> {standard input}:5596: Error: bad instruction `btsl $0,[r9]' > >> {standard input}:5597: Error: bad instruction `adcl $0,r3' > >> {standard input}:5628: Error: bad instruction `movb $0,(r3)' > >> {standard input}:5889: Error: bad instruction `movb $0,(r3)' > >> {standard input}:5928: Error: bad instruction `btsl $0,[r8]' > >> {standard input}:5929: Error: bad instruction `adcl $0,r3' > >> {standard input}:5975: Error: bad instruction `movb $0,(r3)' > >> {standard input}:6014: Error: bad instruction `btsl $0,[r9]' > >> {standard input}:6015: Error: bad instruction `adcl $0,r3' > >> {standard input}:6045: Error: bad instruction `movb $0,(r3)' > >> {standard input}:6103: Error: bad instruction `btsl $0,[r10]' > >> {standard input}:6104: Error: bad instruction `adcl $0,r3' > >> {standard input}:6203: Error: bad instruction `movb $0,(r3)' > >> {standard input}:6323: Error: bad instruction `btsl $0,[r6]' > >> {standard input}:6324: Error: bad instruction `adcl $0,r3' > >> {standard input}:6421: Error: bad instruction `movb $0,(r3)' > >> {standard input}:6481: Error: bad instruction `btsl $0,[r9]' > >> {standard input}:6482: Error: bad instruction `adcl $0,r3' > >> {standard input}:6582: Error: bad instruction `movb $0,(r3)' > >> {standard input}:7101: Error: bad instruction `btsl $0,[r1]' > >> {standard input}:7102: Error: bad instruction `adcl $0,r3' > >> {standard input}:7232: Error: bad instruction `movb $0,(r3)' > >> {standard input}:7394: Error: bad instruction `btsl $0,[r2]' > >> {standard input}:7395: Error: bad instruction `adcl $0,r1' > >> {standard input}:7527: Error: bad instruction `movb $0,(r3)' > >> {standard input}:7803: Error: bad instruction `btsl $0,[r6]' > >> {standard input}:7804: Error: bad instruction `adcl $0,r3' > >> {standard input}:7912: Error: bad instruction `movb $0,(r3)' > >> {standard input}:8809: Error: bad instruction `btsl $0,[r4]' > >> {standard input}:8810: Error: bad instruction `adcl $0,r3' > >> {standard input}:8852: Error: bad instruction `movb $0,(r1)' > >> {standard input}:8883: Error: bad instruction `btsl $0,[r5]' > >> {standard input}:8884: Error: bad instruction `adcl $0,r3' > >> {standard input}:8930: Error: bad instruction `movb $0,(r3)' > >> {standard input}:8980: Error: bad instruction `btsl $0,[r10]' > >> {standard input}:8981: Error: bad instruction `adcl $0,r3' > >> {standard input}:9020: Error: bad instruction `movb $0,(r0)' > >> make: *** [blacklists.o] Error 1 > >> > >> > >> > >> > >> > >> Thank you. > >> > >> Best Regards, > >> > >> Caio Pereira > >> > >> > >> 2015-10-20 18:28 GMT-02:00 Caio <[email protected]>: > >>> > >>> Ovidiu Sas, > >>> > >>> > >>> In the Makefile.defs there a code to get the ARCH > >>> > >>> 90 ARCH := $(shell $(GETARCH) |sed -e s/i.86/i386/ -e > s/sun4u/sparc64/ > >>> \ > >>> 91 -e s/armv4l/arm/ -e "s/Power > Macintosh/ppc/" > >>> \ > >>> 92 -e s/sun4v/sparc64/ -e "s/cobalt/mips2/" \ > >>> 93 -e s/amd64/x86_64/ ) > >>> > >>> > >>> I tried export ARCH=armv7 but because of the code, the ARCH will be > >>> always x86-64 (host machine) . > >>> > >>> I added the CFLAGS to the armv7 arch in the Makefile.defs > >>> > >>> 918 ifeq ($(ARCH), armv7) > >>> 919 # if gcc > >>> 920 ifeq ($(CC_NAME), gcc) > >>> 921 #common stuff > >>> 922 CFLAGS+=-O0 -mfloat-abi=hard > >>> -march=armv7-a -mthumb-interwork -Wcast-align $(PROFILE) \ > >>> 923 -mfloat-abi=hard -mfpu=neon > >>> -mtune=cortex-a9 -Wall > >>> 924 endif > >>> 925 endif > >>> > >>> > >>> Which is the best way to pass the arch parameter to the Makefile? > >>> > >>> (sorry for the typo in the last email). > >>> > >>> Thank you very much. > >>> > >>> Best Regards, > >>> > >>> Caio Pereira > >>> > >>> 2015-10-20 17:17 GMT-02:00 Ovidiu Sas <[email protected]>: > >>>> > >>>> The optimizations are done via the compiler flags: CFLAGS. > >>>> You need to replace -09 with -00. > >>>> You need to check if you are using a native compiler or a cross one > >>>> and adjust the proper flags inside Makefile.defs. > >>>> > >>>> Regards, > >>>> Ovidiu Sas > >>>> > >>>> On Tue, Oct 20, 2015 at 1:53 PM, Caio <[email protected]> wrote: > >>>> > Hello, Oividiu! > >>>> > > >>>> > Sorry for the delay, I was on vacation. > >>>> > > >>>> > I'm writing a recipe to Yocto. > >>>> > This ARM cpu is new (armv7-a), but I see that is not compatible with > >>>> > opensips's optimization. > >>>> > I'm new with opensips, I have only tested in my host machine > x86-64. > >>>> > > >>>> > > >>>> > Do you know with parameters I need to comment in the Makefile.conf > to > >>>> > have a > >>>> > basic compilation without any optimization in the opensips? > >>>> > > >>>> > > >>>> > #DEFS+= -DPKG_MALLOC #Uses a faster malloc (exclusive w/ > USE_SHM_MEM) > >>>> > #DEFS+= -DSHM_MMAP #Use mmap instead of SYSV shared memory > >>>> > DEFS+= -DUSE_MCAST #Compile in support for IP Multicast > >>>> > DEFS+= -DDISABLE_NAGLE #Disabled the TCP NAgle Algorithm ( lower > delay > >>>> > ) > >>>> > DEFS+= -DSTATISTICS #Enables the statistics manager > >>>> > DEFS+= -DHAVE_RESOLV_RES #Support for changing some of the resolver > >>>> > parameters > >>>> > #DEFS+= -DHP_MALLOC #High performance allocator with fine-grained > >>>> > locking > >>>> > DEFS+= -DF_MALLOC #An even faster allocator. Not recommended for > >>>> > debugging > >>>> > #DEFS+= -DF_MALLOC_OPTIMIZATIONS #Remove all internal checks in > >>>> > F_MALLOC > >>>> > #DEFS+= -DDBG_QM_MALLOC #Allocator used for debugging information > >>>> > #DEFS+= -DUSE_SHM_MEM #All PKG allocations are mapped to SHM ( > >>>> > exclusive w/ > >>>> > PKG_MALLOC ) > >>>> > #DEFS+= -DDBG_F_MALLOC #TODO ? > >>>> > #DEFS+= -DNO_DEBUG #Turns off all debug messages > >>>> > #DEFS+= -DNO_LOG #Completely turns off all the logging > >>>> > #DEFS+= -DVQ_MALLOC #TODO ? > >>>> > #DEFS+= -DFAST_LOCK #Uses fast architecture specific locking > >>>> > #DEFS+= -DUSE_FUTEX #Uses linux futexs with fast architecture > specific > >>>> > locking > >>>> > #DEFS+= -DUSE_SYSV_SEM #Uses SYSV sems for locking ( slower & > limited > >>>> > number > >>>> > of locks > >>>> > #DEFS+= -DUSE_PTHREAD_MUTEX #Uses pthread mutexes > >>>> > #DEFS+= -DBUSY_WAIT #Uses busy waiting on the lock > >>>> > #DEFS+= -DDBG_LOCK #TODO ? > >>>> > > >>>> > > >>>> > > >>>> > Thank you! > >>>> > > >>>> > Best Regards, > >>>> > > >>>> > Caio Pereira > >>>> > > >>>> > > >>>> > 2015-09-23 21:48 GMT-03:00 Ovidiu Sas <[email protected]>: > >>>> >> > >>>> >> Hello Caio, > >>>> >> > >>>> >> Have you managed to cross compile opensips? > >>>> >> The optimizations do not work for older type of arm CPUs. > >>>> >> Did you experienced any issues running opensips on arm? > >>>> >> > >>>> >> Regards, > >>>> >> Ovidiu Sas > >>>> >> > >>>> >> On Thu, Sep 17, 2015 at 2:51 PM, Caio <[email protected]> wrote: > >>>> >> > Hello, > >>>> >> > > >>>> >> > I would like to cross compile the opensips to ARMv7 architecture > >>>> >> > (Freescale > >>>> >> > IMX6). > >>>> >> > I saw that there's some optimization in assembly to lock > functions. > >>>> >> > There's some configuration in the Makeconfig.conf options that I > >>>> >> > need > >>>> >> > disable or enable to able the opensips run in my target > >>>> >> > architecutre? > >>>> >> > > >>>> >> > Thank you very much. > >>>> >> > > >>>> >> > Best Regards > >>>> >> > > >>>> >> > > >>>> >> > > >>>> >> > -- > >>>> >> > ---------------------------------------------- > >>>> >> > Caio Pereira > >>>> >> > > >>>> >> > _______________________________________________ > >>>> >> > Users mailing list > >>>> >> > [email protected] > >>>> >> > http://lists.opensips.org/cgi-bin/mailman/listinfo/users > >>>> >> > > >>>> >> > >>>> >> > >>>> >> > >>>> >> -- > >>>> >> VoIP Embedded, Inc. > >>>> >> http://www.voipembedded.com > >>>> >> > >>>> >> _______________________________________________ > >>>> >> Users mailing list > >>>> >> [email protected] > >>>> >> http://lists.opensips.org/cgi-bin/mailman/listinfo/users > >>>> > > >>>> > > >>>> > > >>>> > > >>>> > -- > >>>> > ---------------------------------------------- > >>>> > Caio Pereira > >>>> > > >>>> > _______________________________________________ > >>>> > Users mailing list > >>>> > [email protected] > >>>> > http://lists.opensips.org/cgi-bin/mailman/listinfo/users > >>>> > > >>>> > >>>> > >>>> > >>>> -- > >>>> VoIP Embedded, Inc. > >>>> http://www.voipembedded.com > >>>> > >>>> _______________________________________________ > >>>> Users mailing list > >>>> [email protected] > >>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users > >>> > >>> > >>> > >>> > >>> -- > >>> ---------------------------------------------- > >>> Caio Pereira > >> > >> > >> > >> > >> -- > >> ---------------------------------------------- > >> Caio Pereira > > > > > > > > > > -- > > ---------------------------------------------- > > Caio Pereira > > > > _______________________________________________ > > Users mailing list > > [email protected] > > http://lists.opensips.org/cgi-bin/mailman/listinfo/users > > > > > > -- > VoIP Embedded, Inc. > http://www.voipembedded.com > > _______________________________________________ > Users mailing list > [email protected] > http://lists.opensips.org/cgi-bin/mailman/listinfo/users > -- ---------------------------------------------- Caio Pereira
_______________________________________________ Users mailing list [email protected] http://lists.opensips.org/cgi-bin/mailman/listinfo/users
