[Simh] SimH 3.6-0 (problems compiling VAX using MinGW) DIAGNOSIS
Thomas Schnurrenberger
tsbg at gmx.net
Fri Jun 9 09:11:10 EDT 2006
Wilm Boerhout wrote:
> The cause seems to be this: in the makefile, symbols are defined for the
> VAX (and VAX780) folder names. These names are used then both for
> locating the modules to build, and for the "-I" switch, as in:
>
> VAXD = VAX/
> VAX = ${VAXD}vax_cpu.c ${VAXD}vax_cpu1.c ${VAXD}vax_fpa.c ${VAXD}vax_io.c \
> ${VAXD}vax_cis.c ${VAXD}vax_octa.c ${VAXD}vax_cmode.c \
> [snip]
> ${PDP11D}pdp11_vh.c ${PDP11D}pdp11_cr.c
> VAX_OPT = -DVM_VAX -DUSE_INT64 -DUSE_ADDR64 -I ${VAXD} -I ${PDP11D}
> ${NETWORK_OPT}
>
> Output from "gcc -v" (below) shows that the "I ${VAXD}" results in gcc
> not including that folder in its include path. When I manually change
> "-I ${VAXD}" to "-I VAX", effectively omitting the forward slash, the
> build will go fine.
>
> I cannot see how this has ever worked. Then again, this is my first
> experience with gcc, so what do I know?
>
> /Wilm
>
> Reading specs from C:/MinGW/bin/../lib/gcc/mingw32/3.4.2/specs
> Configured with: ../gcc/configure --with-gcc --with-gnu-ld --with-gnu-as
> --host=mingw32 --target=mingw32 --prefix=/mingw --enable-threads
> --disable-nls --enable -languages=c,c++,f77,ada,objc,java
> --disable-win32-registry --disable-shared --enable-sjlj-exceptions
> --enable-libgcj --disable-java-awt --without-x --enable-java-gc=boehm
> --disable-libgcj-debug --enable-interpreter
> --enable-hash-synchronization --enable-libstdcxx-debug
> Thread model: win32
> gcc version 3.4.2 (mingw-special)
> C:/MinGW/bin/../libexec/gcc/mingw32/3.4.2/cc1.exe -quiet -v -I. -I VAX/
> -I PDP11/ -iprefix C:\MinGW\bin/../lib/gcc/mingw32/3.4.2/
> -U__STRICT_ANSI__ -DVM_VAX -DUSE_INT64 -DUSE_ADDR64 VAX/vax_cpu.c -quiet
> -dumpbase vax_cpu.c -auxbase vax_cpu -O3 -std=c99 -version -o
> D:\Temp\User/cc23aaaa.s
> ignoring nonexistent directory
> "C:/MinGW/bin/../lib/gcc/mingw32/3.4.2/../../../../mingw32/include"
> ignoring nonexistent directory "/mingw/include"
> ignoring nonexistent directory "/mingw/include"
> ignoring nonexistent directory "/mingw/lib/gcc/mingw32/3.4.2/include"
> ignoring nonexistent directory "/mingw/mingw32/include"
> ignoring nonexistent directory "/mingw/include"
> *ignoring nonexistent directory "VAX/"*
> *ignoring nonexistent directory "PDP11/"*
> #include "..." search starts here:
> #include <...> search starts here:
> .
> C:/MinGW/bin/../lib/gcc/mingw32/3.4.2/../../../../include
> C:/MinGW/bin/../lib/gcc/mingw32/3.4.2/include
> End of search list.
This seems to be a mingw gcc bug, see here:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22133
I solved the problem for me by appending a dot to the
include path, for example "-I ${VAXD}" to "-I ${VAXD}."
--
Thomas
More information about the Simh
mailing list