To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.robotics.rcx.legosOpen lugnet.robotics.rcx.legos in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / RCX / legOS / 3168
3167  |  3169
Subject: 
Re: H8300 Cross Compiler for Mac OS X (a start ...)
Newsgroups: 
lugnet.robotics.rcx.legos
Date: 
Wed, 12 Feb 2003 17:24:34 GMT
Viewed: 
3223 times
  
Once again, WARNING! WARNING! WARNING! I have NO prior experience with the
Mac or Mac OS X.  So use these instructions AT YOUR OWN RISK.  I am NOT
responsible for any damage you might cause to your machine.

Within step 5, you can download gcc ver 3.1 by choosing the darwin project
gcc3 version 1151.  This will give you the source code for ver 3.1 of gcc.
You should also change the lines in the build script as needed for this new
version.

As for my binutil error I have yet to solve (although i have spent very
little amount of time with it).  Here is my error message  ...

/bin/sh
/Developer/Projects/brickOS/build/binutils-20020918/src/binutils/ylwrap
`test -f
'/Developer/Projects/brickOS/build/binutils-20020918/src/binutils/sysinfo.y'
|| echo
'/Developer/Projects/brickOS/build/binutils-20020918/src/binutils/'`/Developer/Projects/brickOS/build/binutils-20020918/src/binutils/sysinfo.y
y.tab.c sysinfo.c y.tab.h sysinfo.h y.output sysinfo.output -- bison -y -d
conflicts:  1 shift/reduce
if false && [ -r sysinfo.c ]; then \
  gcc -c -I. -g -O2  sysinfo.c  ; \
else \
  gcc -c -I. -g -O2
/Developer/Projects/brickOS/build/binutils-20020918/src/binutils/sysinfo.c ; \
fi
gcc:
/Developer/Projects/brickOS/build/binutils-20020918/src/binutils/sysinfo.c:
No such file or directory
gcc: no input files
make[3]: *** [sysinfo.o] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all] Error 2
make: *** [all-binutils] Error 2
Wed Feb 12 11:20:39 CST 2003 Binutils build end

If anyone has any ideas feel free to throw out suggestions.  One though i
had was to just get the gnu sources and try configure for powerpc host and
h8300 target.  i will have to try this at home on my Windows pc as my time
is up with the Mac.

Ed

In lugnet.robotics.rcx.legos, Ed Manlove writes:
With access to a Mac OS X 10.2 this week I have made an attempt to build the
cross compiler set under Mac OS X.  Currently I have an issue with sysinfo.c
with the binutils build.  But for those interested here are my steps so far.
I will post more as i hopefully get over these roadblocks. WARNING! WARNING!
WARNING! I have NO prior experience with the Mac or Mac OS X.  So use these
instructions AT YOUR OWN RISK.  I am NOT responsible for any damage you
might cause to your machine.

1. Registered with Apple Developer Connection, ADC.
2. From the Apple Developer Site, I downloaded the Mac OS X Developer Tools
December 2002. NOTE: This set of tools requires Mac OS X 10.2.x
3. Installed the following packages within the Development Tools: Developer
Tool software, Mac OS X SDK, Developer Documentation, Developer Example
Software, December 2002 Dev Tools extras.  I don't believe I needed all
these but installed them anyways.
4. Created a subdirectory \Developer\Projects\brickOS\build
5. Downloaded gcc-7 and binutils-200020918 from the Apple Darwin projects
site, http://www.opensource.apple.com/projects/darwin/6.0/projects.html.
NOTE: The gcc-7 package appears to be gcc-2.95.2 and not gcc-3.1 which
binaries come with the Developer Tools.  I was not sure where to find the
newer gcc3.1 and have just decided to try gcc-2.95.2 for now.
6.Copied the tar.gz packages to the dir above.
7.Modified the h8300 cross compiler build script for cygwin written by Paolo
Masetti.  I have included the modified script below. I placed it in the
\Developer\Projects\brickOS\build directory.
8. Opened a terminal and typed at the prompt
username% sh buildgcc.sh

WARNING!WARNING!WARNING! Once again this gets me so far as a error in build
binutils. Please take caution with these steps.

Ed

-- buildgcc.sh
------------------------------------------------------------------
#!/bin/bash.exe

##############################################################################
# Building a GNU C/C++ Cross Compiler [Mac OS X]
# Modified: 8 Feb 2003
# Ed Manlove
# emanlove@users.sourceforge.net
# ----------------------------------------------------------------------------
# Building a GNU C/C++ Cross Compiler [Windows NT 4.0 and Cygwin 1.1]
# Modified: 26 Jan 2001
# Paolo Masetti
# paolo.masetti@itlug.org
#
# ----------------------------------------------------------------------------
# WARNING: This script is intended for making a cross compiler exclusively
#          for use with Lego(r) RCX and the legOS Firmware.
#
# See http://legos.sourceforge.net/ for more infos.
#
# ----------------------------------------------------------------------------
#
# original by
# Christopher Bahns
# Christopher Bahns Software
# chris@bahns.com
#
# Partial comments from original version follows.
#
# This document contains complete instructions on how to create a GNU-
# based cross compiler (C and C++) for use under Windows NT 4.0 and Cygnus
# Cygwin 1.0 and later (not the older Cygwin B20.1). These instructions are
# based on information provided by David Fiddes, who has a build of an
# earlier version of the GNU cross-compiler which seems to be intended for
# Cygwin B20.1. His build is available on his website (see below).
#
# ------------------------------ Notes ------------------------------
#
# 1. These instructions and script will not work with Cygwin B20.1
# (older free version). This version of Cygwin does not have all of the
# utilities or set up certain aspects of the Unix environment that are
# required. Essentially the same things can be accomplished with B20.1
# as with the commercial version 1.0, but the instructions would be a
# bit more complicated, and the resulting environment would not be very
# usable by a typical Unix programmer.
#
# 2. The most frustrating problems I had getting this build to work had
# to do with the addition of carriage returns by various software. This
# is the first thing I'd check if something goes wrong. The two things
# that got me were WinZip (which I was using at first to extract the
# archives), which adds CR's by default, and the Cygwin file system,
# which somehow got setup in text mode, even though the "mount" command
# was showing me "binmode". I solved the former by avoiding WinZip and
# just using the "tar" command from within the Cygwin environment. When
# using WinZip you can disable the "TAR file smart CR/LF conversion"
# option in "Options/Configuration/Miscellaneous". I solved the latter
# by completely removing Cygwin and reinstalling. You should make a
# simple program that can quickly tell you if a particular file has any
# CR's. I wasted a lot of time trying to diagnose such "simple" problems.
#
# The following program is called "showcr.c", which I use to determine
# whether a given text file contains carriage returns.
#
# #include <stdio.h>
# #include <stdlib.h>
#
# int main(int argc, char *argv[])
# {
# FILE *in;
# int i;
# if (argc != 2) {
#    fputs("Usage: showcr <infile>\n", stderr);
#    exit(1);
# }
# if (!(in = fopen(*++argv, "rb"))) {
#    fprintf(stderr, "showcr: can't open %s\n", *argv);
#    exit(1);
# }
# while((i = fgetc(in)) != EOF)
# {
#    if (i == 13)
#    {
#       putchar('^');
#       i = 'M';
#    }
#    putchar(i);
# }
# fclose(in);
# return 0;
# }
#
##############################################################################

BINDIR=/usr/bin
BUILDDIR=`pwd`
LOGFILE=$BUILDDIR/buildgcc.log

#BINUTILS=binutils-2.10.1
BINUTILS=binutils-20020918
#GCC=gcc-2.95.2
GCC=gcc-7
#NEWLIB=newlib-1.8.2

#PREFIXDIR=/h8300-hitachi-hms
TARGET=h8300-hitachi-hms

#***************** DO NOT CHANGE ANYTHING BELOW THIS LINE *****************#
#********************* (unless of course you want to) *********************#

echo ":-------------------- Begin `date` --------------------:" > $LOGFILE
echo Installing source code...
echo `date` Source code installation start 2>&1 | tee --append $LOGFILE
rm -rf $BUILDDIR/binutils
rm -rf $BUILDDIR/gcc
rm -rf $BUILDDIR/$BINUTILS
rm -rf $BUILDDIR/$GCC
tar -xzvf $BUILDDIR/$BINUTILS.tar.gz
tar -xzvf $BUILDDIR/$GCC.tar.gz
cd $BUILDDIR/$GCC
echo `date` Source code installation end 2>&1 | tee --append $LOGFILE

echo Building $BINUTILS...
cd $BUILDDIR
mkdir binutils
cd binutils
echo `date` Binutils configuration start  2>&1 | tee --append $LOGFILE
$BUILDDIR/$BINUTILS/src/configure --verbose --target=$TARGET 2>&1 | tee
--append $LOGFILE
echo `date` Binutils configuration end 2>&1 | tee --append $LOGFILE
echo `date` Binutils build start 2>&1 | tee --append $LOGFILE
make 2>&1 | tee --append $LOGFILE
echo `date` Binutils build end 2>&1 | tee --append $LOGFILE
echo `date` Binutils install start 2>&1 | tee --append $LOGFILE
make install 2>&1 | tee --append $LOGFILE
echo `date` Binutils install 2>&1 | tee --append $LOGFILE

echo Building $GCC...
cd $BUILDDIR
#echo `date` GCC patch start 2>&1 | tee --append $LOGFILE
#cd $GCC
#mv gcc/config/h8300/h8300.c gcc/config/h8300/h8300.c.orig
#patch -u -i ../gcc-2.95.2-rcx-1.diff -o gcc/config/h8300/h8300.c
#mv gcc/config/h8300/h8300.h gcc/config/h8300/h8300.h.orig
#patch -u -i ../gcc-2.95.2-rcx-2.diff -o gcc/config/h8300/h8300.h
#cd ..
echo `date` GCC patch end 2>&1 | tee --append $LOGFILE
mkdir gcc
cd gcc
echo `date` GCC configuration start 2>&1 | tee --append $LOGFILE
$BUILDDIR/$GCC/configure --verbose --target=$TARGET --enable-languages=c,c++
--enable-target-optspace --with-newlib 2>&1 | tee --append $LOGFILE
echo `date` GCC configuration end 2>&1 | tee --append $LOGFILE
echo `date` GCC build start 2>&1 | tee --append $LOGFILE
make cross 2>&1 | tee --append $LOGFILE
echo `date` GCC build end 2>&1 | tee --append $LOGFILE

echo `date` GCC install start 2>&1 | tee --append $LOGFILE
make install 2>&1 | tee --append $LOGFILE
echo `date` GCC install end 2>&1 | tee --append $LOGFILE
echo Done.
echo Done. 2>&1 | tee --append $LOGFILE
echo ":-------------------- End `date` --------------------:" 2>&1 | tee
--append $LOGFILE
cd $BUILDDIR



Message is in Reply To:
  H8300 Cross Compiler for Mac OS X (a start ...)
 
With access to a Mac OS X 10.2 this week I have made an attempt to build the cross compiler set under Mac OS X. Currently I have an issue with sysinfo.c with the binutils build. But for those interested here are my steps so far. I will post more as (...) (22 years ago, 8-Feb-03, to lugnet.robotics.rcx.legos)

2 Messages in This Thread:

Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR