Trouble building examples-v2 with waf. Was: Re: can't compile both_hello - POSIX API error

Dominik Taborsky bremby at seznam.cz
Mon Jan 5 21:29:30 UTC 2015


On Mon, 05 Jan 2015 14:17:42 +0100, Joel Sherrill
<joel.sherrill at oarcorp.com> wrote:

>
> On 1/4/2015 3:23 PM, Dominik Taborsky wrote:
>> On Sun, 04 Jan 2015 22:09:16 +0100, Joel Sherrill
>> <joel.sherrill at oarcorp.com> wrote:
>>
>>> On 1/4/2015 2:47 PM, Dominik Taborsky wrote:
>>>> On Sun, 04 Jan 2015 21:12:16 +0100, Joel Sherrill
>>>> <joel.sherrill at oarcorp.com> wrote:
>>>>
>>>>> On January 4, 2015 2:05:13 PM CST, Dominik Taborsky  
>>>>> <bremby at seznam.cz>
>>>>> wrote:
>>>>>> On Sun, 04 Jan 2015 20:53:16 +0100, Joel Sherrill
>>>>>> <joel.sherrill at oarcorp.com> wrote:
>>>>>>
>>>>>>> On January 4, 2015 1:20:31 PM CST, "Dominik Táborský"
>>>>>> <Bremby at seznam.cz>
>>>>>>> wrote:
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> I've configured RTEMS with --enable-posix, run make, make  
>>>>>>>> install..
>>>>>>>> Everything went smoothly, didn't notice any error. But when I run
>>>>>> make
>>>>>>>> in the both_hello example, it errors:
>>>>>>>>
>>>>>>>> In file included from test.c:55:0:
>>>>>>>> /opt/rtems-4.11/sparc-rtems4.11/sis/lib/include/rtems/confdefs.h:  
>>>>>>>> At
>>>>>>>> top level:
>>>>>>>>
>>>>>> /opt/rtems-4.11/sparc-rtems4.11/sis/lib/include/rtems/confdefs.h:2945:4:
>>>>>>>> error: #error "CONFIGURATION ERROR: POSIX API support not
>>>>>> configured!!"
>>>>>>>>    #error "CONFIGURATION ERROR: POSIX API support not  
>>>>>>>> configured!!"
>>>>>>>>
>>>>>>>> All repos are up-to-date, ran make clean between configs and even
>>>>>>>> manually deleted the installed RTEMS files to ensure new ones are
>>>>>> being
>>>>>>>> installed. Any ideas?
>>>>>>> How did you configure RTEMS? If you has --disable-posix, then this  
>>>>>>> is
>>>>>>> expected.
>>>>>> As I said in the beginning of the mail, I configured it with
>>>>>> --enable-posix. Or would you like the whole command?
>>>>> Sure. Since it worked for me, that's the next step.
>>>> OK. I've completely rebuilt RTEMS from scratch and it works now. It
>>>> looks
>>>> like some old config was still in place.
>>>>
>>>> Now I have a different problem - waf has trouble building examples-v2  
>>>> in
>>>> root of the repo. GCC complains about bsp_specs trying to rename spec
>>>> 'endfile' to already defined spec 'old_endfile'. It happens quite
>>>> randomly
>>>> among the files. I've never worked with these bsp specs before, so I'm
>>>> at
>>>> my wit's end.
>>>>
>>>> sparc-rtems4.11-gcc: fatal error:
>>>> /opt/rtems-4.11//sparc-rtems4.11/sis/lib/bsp_specs: attempt to rename
>>>> spec
>>>> 'endfile' to already defined spec 'old_endfile'
>>>> compilation terminated.
>>> These tools are in /opt. Did you build them using the RTEMS Source
>>> Builder (RSB)
>>> or install RPMs?
>> RSB. The tools (GCC, etc.) are not in /opt, but in my folder somewhere  
>> at
>> $HOME. RTEMS is installed to /opt with tools in /opt/rtems-4.11/bin.
> Can you check that the librtemscpu.a in your build tree is actually the
> same one
> that was installed in something like
> /opt/rtems-4.11/sparc-rtems4.11/sis/lib?
>
> Ditto for cpuopts.h.  If POSIX is really enabled, the installed version
> will have this:
>
> /* if posix api is supported */
> #define RTEMS_POSIX_API 1
>
> Overnight, I wondered if you forgot to do a make install and have some  
> other
> build there.

It's not about POSIX now. As I said, an old config was not being
overwritten and was still generating posix-disabled builds. I've redone it
   from scratch and it works now. Now it's about waf spitting out errors  
that
are not there when using make.

If I change to a specific example directory and run make, no problem. When
I use waf (in local dir or in the root of examples-v2), it exits with the
error posted above, or here for convenience:
sparc-rtems4.11-gcc: fatal error:
/opt/rtems-4.11//sparc-rtems4.11/sis/lib/bsp_specs: attempt to rename spec
'endfile' to already defined spec 'old_endfile'
compilation terminated.

Waf is configured (hopefully) fine. Otherwise it wouldn't even try to
build. Has anyone had any similar problem?

waf configure was run with these options: --rtems=/opt/rtems-4.11/
--rtems-tools=$HOME/development/RTEMS-tools/4.11 --rtems-bsps=sparc/sis

I honestly don't even know what the error means, I've never used bsp_specs
files before.


>>> This isn't a waf problem but looks like a tools issue.
>> May be true. I'm still a beginner around RTEMS and its toolchain and  
>> build
>> process. But everything else seems to work fine. Even the individual
>> files, that cause the waf build process to fail, build fine with make..
>>
>>>> Any advice?
>>>>
>>>> Dominik


More information about the devel mailing list