This section provides additional information for users who need deeper information about some issues.
The Intel® Simics® Package Manager (ISPM) works well for many advanced use cases. However, sometimes it is necessary to use the addon-manager or the project-setup programs.
Note: The examples are run on Linux but everything works the same on Windows, except file paths and file suffixes.
Packages are not installed on top of any other package. Instead each package, and different versions of it, stay in separate directories. Each user project is bound to a particular installation of Simics Base, and it keeps its own list of paths to selected add-on packages that makes them available to the simulation engine at run-time. To manually configure this list or bind to another installation of Simics Base, use the addon-manager and project-setup programs.
Here are a few examples of what those programs can do:
This example will list the add-on packages configured for the particular user project.
[project]$ bin/addon-manager
=== Using the package list in project ([project]) ===
Configured add-on packages:
QSP-x86 7.0.0 ../simics-qsp-x86-7.0.0
If there are any invalid entries (their paths do not exist anymore, or the necessary information files are invalid), the addon-manager will suggest to remove them right away.
This example will add a package to the list for the particular user project.
[project]$ bin/addon-manager -s [simics]/simics-gdb-7.0.0
...
Configured add-on packages:
QSP-x86 7.0.0 ../simics-qsp-x86-7.0.0
The following operations will be performed:
-> Add GDB 7.0.0 ../simics-gdb-7.0.0
New package list:
GDB 7.0.0 ../simics-gdb-7.0.0
QSP-x86 7.0.0 ../simics-qsp-x86-7.0.0
Do you want to update the package list? (y/n) [y] <ENTER>
Package list updated
Do you want to update the project? (y/n) [y] <ENTER>
Project updated successfully
This example will remove an add-on package from the list for the particular user project.
[project]$ bin/addon-manager -d ../simics-gdb-7.0.0/
...
Configured add-on packages:
GDB 7.0.0 ../simics-gdb-7.0.0
QSP-x86 7.0.0 ../simics-qsp-x86-7.0.0
The following operations will be performed:
-> Remove GDB 7.0.0 ../simics-gdb-7.0.0
New package list:
QSP-x86 7.0.0 ../simics-qsp-x86-7.0.0
Do you want to update the package list? (y/n) [y] <ENTER>
...
To manually change which installation of Simics Base a user project is bound to, use the project-setup program of the installation to bind to.
[project]$ [simics]/bin/project-setup .
Project-local package list updated successfully.
Project updated successfully
The program will save any edited files it wants to update into the project's .backup directory.
When building custom modules or extensions on Windows, bin\make.bat must be setup to find the executables of MinGW. If needed it can be updated by using project-setup with the --mingw-dir option.
For more options and information about the addon-manager and project-setup programs, see the Simics Reference Manual.
By default, the simulator is organized so that the installed packages can be left read-only in a common location accessible to all users. And users create custom Intel® Simics® project areas, as described in our manuals.
Historically each installation of Simics Base kept its own list of paths to all installed add-on packages. Some organizations tweaked the list to create a "shared configuration" of selected add-on packages.
It is now recommended to use ISPM and instead share manifest files with the users.
However, if necessary an installation of Simics Base can be configured with specific add-on packages in the same way as manually managing user projects as described in a previous section of this chapter. For more information, see about the addon-manager in the Simics Reference Manual.
On Windows some functionality of the simulator requires support from third-party products. This section describes those products.
OpenVPN TAP driver The port-forwarding kind of real network connection is included with the simulator. However, to access a real network using bridges or host connections the OpenVPN TAP driver is required.
The OpenVPN TAP driver can be downloaded from build.openvpn.net/downloads/releases/.
To learn more about the different real network connection types available, see the Ethernet Networking technology guide.
MinGW-w64 If you plan to create models or extensions for the simulator, you will need the MinGW tools for compilation.
MinGW-w64 provides a GCC compiler and the make programs that are needed to compile modules on Windows. Download the version for the UCRT runtime with POSIX threads that is provided at winlibs.com.
Setting up a user project will search in C:\ and in the parent folder of the Simics Base installation for a directory named mingw64, which must contain the executables.
Virtual Serial Ports
To connect a host-serial-console to a virtual serial (COM) port, that port must have been created in advance. Use any software that can set up virtual COM ports.