Just for info I also realized that latest Xyce has a new 'cmake' based build system.
These are the steps I did to successfully install latest (from git master)
Xyce on my Debian-testing (thus quite recent and up to date) system.
I guess it should be valid for (recent) Ubuntu systems as well.
In the example below I am installing trilinos (14-4-0) in ${HOME}/XyceLibs/Serial and
Xyce in ${HOME}/xyce.
If you want to install in different places change these paths.
Source directories are in /mnt/sda7/trilinos_git and /mnt/sda7/Xyce_git.
Of course change these paths according to your locations.
I am assuming you have all the dependencies installed (libsuitesparse, libfftw3,
cmake, bison, flex, libblas, liblapack and the corresponding *-dev packages):
I had to add this variable to trilinos cmake configuration:
-D AMD_INCLUDE_DIRS=/usr/include/suitesparse
as it did not figure out the location of these header files.
#### NEW INSTRUCTIONS for Xyce 7.9+ ####
## Xyce will be installed in ${HOME}/xyce
## Trilinos will be installed in ${HOME}/XyceLibs/Serial
## get Trilinos and build (Serial):
git clone
https://github.com/trilinos/trilinos trilinos_git
git checkout trilinos-release-14-4-0
mkdir build
cd build
cmake -C /mnt/sda7/Xyce_git/cmake/trilinos/trilinos-base.cmake \
/mnt/sda7/trilinos_git \
-D CMAKE_INSTALL_PREFIX=$HOME/XyceLibs/Serial \
-D AMD_INCLUDE_DIRS=/usr/include/suitesparse
cmake --build . -j 4 -t install
## get Xyce and build:
git clone
https://github.com/Xyce/Xyce.git Xyce_git
cd Xyce_git
mkdir build
cd build
cmake -D Xyce_PLUGIN_SUPPORT=ON \
-D CMAKE_INSTALL_PREFIX=$HOME/xyce \
-D Trilinos_ROOT=$HOME/XyceLibs/Serial \
/mnt/sda7/Xyce_git
cmake --build . -j 4 -t install
Stefan
On 5/17/25 15:24, Thomas Russo wrote:
> INSTALL.md and the website building guide document completely different build processess, and the requirements of each are completely different. The release notes references to required tools is part of a boilerplate that may or may not get updated with every release. The release notes claim that GCC 4.9 is the minimum version is based on the long-standing assumption that users will build using the building guide's process.
>
> The building guide documents building Xyce using autotools, the configure system that has been in place in Xyce since about 2001. After Trilinos 12.12.1, the Trilinos team made changes to the Trilinos build process that makes it very difficult to get Xyce's autotools process right (it is still possible to use it with later versions of trilinos, but is too fiddly to recommend). This is why the building guide continues to insist that you build the very old Trilinos 12.12.1, because that is the last version of Trilinos that is guaranteed to work with the autotools process. Trilinos 12.12.1 could be built with GCC 4.9, because all it needed was C++11.
>
> INSTALL.md documents the new CMake process, which interoperates with Trilinos much more cleanly. The document is slightly out of date because it continues to recommend building Trilinos 14.4. Trilinos 16.1 is already out and in my own experience works just fine with Xyce's cmake build process. As you note, this means using much more recent versions of GCC because Trilinos now requires C++17.
>
> The team is very deliberately moving forward on deprecating and removing the very old "autotools" build process documented in the website building guide. INSTALL.md documents the new, but not yet finalized, cmake procedure that can work with later versions of Trilinos such as 14.4. These later versions of Trilinos need C++17 and, as you note, require GCC 8 and later.
>
> The presence of two completely different build processes with documentation in two different places is confusing, but was necessary because the CMake build process took so very long to get right. While it was under development it was somewhat unstable, and so having the very stable (but clunky) autotools build continue to work was necessary.
>
> It is my understanding that the upcoming Xyce 7.10 release will be the last one that supports autotools at all, and that the CMake process is basically ready to roll out officially with that release. Xyce 7.11 will, as I am told, no longer have an autotools build and will /only/ be buildable using cmake. Hopefully the INSTALL.md document will be brought up to date before the 7.10 release. It still reads as something of a work in progress rather than solid guidance for users.
>
> On Friday, May 16, 2025 at 12:45:22 AM UTC-6 weiji wrote:
>
> *Which version of Trilinos is recommended for compiling Xyce 7.9, and what is the minimum version that can be used?*
> The INSTALL.md file seems to recommend using Trilinos version 14.4, but this version requires enabling C++17 support, which in turn requires GCC 8 or later.
> However, the release notes mention support for GCC 4.9. Which version of Trilinos corresponds to GCC 4.9 support?
> Appreciate any help—thanks!
>
> --
> You received this message because you are subscribed to the Google Groups "xyce-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
xyce-users+...@googlegroups.com <mailto:
xyce-users+...@googlegroups.com>.
> To view this discussion visit
https://groups.google.com/d/msgid/xyce-users/bf5d9a65-0395-4c60-9793-c79054cc2c2dn%40googlegroups.com <
https://groups.google.com/d/msgid/xyce-users/bf5d9a65-0395-4c60-9793-c79054cc2c2dn%40googlegroups.com?utm_medium=email&utm_source=footer>.