UsingTheRightCompiler

Matthew Cottrell matt.cottrell at mac.com
Mon Nov 14 16:16:29 PST 2011


Yes,  '-x c-header'  is exactly what was needed.  Precompiler problem now solved.

I'll be revising the ticket to upgrade ARB to 5.3 shortly with this and a couple of other fixes.


On Nov 14, 2011, at 7:48 AM, Joshua Root wrote:

> You might need to use '-x c-header' as well because the input file doesn't have the usual suffix. I'd guess it's parsing '.source' as '.so' which makes it treat it as a linker input.
> 
> - Josh
> 
> On 2011-11-14 23:36 , Matthew Cottrell wrote:
>> Still no luck with the preprocessor problem.  Using clang -E still returns an error:
>> 
>> :info:build clang -E -IMENUS ARB_GDEmenus.source>ARB_GDEmenus
>> :info:build clang: warning: ARB_GDEmenus.source: 'linker' input unused when '-E' is present
>> :info:build clang: warning: argument unused during compilation: '-I MENUS'
>> 
>> 
>> 
>> On Nov 13, 2011, at 10:37 PM, Joshua Root wrote:
>> 
>>> You don't appear to actually be using clang in the output you quoted, but rather 'cc', which is linked to llvm-gcc-4.2 on your system. I don't know if clang -E would behave significantly differently, but it's well worth checking.
>>> 
>>> - Josh
>>> 
>>> On 2011-11-14 13:19 , Matthew Cottrell wrote:
>>>> Using "$(CC) -E" did not succeed because it left an input file unused.
>>>> 
>>>> :info:build cc -E -IMENUS ARB_GDEmenus.source>ARB_GDEmenus
>>>> :info:build i686-apple-darwin11-llvm-gcc-4.2: ARB_GDEmenus.source: linker input file unused because linking not done
>>>> 
>>>> Would it be too brittle to simply use /usr/bin/cpp?
>>>> 
>>>> That seems to work just fine:
>>>> 
>>>> :info:build cpp -IMENUS ARB_GDEmenus.source>ARB_GDEmenu
>>>> 
>>>> But I don't want to create a situation that will break for some folks.
>>>> 
>>>> 
>>>> On Nov 13, 2011, at 8:57 PM, Ryan Schmidt wrote:
>>>> 
>>>>> 
>>>>> On Nov 13, 2011, at 19:27, Matthew Cottrell wrote:
>>>>> 
>>>>>> I'm trying to use the right compiler, but ${configure.cpp} is empty on my system.  How do I satisfy a port that needs cpp?
>>>>>> 
>>>>>> I do have the other stuff
>>>>>> 
>>>>>> ${configure.cc}=/Developer/usr/bin/clang
>>>>>> ${configure.cxx}=/Developer/usr/bin/clang++
>>>>> 
>>>>> configure.cpp should be populated for most compilers, but MacPorts does not set the CPP environment variable for you; doing so caused problems for more ports than it solved.
>>>>> 
>>>>> If you have a port that needs CPP set, set it yourself, as in:
>>>>> 
>>>>> configure.env CPP=${configure.cpp}
>>>>> 
>>>>> But I do see that configure.cpp is empty when the compiler is clang. Typically, when $(CPP) is empty, software will use "$(CC) -E". So you could try setting it that way.
>> 
>> --
>> Matthew Cottrell
>> Lewes, DE 19958
>> 
>> http://www.mattcottrell.org
>> 
>> 
>> 
>> 
> 

--
Matthew Cottrell
Lewes, DE 19958

http://www.mattcottrell.org






More information about the macports-dev mailing list