1
0
mirror of https://github.com/simh/simh.git synced 2026-05-04 06:58:38 +00:00

Updated Windows Network build (in makefile and Visual Studio Projects) to reference WinPcap and pthreads in a consistent parallel directory to the simulator source (i.e. ../windows-build/...).

Updated Ethernet Documentation (in 0readme_ethernet.txt and sim_ether.c) to describe the proper build mechanics on both Windows and *nix platforms.
This commit is contained in:
Mark Pizzolato
2012-01-27 05:00:46 -08:00
parent 214b1b6047
commit d690603045
35 changed files with 238 additions and 162 deletions

View File

@@ -157,6 +157,7 @@ Note 3: Simulators running using VDE networking can run without root
privilege.
Linux (Ubuntu 10.04):
apt-get install make
apt-get install libvdeplug-dev
apt-get install vde2
@@ -183,28 +184,43 @@ Windows notes:
Building on Windows:
Building with MinGW can use the provided makefile following the instructions
below. Alternatively, you can use the free Visual C++ Express 2008 or 2010
interactive development environments. Read the file
".\Visual Studio Projects\0ReadMe_Projects.txt" for details.
You should be able to build with any of the free compiler environments
available on the Windows platform. If you want to use the Visual C++
Express 2008 or 2010 interactive development environments, read the file
".\Visual Studio Projects\0ReadMe_Projects.txt" for details about the
required dependencies. Alternatively, you can build simh with networking
support using the MinGW GCC compiler environment. Both the Visual C++
and MinGW build environments require WinPcap and Posix packages being
available. These should be located in a directory structure parallel to
the current simulator source directory.
1. Install WinPCAP 4.x runtime and the WinPCAP Developer's kit.
For Example, the directory structure should look like:
2. Put the required .h files (bittypes,devioctl,ip6_misc,pcap,pcap-stdinc
packet32,ntddndis).h from the WinPCAP 4.x developer's kit in the
compiler's include file path
.../simh/simhv38-2-rc1/VAX/vax_cpu.c
.../simh/simhv38-2-rc1/scp.c
.../simh/simhv38-2-rc1/Visual Studio Projects/simh.sln
.../simh/simhv38-2-rc1/Visual Studio Projects/VAX.vcproj
.../simh/simhv38-2-rc1/BIN/Nt/Win32-Release/vax.exe
.../simh/windows-build/pthreads/pthread.h
.../simh/windows-build/winpcap/WpdPack/Include/pcap.h
3. Put the required .lib files (packet,wpcap).lib from the WinPCAP 4.x
developer's kit in the linker's library path
The contents of the windows-build directory can be downloaded from:
4. If you're using Borland C++, use COFF2OMF to convert the .lib files into
a format that can be used by the compiler.
https://github.com/downloads/markpizz/simh/windows-build.zip
5. Define USE_NETWORK. The current windows network built binaries will
run on any system. regardless of whether or not WinPcap is installed,
and will provide Network functionality when WinPcap is available.
6. Build it!
There are Windows batch files provided to initiate compiles using the MinGW
compiler tool chain. These batch files are located in the same directory
as this file and are called: build_mingw.bat, build_mingw_ether.bat, and
build_mingw_noasync.bat. These batch files each presume that the MinGW
toolchain is either in the current path or, if not that it is located at
C:\MinGW\bin. These batch files merely invoke the MinGW make (GNU make)
passing some specific arguments along with the optional arguments the batch
file is invoked with.
The current windows network built binaries will run on any system without
regard to whether or not WinPcap is installed, and will provide
Network functionality when WinPcap is available.
-------------------------------------------------------------------------------
@@ -256,18 +272,26 @@ Building on Linux, {Free|Net|Open}BSD, OS/X, Un*x:
Linux : search for your variant on http://rpmfind.net
OS/X : Apple Developer's site?
NOTE: These repositories for older versions of these platforms
NOTE: The repositories for older versions of these platforms
don't contain a version of libpcap greater than 0.8.1.
However, most(all) recent releases of *nix environments ship
with sufficiently recent versions of libpcap either automatically
installed or available for installation as part of the
distribution.
However, most(all) recent releases of *nix environments
ship with sufficiently recent versions of libpcap either
automatically installed or available for installation as
part of the distribution.
The OS provided libpcap-dev components will be prefereable
to a package built from www.tcpdump.org sources. This is
due to the fact that various OS supplied packages will
depend on the OS supplied libpcap. The improper build or
install of the www.tcpdump.org source package can conflict
with the OS provided one and break the OS provided
applications (i.e. tcpdump and/or wireshark) as well as
not working correctly for use by simh.
2. If you install the vendor supplied libpcap-dev package and it provides
a /usr/lib/libpcap.a file, then the existing makefile will automatically
use the vendor supplied library without any additional arguments.
If you have downloaded and built the libpcap from tcpdump.org, then
you can use it during a build by typing 'make USE_NETWORK=1'
2. If you install the vendor supplied libpcap-dev package then the simh
makefile will automatically use the vendor supplied library without any
additional arguments. If you have downloaded and built libpcap from
www.tcpdump.org, then you can force its use during a build by typing
'make USE_NETWORK=1'
3. Build it!