[RTEMS Project] #4927: "Build Your Application" (Quick Start section 2.7) doesn't work

RTEMS trac trac at rtems.org
Thu Jul 13 18:03:30 UTC 2023


#4927: "Build Your Application" (Quick Start section 2.7) doesn't work
------------------------+--------------------
  Reporter:  bsterling  |      Owner:  (none)
      Type:  defect     |     Status:  new
  Priority:  normal     |  Milestone:
 Component:  admin      |    Version:
  Severity:  normal     |   Keywords:
Blocked By:             |   Blocking:
------------------------+--------------------
 I followed the Quick Start instructions verbatim.  When I got to 2.7, the
 build fails.  This failure as well as the suggested workaround is
 documented in
 https://lists.rtems.org/pipermail/users/2023-July/068846.html.  I'm
 repeating it here in order to avoid cross-references.

 I'm filing this against the documentation rather than the waf tool simply
 because the waf tool may be functioning as desired, but the documentation
 needs to be updated.

 Ok, in order to eliminate the concerns that I had specified directories or
 parameter incorrectly, I restarted the 'Quick Start'
 (https://docs.rtems.org/branches/master/user/start/index.html) from
 scratch.  The application build still fails (with the errors I saw
 before).

 Below are all of the steps I did (I followed exactly​ along with the
 'Quick Start' guide - you are welcome to verify everything I did).  The
 errors (which are the same errors that my co-worker got) that occur with
 the application configure
 (https://docs.rtems.org/branches/master/user/start/app.html) are shown
 after all of the commands.
 One thing I noticed was that there's a difference in the 'waf' options
 between the BSP configure and the application configure.  However, when I
 changed '--rtems=' to '--prefix=' in the failing case, the command still
 failed.
 Given that I followed the 'Quick Start' explicitly, I still think there's
 something wrong with the 'application' part of the 'quick start' (as
 verified by another co-worker).  As such, I'll try anything that can be
 suggested.

 I'm also willing to help debug the 'non-git clone' mechanisms if that's
 where people want to start.  In the meantime, things are going a little
 bit slow with trying to use RTEMS :-) .

 Thanks in advance.


 (NOTE - I had to use the git clone mechanism because the other mechanisms
 were not working)
 mkdir -p $HOME/quick-start/src
 cd $HOME/quick-start/src
 git clone git://git.rtems.org/rtems-source-builder.git rsb
 git clone git://git.rtems.org/rtems.git

 cd $HOME/quick-start/src/rsb/rtems
 ../source-builder/sb-set-builder --prefix=$HOME/quick-start/rtems/6 6
 /rtems-sparc

 (NOTE - I had to manually build because the 'RSB BSP Build' did not work)
 mkdir -p $HOME/quick-start/build/b-erc32
 export PATH=$HOME/quick-start/rtems/6/bin:"$PATH"
 command -v sparc-rtems6-gcc && echo "found" || echo "not found"
 cd $HOME/quick-start/src/rtems
 echo "[sparc/erc32]" > config.ini
 echo "BUILD_TESTS = True" >> config.ini
 ./waf configure --prefix=$HOME/quick-start/rtems/6
 cd $HOME/quick-start/src/rtems
 ./waf
 cd $HOME/quick-start/src/rtems
 ./waf install

 cd $HOME/quick-start/src/rtems
 rtems-test --rtems-bsp=erc32-sis build/sparc/erc32

 mkdir -p $HOME/quick-start/app/hello
 cd $HOME/quick-start/app/hello
 curl https://waf.io/waf-2.0.19 > waf
 chmod +x waf
 git init
 git submodule add git://git.rtems.org/rtems_waf.git rtems_waf
 (Create the 3 specified application files)
 ./waf configure --rtems=$HOME/quick-start/rtems/6 --rtems-bsp=sparc/erc32

 The errors I get are:

 ~/quick-start/app/hello$ ./waf configure --rtems=$HOME/quick-start/rtems/6
 --rtems-bsp=sparc/erc32Setting top to                           :
 /home/bsterling/quick-start/app/hello
 Setting out to                           : /home/bsterling/quick-
 start/app/hello/build
 Traceback (most recent call last):
   File "/home/bsterling/quick-
 start/app/hello/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Scripting.py",
 line 119, in waf_entry_point
     run_commands()
   File "/home/bsterling/quick-
 start/app/hello/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Scripting.py",
 line 182, in run_commands
     ctx=run_command(cmd_name)
   File "/home/bsterling/quick-
 start/app/hello/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Scripting.py",
 line 173, in run_command
     ctx.execute()
   File "/home/bsterling/quick-
 start/app/hello/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Configure.py",
 line 85, in execute
     super(ConfigurationContext,self).execute()
   File "/home/bsterling/quick-
 start/app/hello/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Context.py",
 line 92, in execute
     self.recurse([os.path.dirname(g_module.root_path)])
   File "/home/bsterling/quick-
 start/app/hello/.waf3-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Context.py",
 line 133, in recurse
     user_function(self)
   File "/home/bsterling/quick-start/app/hello/wscript", line 26, in
 configure
     rtems.configure(conf, bsp_configure = bsp_configure)
   File "/home/bsterling/quick-start/app/hello/rtems_waf/rtems.py", line
 190, in configure
     check_options(conf,
   File "/home/bsterling/quick-start/app/hello/rtems_waf/rtems.py", line
 496, in check_options
     arch_bsps = _check_arch_bsps(rtems_bsps, rtems_config, rtems_path,
   File "/home/bsterling/quick-start/app/hello/rtems_waf/rtems.py", line
 851, in _check_arch_bsps
     installed = _find_installed_arch_bsps(config, path, archs, version)
   File "/home/bsterling/quick-start/app/hello/rtems_waf/rtems.py", line
 823, in _find_installed_arch_bsps
     if _arch_from_arch_bsp(f[:-3]) in archs:
   File "/home/bsterling/quick-start/app/hello/rtems_waf/rtems.py", line
 862, in _arch_from_arch_bsp
     rtems_field_index = next(i for i, field in enumerate(fields) if
 field.startswith('rtems'))
 StopIteration

--
Ticket URL: <http://devel.rtems.org/ticket/4927>
RTEMS Project <http://www.rtems.org/>
RTEMS Project


More information about the bugs mailing list