Subject: Re: problems with current kernel
To: Stephen Champion <steve@eth217.hampshire.edu>
From: None <mw@eunet.ch>
List: amiga
Date: 02/06/1995 18:31:50
> Yup. GCC lateer than 2.4.5 (or maybe it's 2.5.0 and higher or
> something) doesn't work on NetBSD kernels becuase of differences in the
> exact nature of certain functions invloving the copying of memory. I
> think it's memcopy ond bcopy or something. In any case, use the 'cc'
> that came with the distribution for your kernel - hich I think is 2.4.5.
Well, gcc is pretty easy to change back into good old bcopy behavior. The
netbsd.h file that comes with 2.6.x for example is a particularly BAD one,
because it's apparently designed to generate a gcc to be used as "cc", not
as gcc. This attempt fails miserably if you try to configure it as a
cross compiler, since in that case, looking in /usr/include (which is
hardcoded in config/netbsd.h) is a definite no-no..
I'd suggest you try 2.6.3, with the following diff applied to netbsd.h:
*** netbsd.h~ Fri Sep 9 21:07:01 1994
--- netbsd.h Sat Dec 31 00:28:08 1994
***************
*** 1,67 ****
/* Look for the include files in the system-defined places. */
- #undef GPLUSPLUS_INCLUDE_DIR
- #define GPLUSPLUS_INCLUDE_DIR "/usr/include/g++"
-
- #undef GCC_INCLUDE_DIR
- #define GCC_INCLUDE_DIR "/usr/include"
-
- #undef INCLUDE_DEFAULTS
- #define INCLUDE_DEFAULTS \
- { \
- { GPLUSPLUS_INCLUDE_DIR, 1, 1 }, \
- { GCC_INCLUDE_DIR, 0, 0 }, \
- { 0, 0, 0 } \
- }
-
-
- /* Under NetBSD, the normal location of the `ld' and `as' programs is the
- /usr/bin directory. */
-
- #undef MD_EXEC_PREFIX
- #define MD_EXEC_PREFIX "/usr/bin/"
-
- /* Under NetBSD, the normal location of the various *crt*.o files is the
- /usr/lib directory. */
-
- #undef MD_STARTFILE_PREFIX
- #define MD_STARTFILE_PREFIX "/usr/lib/"
-
-
- /* Provide a CPP_SPEC appropriate for NetBSD. Current we just deal with
- the GCC option `-posix'. */
-
- #undef CPP_SPEC
- #define CPP_SPEC "%{posix:-D_POSIX_SOURCE}"
-
- /* Provide an ASM_SPEC appropriate for NetBSD. Currently we only deal
- with the options for generating PIC code. */
-
- #undef ASM_SPEC
- #define ASM_SPEC " %| %{fpic:-k} %{fPIC:-k -K}"
-
- /* Provide a LIB_SPEC appropriate for NetBSD. Just select the appropriate
- libc, depending on whether we're doing profiling. */
-
- #undef LIB_SPEC
- #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}"
-
- /* Provide a LINK_SPEC appropriate for NetBSD. Here we provide support
- for the special GCC options -static, -assert, and -nostdlib. */
-
- #undef LINK_SPEC
- #define LINK_SPEC \
- "%{!nostdlib:%{!r*:%{!e*:-e start}}} -dc -dp %{static:-Bstatic} %{assert*}"
-
-
- /* We have atexit(3). */
-
- #define HAVE_ATEXIT
-
- /* Implicit library calls should use memcpy, not bcopy, etc. */
-
- #define TARGET_MEM_FUNCTIONS
-
/*
* Some imports from svr4.h in support of shared libraries.
* Currently, we need the DECLARE_OBJECT_SIZE stuff.
--- 1,5 ----
-Markus
--
EUnet Switzerland Tel: +41 1 291 45 80 Markus Wild
Zweierstrasse 35 Hotline: +41 1 291 45 60 mw@eunet.ch
CH-8004 Zuerich Fax: +41 1 291 46 42 S=mw;P=EUnet;A=EUnet;C=CH
>Solaris 2 is not an upgrade from Solaris 1. They just want you to THINK it is.