[cfe-commits] [patch] Add support for different libstdc++ search path with -m32 and -m64

Douglas Gregor dgregor at apple.com
Wed Oct 14 09:09:07 PDT 2009


On Oct 14, 2009, at 6:48 AM, Rafael Espindola wrote:

>> For cases where we have both 32- and 64-bit paths in the search  
>> path, like
>> this:
>>
>>           // Arch Linux 2008-06-24
>>           AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.3.1",
>> -                                      "i686-pc-linux-gnu");
>> +                                      "i686-pc-linux-gnu",
>> +                                      "i686-pc-linux-gnu",
>> +                                      triple);
>>           AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.3.1",
>> -                                      "x86_64-unknown-linux-gnu");
>> +                                      "x86_64-unknown-linux-gnu",
>> +                                      "x86_64-unknown-linux-gnu",
>> +                                      triple);
>>
>>
>> I think it's better to just merge it down to
>>
>>        AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.3.1",
>>                        "i686-pc-linux-gnu",
>>                        "x86_64-unknown-linux-gnu",
>>                        triple);
>>
>> and let people complain if we happen to break their platform. More  
>> likely,
>> we'll fix something they didn't know was broken.
>
>
> This is probably not the right fix for most systems. For example, I  
> have
> a 64 bit ubuntu (/bin/bash is a 64 bit binary). The c++ paths for - 
> m32 bit are
>
> /usr/include/c++/4.2
> /usr/include/c++/4.2/x86_64-linux-gnu/32
> /usr/include/c++/4.2/backward
>
> and for -m64 they are
>
> /usr/include/c++/4.2
> /usr/include/c++/4.2/x86_64-linux-gnu
> /usr/include/c++/4.2/backward
>
> I assume that in a 32 bit with -m64 they would look something like
>
> /usr/include/c++/4.2
> /usr/include/c++/4.2/i686-linux-gnu
> /usr/include/c++/4.2/backward
>
> and
>
> /usr/include/c++/4.2
> /usr/include/c++/4.2/i686-linux-gnu/x86_64
> /usr/include/c++/4.2/backward
>
> But I don't have a 32 bit system at hand :-)

Oh, the perils of multi-libs. Thanks for the reminder; I had tried to  
forget about them :)

> Is the updated patch (emailed yesterday) OK?

Yes.

	- Doug



More information about the cfe-commits mailing list