Skip to content

Instantly share code, notes, and snippets.

@ashleyw
Last active December 19, 2015 10:59
Show Gist options
  • Save ashleyw/5944968 to your computer and use it in GitHub Desktop.
Save ashleyw/5944968 to your computer and use it in GitHub Desktop.
Took a while to track this conflict down while trying to install RethinkDB...
% brew install boost (add --interactive to be able to view bootstrap.log!)
./bootstrap.sh --prefix=/usr/local/Cellar/boost/1.53.0 --libdir=/usr/local/Cellar/boost/1.53.0/lib --without-icu
-n Building Boost.Build engine with toolset darwin...
Failed to build Boost.Build build engine
Consult 'bootstrap.log' for more details
Fix, via https://github.com/mxcl/homebrew/issues/12457#issuecomment-5992798:
> The problem is that the go formula installs a conflicting ar.h
> header file that is then picked up during builds. - jacknagel
% brew uninstall go
% brew install boost
...
/usr/local/Cellar/rethinkdb/1.6.1: 168 files, 25M, built in 4.7 minutes
Success! Thanks jacknagel!
bootstrap.log:
###
### Using 'darwin' toolset.
###
rm -rf bootstrap
mkdir bootstrap
cc -o bootstrap/jam0 command.c compile.c constants.c debug.c function.c glob.c hash.c hdrmacro.c headers.c jam.c jambase.c jamgram.c lists.c make.c make1.c object.c option.c output.c parse.c pathunix.c regexp.c rules.c scan.c search.c subst.c timestamp.c variable.c modules.c strings.c filesys.c builtins.c pwd.c class.c native.c md5.c w32_getreg.c modules/set.c modules/path.c modules/regex.c modules/property-set.c modules/sequence.c modules/order.c execunix.c fileunix.c
function.c:3109:31: warning: format specifies type 'char *' but the argument has type 'OBJECT *' (aka 'struct _object *') [-Wformat]
printf( "%s", formal_arg->arg_name );
~~ ^~~~~~~~~~~~~~~~~~~~
1 warning generated.
make.c:273:37: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int]
printf( "make\t--\t%s%s\n", spaces( depth ), object_str( t->name ) );
^~~~~~~~~~~~~~~
make.c:102:45: note: expanded from macro 'spaces'
# define spaces(x) ( " " + ( x > 20 ? 0 : 20-x ) )
~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
make.c:273:37: note: use array indexing to silence this warning
printf( "make\t--\t%s%s\n", spaces( depth ), object_str( t->name ) );
^
make.c:102:45: note: expanded from macro 'spaces'
# define spaces(x) ( " " + ( x > 20 ? 0 : 20-x ) )
^
make.c:280:37: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int]
printf( "make\t--\t%s%s\n", spaces( depth ), object_str( t->name ) );
^~~~~~~~~~~~~~~
make.c:102:45: note: expanded from macro 'spaces'
# define spaces(x) ( " " + ( x > 20 ? 0 : 20-x ) )
~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
make.c:280:37: note: use array indexing to silence this warning
printf( "make\t--\t%s%s\n", spaces( depth ), object_str( t->name ) );
^
make.c:102:45: note: expanded from macro 'spaces'
# define spaces(x) ( " " + ( x > 20 ? 0 : 20-x ) )
^
make.c:351:17: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int]
spaces( depth ), object_str( t->name ), object_str( t->boundname ) );
^~~~~~~~~~~~~~~
make.c:102:45: note: expanded from macro 'spaces'
# define spaces(x) ( " " + ( x > 20 ? 0 : 20-x ) )
~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
make.c:351:17: note: use array indexing to silence this warning
spaces( depth ), object_str( t->name ), object_str( t->boundname ) );
^
make.c:102:45: note: expanded from macro 'spaces'
# define spaces(x) ( " " + ( x > 20 ? 0 : 20-x ) )
^
make.c:359:17: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int]
spaces( depth ), object_str( t->name ), target_bind[ (int) t->binding ] );
^~~~~~~~~~~~~~~
make.c:102:45: note: expanded from macro 'spaces'
# define spaces(x) ( " " + ( x > 20 ? 0 : 20-x ) )
~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
make.c:359:17: note: use array indexing to silence this warning
spaces( depth ), object_str( t->name ), target_bind[ (int) t->binding ] );
^
make.c:102:45: note: expanded from macro 'spaces'
# define spaces(x) ( " " + ( x > 20 ? 0 : 20-x ) )
^
make.c:364:17: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int]
spaces( depth ), object_str( t->name ), ctime( &t->time ) );
^~~~~~~~~~~~~~~
make.c:102:45: note: expanded from macro 'spaces'
# define spaces(x) ( " " + ( x > 20 ? 0 : 20-x ) )
~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
make.c:364:17: note: use array indexing to silence this warning
spaces( depth ), object_str( t->name ), ctime( &t->time ) );
^
make.c:102:45: note: expanded from macro 'spaces'
# define spaces(x) ( " " + ( x > 20 ? 0 : 20-x ) )
^
make.c:645:13: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int]
spaces( depth ), object_str( t->name ) );
^~~~~~~~~~~~~~~
make.c:102:45: note: expanded from macro 'spaces'
# define spaces(x) ( " " + ( x > 20 ? 0 : 20-x ) )
~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
make.c:645:13: note: use array indexing to silence this warning
spaces( depth ), object_str( t->name ) );
^
make.c:102:45: note: expanded from macro 'spaces'
# define spaces(x) ( " " + ( x > 20 ? 0 : 20-x ) )
^
6 warnings generated.
fileunix.c:303:33: error: no member named 'ar_fmag' in 'struct ar_hdr'
&& !( memcmp( ar_hdr.ar_fmag, ARFMAG, SARFMAG )
~~~~~~ ^
fileunix.c:320:35: error: no member named 'ar_name' in 'struct ar_hdr'
strncpy( lar_name, ar_hdr.ar_name, sizeof(ar_hdr.ar_name) );
~~~~~~ ^
/usr/include/secure/_string.h:124:37: note: expanded from macro 'strncpy'
? __builtin___strncpy_chk (dest, src, len, __darwin_obsz (dest)) \
^
fileunix.c:320:35: error: no member named 'ar_name' in 'struct ar_hdr'
strncpy( lar_name, ar_hdr.ar_name, sizeof(ar_hdr.ar_name) );
~~~~~~ ^
/usr/include/secure/_string.h:125:34: note: expanded from macro 'strncpy'
: __inline_strncpy_chk (dest, src, len))
^
fileunix.c:322:24: error: no member named 'ar_date' in 'struct ar_hdr'
sscanf( ar_hdr.ar_date, "%ld", &lar_date );
~~~~~~ ^
fileunix.c:323:24: error: no member named 'ar_size' in 'struct ar_hdr'
sscanf( ar_hdr.ar_size, "%ld", &lar_size );
~~~~~~ ^
fileunix.c:325:20: error: no member named 'ar_name' in 'struct ar_hdr'
if (ar_hdr.ar_name[0] == '/')
~~~~~~ ^
fileunix.c:327:20: error: no member named 'ar_name' in 'struct ar_hdr'
if (ar_hdr.ar_name[1] == '/')
~~~~~~ ^
fileunix.c:339:41: error: no member named 'ar_name' in 'struct ar_hdr'
else if (string_table && ar_hdr.ar_name[1] != ' ')
~~~~~~ ^
8 errors generated.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment