Attempting to build an app for Beaglebone

Ben Gras beng at shrike-systems.com
Thu Jul 2 00:09:25 UTC 2015


That is likely a $PATH problem. Make sure your RTEMS prefix/bin is
first in your $PATH when you do this.

Good luck :)


On Thu, Jul 2, 2015 at 1:51 AM, Angelo Fraietta
<newsgroups at smartcontroller.com.au> wrote:
> I thought I would try and rebuild sources again, however, I got an error
> that autoconf version 2.69 or greater was required when I tried to
> bootstrap.  I don't know why it all passed last time. I am updating my
> system and after that will try again
>
> On Thu, Jul 2, 2015 at 9:25 AM, Angelo Fraietta
> <newsgroups at smartcontroller.com.au> wrote:
>>
>> I followed Ben's tutorial.
>>
>>  % ../source-builder/sb-set-builder --log=beagle.txt
>> --prefix=$HOME/development/rtems/4.11 devel/beagle.bset
>>
>> and
>>
>>  % mkdir b-beagle ; cd b-beagle
>>     % CONSOLE_POLLED=1 ../rtems-src/configure --target=arm-rtems4.11
>> --enable-rtemsbsp="beagleboneblack beagleboardxm" --enable-tests
>>     % make
>>
>>
>> I have done a grep for that file and it comes up like this
>>
>> angelo at debian:~/development$ find -name leaf.cfg
>> ./rtems/b-beagle/arm-rtems4.11/c/beagleboardxm/make/leaf.cfg
>> ./rtems/b-beagle/arm-rtems4.11/c/beagleboneblack/make/leaf.cfg
>> ./rtems/rtems-src/make/leaf.cfg
>> ./rtems/rtems-src/c/src/make/leaf.cfg
>>
>> So I decided to do a symlink
>> root at debian:/opt# ln -s
>> /home/angelo/development/rtems/b-beagle/arm-rtems4.11/c/
>> beagleboneblack/ /opt/rtems-4.11
>>
>> Now when I go make, I get the error
>> make: *** No rule to make target `/init.o', needed by `/gpio.exe'.  Stop.
>>
>> So it seems that ARCH is not being defined somewhere that it needs to be.
>> So making the symlink is not the solution.
>> Also, looking at RTEMS doc,
>> https://docs.rtems.org/doc-current/share/rtems/pdf/started.pdf, it said it
>> was supposed to install to /opt/rtems-4.11 by default, which it did not.
>>
>>
>> On Thu, Jul 2, 2015 at 6:58 AM, Diego Sanz <dshernan80 at gmail.com> wrote:
>>>
>>> One question, this Makefile has been made by you?, or you has used
>>> another one from an example of building applications?
>>>
>>> What is strange from my point of view is that:
>>>
>>> your "RTEMS_MAKEFILE_PATH:
>>> /home/angelo/development/rtems/b-beagle/arm-rtems4.11/c/beagleboneblack/make/"
>>> includes the last make folder try with:
>>> RTEMS_MAKEFILE_PATH:
>>> /home/angelo/development/rtems/b-beagle/arm-rtems4.11/c/beagleboneblack, I
>>> suppose that that this is where you have installed your RTEMS built for
>>> architecture arm-rtems4.11, and board beagleboneblack...
>>>
>>> another problem is that you have as a target not found
>>> /opt/rtems-4.11/make/leaf.cfg, and then is because you have RTEMS installed
>>> in other place, it looks you have installed here:
>>> /home/angelo/development/rtems/b-beagle/arm-rtems4.11.
>>>
>>> Then
>>>
>>> RTEMS_MAKEFILE_PATH should be the place where RTEMS (after be compiled)
>>> is installed for your architecture arm and beagleboneblack
>>>
>>> Hope this give you some ide, but if you continue with the problem, take
>>> as example the example-v2 from the RTEMs repo, to make you a better idea
>>>
>>>
>>>
>>>
>>>
>>>
>>> 2015-06-30 6:45 GMT+02:00 Angelo Fraietta
>>> <newsgroups at smartcontroller.com.au>:
>>>>
>>>> To add a bit more light on what is happening, I added some echo in make
>>>> to find out what the variables are being evaluated as. This is what I get
>>>>
>>>>
>>>> RTEMS_ROOT: /opt/rtems-4.11
>>>> RTEMS_CUSTOM: /opt/rtems-4.11/make/custom/beagleboneblack.cfg
>>>> RTEMS_MAKEFILE_PATH:
>>>> /home/angelo/development/rtems/b-beagle/arm-rtems4.11/c/beagleboneblack/make/
>>>>
>>>>
>>>> On Mon, Jun 29, 2015 at 2:18 PM, Angelo Fraietta
>>>> <newsgroups at smartcontroller.com.au> wrote:
>>>>>
>>>>> Greetings
>>>>>
>>>>> I have been able to successfully able to build and run RTEMS samples
>>>>> using Ben's tutorial at
>>>>>
>>>>> http://www.shrike-systems.com/beagleboard-xm-beaglebone-black-and-everything-else-rtems-on-the-beagles.html
>>>>>
>>>>> with a few mods and am able to run using tftp
>>>>>
>>>>> However, I am having difficulty using my own make file to build an app.
>>>>>
>>>>> I have added RTEMS_MAKEFILE_PATH to my environment and added
>>>>>
>>>>> PATH=$PATH:/home/angelo/development/rtems/4.11/bin
>>>>>
>>>>>
>>>>> When I run my makefile, I get an error
>>>>>
>>>>> Makefile:41: /opt/rtems-4.11/make/leaf.cfg: No such file or directory
>>>>>
>>>>> make: *** No rule to make target `/opt/rtems-4.11/make/leaf.cfg'.
>>>>> Stop.
>>>>>
>>>>> It looks to me like RTEMS_ROOT is not being set properly (I could be
>>>>> wrong)
>>>>>
>>>>> Find below makefile contents
>>>>>
>>>>> EXEC=gpio.exe
>>>>> # C source names, if any, go here -- minus the .c
>>>>> C_PIECES= init
>>>>> C_FILES=$(C_PIECES:%=%.c)
>>>>> C_O_FILES=$(C_PIECES:%=${ARCH}/%.o)
>>>>>
>>>>> # C++ source names, if any, go here -- minus the .cc
>>>>> CC_PIECES=
>>>>>
>>>>> CC_FILES=$(CC_PIECES:%=%.cpp)
>>>>> CC_O_FILES=$(CC_PIECES:%=${ARCH}/%.o)
>>>>>
>>>>> H_FILES=
>>>>>
>>>>> # Assembly source names, if any, go here -- minus the .S
>>>>> S_PIECES=
>>>>> S_FILES=$(S_PIECES:%=%.S)
>>>>> S_O_FILES=$(S_FILES:%.S=${ARCH}/%.o)
>>>>>
>>>>> SRCS=$(C_FILES) $(CC_FILES) $(H_FILES) $(S_FILES)
>>>>> OBJS=$(C_O_FILES) $(CC_O_FILES) $(S_O_FILES)
>>>>>
>>>>> PGMS=${ARCH}/$(EXEC) #${ARCH}/xxx-another-one
>>>>>
>>>>> # List of RTEMS managers to be included in the application goes here.
>>>>> # Use:
>>>>> #     MANAGERS=all
>>>>> # to include all RTEMS managers in the application.
>>>>> MANAGERS=io event message rate_monotonic semaphore timer
>>>>>
>>>>> include $(RTEMS_MAKEFILE_PATH)/Makefile.inc
>>>>>
>>>>> include $(RTEMS_CUSTOM)
>>>>> include $(RTEMS_ROOT)/make/leaf.cfg
>>>>>
>>>>> #
>>>>> # (OPTIONAL) Add local stuff here using +=
>>>>> #
>>>>>
>>>>> DEFINES  +=
>>>>> CPPFLAGS +=
>>>>>
>>>>> XCPPFLAGS +=
>>>>> CFLAGS   +=
>>>>>
>>>>> #
>>>>> # CFLAGS_DEBUG_V are used when the `make debug' target is built.
>>>>> # To link your application with the non-optimized RTEMS routines,
>>>>> # uncomment the following line:
>>>>> # CFLAGS_DEBUG_V += -qrtems_debug
>>>>> #
>>>>>
>>>>> LD_PATHS  +=  #xxx-your-EXTRA-library-paths-go-here, if any
>>>>>
>>>>> LD_LIBS   +=
>>>>> # Add the following code when attempting to strip down in size
>>>>> #LDFLAGS   += -Wl,'-gc-sections'
>>>>>
>>>>> #
>>>>> # Add your list of files to delete here.  The config files
>>>>> #  already know how to delete some stuff, so you may want
>>>>> #  to just run 'make clean' first to see what gets missed.
>>>>> #  'make clobber' already includes 'make clean'
>>>>> #
>>>>>
>>>>> CLEAN_ADDITIONS +=
>>>>> CLOBBER_ADDITIONS +=
>>>>>
>>>>> all: ${ARCH} $(SRCS) $(PGMS)
>>>>>
>>>>> ${ARCH}/$(EXEC): ${OBJS} ${LINK_FILES}
>>>>> $(make-cxx-exe)
>>>>>
>>>>> # Install the program(s), appending _g or _p as appropriate.
>>>>> # for include files, just use $(INSTALL_CHANGE)
>>>>> install:  all
>>>>> $(INSTALL_VARIANT) -m 555 ${PGMS} ${PROJECT_RELEASE}/bin
>>>>>
>>>>>
>>>>> Any ideas?
>>>>>
>>>>> Thanks
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> users mailing list
>>>> users at rtems.org
>>>> http://lists.rtems.org/mailman/listinfo/users
>>>
>>>
>>
>



More information about the users mailing list