[odb-users] "unable to extract profile paths"

Boris Kolpackov boris at codesynthesis.com
Sun Sep 14 13:17:44 EDT 2014


Hi Adnan,

Adnan RIHAN <adnan at rihan.fr> writes:

> I’ve downloaded the pre-built, as before I update to 10.10
>
> [...]
>
> It segfaults with odb's included g++ [...]

Ok, this is interesting. We build both ODB and GCC on a really old
MacOS X version so that it works everywhere. Until now this worked
quite well. So I will have to look into this. Can you tell me what
was the version of MacOS before you upgraded (and where ODB worked
fine)?


> I don’t know if it’s useful, but I tried that line specifying my
> Xcode’s g++ executable, and I got other errors

'g++' that ships with XCode is actually Clang. This won't work with
ODB.

So the two options are:

1. Wait for me to figure out and hopefully fix the pre-built
   package. I won't be able to look into this until the end
   of the week (I am currently travelling from CppCon).

2. Build GCC and ODB from source yourself.

   As was recently reported by several users, this is actually
   quite easy. Here are the instructions from Bruce Cresanta:

   http://www.codesynthesis.com/pipermail/odb-users/2014-September/002055.html

Just to expand on building from source, make sure you are using
GCC 4.8.X and not 4.9.X (vanilla ODB 2.3.0 is not compatible with
GCC 4.9; this is fixed for the next release and there are patches
but I don't think it is worth the trouble patching 2.3.0 in most
cases).

Let's say you want to install ODB to /opt/odb-2.3.0. First, 
download and build GCC (we install it to /opt/gcc-4.8.3):

./configure --prefix=/opt/gcc-4.8.3 --enable-plugin
make
sudo make install

At this point check that the GCC compiler is functional by
trying to compile a test program:

/opt/gcc-4.8.3/bin/g++ -c hello.cpp

Then download and build the ODB compiler:

./configure CXX=/opt/gcc-4.8.3/bin/g++
make
sudo make install

Of course you can change the installation directories to something
else (e.g., /usr/local). Let us know how it goes.

Boris



More information about the odb-users mailing list