[asterisk-bugs] [JIRA] (ASTERISK-27332) Asterisk fails to configure on MacOS Sierra

Ivan Larionov (JIRA) noreply at issues.asterisk.org
Thu Oct 12 13:57:20 CDT 2017


     [ https://issues.asterisk.org/jira/browse/ASTERISK-27332?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ivan Larionov updated ASTERISK-27332:
-------------------------------------

    Description: 
Asterisk 15 (may be older versions as well) fails to configure on MacOS Sierra (may be affects some other OS as well).

Looks like it's due to {{sed}} and {{readlink}} calls incompatibility. For me it fails on {{pjproject}} verification and applying patches.

Using {{greadlink}} instead of {{readlink}} helps.

Places where incompatible calls are made from:

* {{third-party/pjproject/Makefile}}
* {{third-party/pjproject/apply_patches}}
* may be more

{code}
$ ./bootstrap.sh 
Generating the configure script ...
$ ./configure --without-asound --without-netsnmp --without-gtk2 --with-crypto --with-ssl
checking build system type... x86_64-apple-darwin16.7.0
checking host system type... x86_64-apple-darwin16.7.0
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether char is unsigned... no
checking for uname... /usr/bin/uname
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C preprocessor... gcc -E
checking how to run the C++ preprocessor... g++ -E
checking for a sed that does not truncate output... /usr/bin/sed
checking for egrep... grep -E
checking for ld used by gcc... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking for a BSD-compatible install... /opt/brew/bin/ginstall -c
checking whether ln -s works... yes
checking for ranlib... ranlib
checking for GNU make... make
checking for egrep... (cached) /usr/bin/grep -E
checking for strip... strip
checking for ar... ar
checking for bison... /usr/bin/bison
checking for cmp... /usr/bin/cmp
checking for cat... /bin/cat
checking for flex... /usr/bin/flex
checking for grep... (cached) /usr/bin/grep
checking for python... /opt/brew/opt/python/libexec/bin/python
checking for find... /usr/bin/find
checking for compress... /usr/bin/compress
checking for basename... /usr/bin/basename
checking for dirname... /usr/bin/dirname
checking for sh... /bin/sh
checking for ln... /bin/ln
checking for doxygen... :
checking for dot... /opt/brew/bin/dot
checking for wget... /opt/brew/bin/wget
checking for curl... /usr/bin/curl
checking for rubber... :
checking for catdvi... :
checking for kpsewhich... :
checking for xmllint... /opt/brew/bin/xmllint
checking for xmlstarlet... :
checking for bash... /bin/sh
checking for git... /opt/brew/bin/git
checking for alembic... :
checking for bzip2... /usr/bin/bzip2
checking for tar... /usr/bin/tar
checking for patch... /usr/bin/patch
checking for sed... (cached) /usr/bin/sed
checking for nm... /usr/bin/nm
checking for ldconfig... :
checking for sha1sum... /Users/ilarionov/Projects/Twilio/asterisk/build_tools/sha1sum-sh
checking for openssl... /opt/brew/bin/openssl
checking for bison that supports parse-param... /usr/bin/bison
checking for soxmix... no
checking for md5... md5
checking for a sed that does not truncate output... (cached) /usr/bin/sed
checking whether gcc is Clang... yes
checking whether Clang needs flag to prevent "argument unused" warning when linking with -pthread... -Qunused-arguments
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking whether more special flags are required for pthreads... no
checking for PTHREAD_PRIO_INHERIT... yes
checking for RAII support... checking for clang -fblocks... yes
checking for clang strsep/strcmp optimization... prevent use of __string2_1bptr_p / strsep / strcmp from bits/string2.h
checking for embedded pjproject (may have to download)... configuring
[pjproject]  Verifying /var/folders/rf/mq84rkb50gqfnrfrrsm74c5d1tkx0l/T//pjproject-2.6.tar.bz2
/usr/bin/sed: illegal option -- r
usage: sed script [-Ealn] [-i extension] [file ...]
       sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]
/usr/bin/sed: illegal option -- r
usage: sed script [-Ealn] [-i extension] [file ...]
       sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]
[pjproject]  Verify successful
[pjproject]  Unpacking /var/folders/rf/mq84rkb50gqfnrfrrsm74c5d1tkx0l/T//pjproject-2.6.tar.bz2
[pjproject]  Applying patches
readlink: illegal option -- f
usage: readlink [-n] [file ...]
readlink: illegal option -- f
usage: readlink [-n] [file ...]
 is not a directory
make: *** [source/.unpacked] Error 1
failed
configure: Unable to configure third-party/pjproject
configure: error: Re-run the ./configure command with 'NOISY_BUILD=yes' appended to see error details.
{code}

Marking as regression because it actually worked for me on some older OSX and older Asterisk (11 and 13) versions.

  was:
Asterisk 15 (may be older versions as well) fails to configure on MacOS Sierra (may be affects some other OS as well).

Looks like it's due to {{sed}} and {{readlink}} calls incompatibility. For me it fails on pjproject verification and applying patches.

Using {{greadlink}} instead of {{readlink}} helps.

Places where incompatible calls are made from:

* {{third-party/pjproject/Makefile}}
* {{third-party/pjproject/apply_patches}}
* may be more

{code}
$ ./bootstrap.sh 
Generating the configure script ...
$ ./configure --without-asound --without-netsnmp --without-gtk2 --with-crypto --with-ssl
checking build system type... x86_64-apple-darwin16.7.0
checking host system type... x86_64-apple-darwin16.7.0
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether char is unsigned... no
checking for uname... /usr/bin/uname
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C preprocessor... gcc -E
checking how to run the C++ preprocessor... g++ -E
checking for a sed that does not truncate output... /usr/bin/sed
checking for egrep... grep -E
checking for ld used by gcc... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking for a BSD-compatible install... /opt/brew/bin/ginstall -c
checking whether ln -s works... yes
checking for ranlib... ranlib
checking for GNU make... make
checking for egrep... (cached) /usr/bin/grep -E
checking for strip... strip
checking for ar... ar
checking for bison... /usr/bin/bison
checking for cmp... /usr/bin/cmp
checking for cat... /bin/cat
checking for flex... /usr/bin/flex
checking for grep... (cached) /usr/bin/grep
checking for python... /opt/brew/opt/python/libexec/bin/python
checking for find... /usr/bin/find
checking for compress... /usr/bin/compress
checking for basename... /usr/bin/basename
checking for dirname... /usr/bin/dirname
checking for sh... /bin/sh
checking for ln... /bin/ln
checking for doxygen... :
checking for dot... /opt/brew/bin/dot
checking for wget... /opt/brew/bin/wget
checking for curl... /usr/bin/curl
checking for rubber... :
checking for catdvi... :
checking for kpsewhich... :
checking for xmllint... /opt/brew/bin/xmllint
checking for xmlstarlet... :
checking for bash... /bin/sh
checking for git... /opt/brew/bin/git
checking for alembic... :
checking for bzip2... /usr/bin/bzip2
checking for tar... /usr/bin/tar
checking for patch... /usr/bin/patch
checking for sed... (cached) /usr/bin/sed
checking for nm... /usr/bin/nm
checking for ldconfig... :
checking for sha1sum... /Users/ilarionov/Projects/Twilio/asterisk/build_tools/sha1sum-sh
checking for openssl... /opt/brew/bin/openssl
checking for bison that supports parse-param... /usr/bin/bison
checking for soxmix... no
checking for md5... md5
checking for a sed that does not truncate output... (cached) /usr/bin/sed
checking whether gcc is Clang... yes
checking whether Clang needs flag to prevent "argument unused" warning when linking with -pthread... -Qunused-arguments
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking whether more special flags are required for pthreads... no
checking for PTHREAD_PRIO_INHERIT... yes
checking for RAII support... checking for clang -fblocks... yes
checking for clang strsep/strcmp optimization... prevent use of __string2_1bptr_p / strsep / strcmp from bits/string2.h
checking for embedded pjproject (may have to download)... configuring
[pjproject]  Verifying /var/folders/rf/mq84rkb50gqfnrfrrsm74c5d1tkx0l/T//pjproject-2.6.tar.bz2
/usr/bin/sed: illegal option -- r
usage: sed script [-Ealn] [-i extension] [file ...]
       sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]
/usr/bin/sed: illegal option -- r
usage: sed script [-Ealn] [-i extension] [file ...]
       sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]
[pjproject]  Verify successful
[pjproject]  Unpacking /var/folders/rf/mq84rkb50gqfnrfrrsm74c5d1tkx0l/T//pjproject-2.6.tar.bz2
[pjproject]  Applying patches
readlink: illegal option -- f
usage: readlink [-n] [file ...]
readlink: illegal option -- f
usage: readlink [-n] [file ...]
 is not a directory
make: *** [source/.unpacked] Error 1
failed
configure: Unable to configure third-party/pjproject
configure: error: Re-run the ./configure command with 'NOISY_BUILD=yes' appended to see error details.
{code}

Marking as regression because it actually worked for me on some older OSX and older Asterisk (11 and 13) versions.


> Asterisk fails to configure on MacOS Sierra
> -------------------------------------------
>
>                 Key: ASTERISK-27332
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-27332
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>    Affects Versions: 15.0.0
>         Environment: MacOS Sierra 10.12.6
>            Reporter: Ivan Larionov
>
> Asterisk 15 (may be older versions as well) fails to configure on MacOS Sierra (may be affects some other OS as well).
> Looks like it's due to {{sed}} and {{readlink}} calls incompatibility. For me it fails on {{pjproject}} verification and applying patches.
> Using {{greadlink}} instead of {{readlink}} helps.
> Places where incompatible calls are made from:
> * {{third-party/pjproject/Makefile}}
> * {{third-party/pjproject/apply_patches}}
> * may be more
> {code}
> $ ./bootstrap.sh 
> Generating the configure script ...
> $ ./configure --without-asound --without-netsnmp --without-gtk2 --with-crypto --with-ssl
> checking build system type... x86_64-apple-darwin16.7.0
> checking host system type... x86_64-apple-darwin16.7.0
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables... 
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking how to run the C preprocessor... gcc -E
> checking for grep that handles long lines and -e... /usr/bin/grep
> checking for egrep... /usr/bin/grep -E
> checking for ANSI C header files... yes
> checking for sys/types.h... yes
> checking for sys/stat.h... yes
> checking for stdlib.h... yes
> checking for string.h... yes
> checking for memory.h... yes
> checking for strings.h... yes
> checking for inttypes.h... yes
> checking for stdint.h... yes
> checking for unistd.h... yes
> checking minix/config.h usability... no
> checking minix/config.h presence... no
> checking for minix/config.h... no
> checking whether it is safe to define __EXTENSIONS__... yes
> checking whether char is unsigned... no
> checking for uname... /usr/bin/uname
> checking for g++... g++
> checking whether we are using the GNU C++ compiler... yes
> checking whether g++ accepts -g... yes
> checking how to run the C preprocessor... gcc -E
> checking how to run the C++ preprocessor... g++ -E
> checking for a sed that does not truncate output... /usr/bin/sed
> checking for egrep... grep -E
> checking for ld used by gcc... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
> checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
> checking for gawk... no
> checking for mawk... no
> checking for nawk... no
> checking for awk... awk
> checking for a BSD-compatible install... /opt/brew/bin/ginstall -c
> checking whether ln -s works... yes
> checking for ranlib... ranlib
> checking for GNU make... make
> checking for egrep... (cached) /usr/bin/grep -E
> checking for strip... strip
> checking for ar... ar
> checking for bison... /usr/bin/bison
> checking for cmp... /usr/bin/cmp
> checking for cat... /bin/cat
> checking for flex... /usr/bin/flex
> checking for grep... (cached) /usr/bin/grep
> checking for python... /opt/brew/opt/python/libexec/bin/python
> checking for find... /usr/bin/find
> checking for compress... /usr/bin/compress
> checking for basename... /usr/bin/basename
> checking for dirname... /usr/bin/dirname
> checking for sh... /bin/sh
> checking for ln... /bin/ln
> checking for doxygen... :
> checking for dot... /opt/brew/bin/dot
> checking for wget... /opt/brew/bin/wget
> checking for curl... /usr/bin/curl
> checking for rubber... :
> checking for catdvi... :
> checking for kpsewhich... :
> checking for xmllint... /opt/brew/bin/xmllint
> checking for xmlstarlet... :
> checking for bash... /bin/sh
> checking for git... /opt/brew/bin/git
> checking for alembic... :
> checking for bzip2... /usr/bin/bzip2
> checking for tar... /usr/bin/tar
> checking for patch... /usr/bin/patch
> checking for sed... (cached) /usr/bin/sed
> checking for nm... /usr/bin/nm
> checking for ldconfig... :
> checking for sha1sum... /Users/ilarionov/Projects/Twilio/asterisk/build_tools/sha1sum-sh
> checking for openssl... /opt/brew/bin/openssl
> checking for bison that supports parse-param... /usr/bin/bison
> checking for soxmix... no
> checking for md5... md5
> checking for a sed that does not truncate output... (cached) /usr/bin/sed
> checking whether gcc is Clang... yes
> checking whether Clang needs flag to prevent "argument unused" warning when linking with -pthread... -Qunused-arguments
> checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
> checking whether more special flags are required for pthreads... no
> checking for PTHREAD_PRIO_INHERIT... yes
> checking for RAII support... checking for clang -fblocks... yes
> checking for clang strsep/strcmp optimization... prevent use of __string2_1bptr_p / strsep / strcmp from bits/string2.h
> checking for embedded pjproject (may have to download)... configuring
> [pjproject]  Verifying /var/folders/rf/mq84rkb50gqfnrfrrsm74c5d1tkx0l/T//pjproject-2.6.tar.bz2
> /usr/bin/sed: illegal option -- r
> usage: sed script [-Ealn] [-i extension] [file ...]
>        sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]
> /usr/bin/sed: illegal option -- r
> usage: sed script [-Ealn] [-i extension] [file ...]
>        sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]
> [pjproject]  Verify successful
> [pjproject]  Unpacking /var/folders/rf/mq84rkb50gqfnrfrrsm74c5d1tkx0l/T//pjproject-2.6.tar.bz2
> [pjproject]  Applying patches
> readlink: illegal option -- f
> usage: readlink [-n] [file ...]
> readlink: illegal option -- f
> usage: readlink [-n] [file ...]
>  is not a directory
> make: *** [source/.unpacked] Error 1
> failed
> configure: Unable to configure third-party/pjproject
> configure: error: Re-run the ./configure command with 'NOISY_BUILD=yes' appended to see error details.
> {code}
> Marking as regression because it actually worked for me on some older OSX and older Asterisk (11 and 13) versions.



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list