No acceptable C compiler found

Chris Johns chrisj at rtems.org
Tue Nov 13 23:22:32 UTC 2007


Joel Sherrill wrote:
> 
> Here's what we encountered yesterday?
> 
> + MinGW doesn't run on Vista correctly.  The native compiler
>    dies compiling hello world with a message like
>     "cc1 not found".  We searched online and others have
>     run into this but the only solution I saw was to put the
>     directory with cc1 in your PATH but that results in the
>     RTEMS cross compiler finding the native cc1 not the
>     cross one.  If you can find a solution to this, we would
>     be willing to try it.
> 

I do not have access to Vista and do not see myself obtaining Vista in the 
near future. I also understand the need for the tools to work on Vista.

If I can get VNC access to a machine available 24/7 that I can install various 
things I may be able to find the solution.

> + Somehow most of us -- including myself -- ended up
> with a PATH that wasn't right and we had to edit a .profile
> before out PATH was enough to use gcc natively on XP.

Did the standard "RTEMS Tools" cmd.exe work as expected ?

The installer creates a way to start a cmd.exe with the specific set up. I do 
not provide a way to do this for MSYS due to a range of issues. One being the 
way MSYS plays with paths. You need to understand the specific issues here to 
get a working solution.

I also do not support the placing of paths in the global "User Environment" on 
Windows. This tends to create confusion and support related issues. For 
example a user with Cygwin and MSYS in the same path will have a range of 
strange problems. As a result I provide a way via the installer to get a 
correctly set up cmd.exe work area. If you look in the tools top directory you 
will see 'rtems-env.bat'. This is the environment configuration batch file. 
The 'rtems.bat' file calls 'rtems-env.bat' to set up the environment before 
starting cmd.exe. These files are created at install time so the paths match 
your installed paths. The other batch file of interest is 'sh-run.bat'. This 
runs a shell or program with the RTEMS environment set up. For example "sh-run 
sh ./configure -target=arm-rtems4.7 --prefix=/my/location/to-install" will run 
the MSYS shell and then the configure script. I use an absolute path to 
'sh-run.bat' on the compile command line within a Windows native emacs to 
build RTEMS or applications within Emacs. The same can be done for Visual 
Studio (see vs-make.bat). My experience is the less global configuration you 
do on Windows the happier things are and the more portable things are between 
different Windows machines.

I also do very little testing with the MSYS shell and therefore have provided 
little support for it. I use the "RTEMS Tools" menu selection which gives a 
cmd.exe shell. Maybe I need to review this and look to providing better MSYS 
support, for example an "RTEMS MSYS" menu selection.

> 
> Chris if you want us to try something please email
> jeff so I can get the message in the class room.
> 

I will take a look and send Jeff a message.

Regards
Chris



More information about the users mailing list