Installation of CCX_2.23 fun

Installation of CCX_2.23 fun

Thanks y’all for your help.

I have been following the instructions from ccx_2.23.readme.install.

a. From page 1, I have downloaded the ccx — .tar.bz2 files and bunzip2 and untar them.

b. From page 1, I have downloaded the SPOOLES.2.2 and ARPACk files.

Do I need to compile or makefile to these files? If so, how. The instructions are not clear.

The writing then says something about access to the SGI scientific library. Do I need this library? Is it worth having? If so, where can I get it? The complib-sgi appears to be active.

The page then says to go to item 4.

In the ccx_2.23/src I typed make and there were various errors while it did whatever it did.

At the end I got a whole bunch of stuff, ending in the following:

cc -Wall -O2 -I ../../../SPOOLES.2.2 -DARCH=“Linux” -DSPOOLES -DARPACK -DMATRIXSTORAGE -DNETWORKOUT -c
add_rect.c
cc -Wall -O2 -I ../../../SPOOLES.2.2 -DARCH=“Linux” -DSPOOLES -DARPACK -DMATRIXSTORAGE -DNETWORKOUT -c
arpack.c
In file included from arpack.c:26:
spooles.h:26:10: fatal error: misc.h: No such file or directory
26 | #include <misc.h>
| ^~~~~~~~
compilation terminated.
make: *** [Makefile:9: arpack.o] Error 1
charlie@charlie-desktop:~/Downloads/CalculiX/ccx_2.23/src$

What do I need to do to fix this?

Thanks,

Charlie

m

If you just want to get started, you can try the 2.23 executable on the calculix.de website.

If you want to compile a custom version, but not care about the dependencies, you can use the libraries available in the Ubuntu packet manager:

libarpack2-dev libspooles-dev

If you also want to compile the dependencies, there are good instructions on the preCICE website: Get CalculiX | preCICE - The Coupling Library

SGI is not required. If you want a faster solver, I would recommend PaStiX, but one after the other.

@CharlieM I have delete this content because is was misinformation

Hello Durbul, Many thanks for your advice and support.

The calculix.de website has a line about Downloads which in turn leads to https://www.dhondt.de/ which leads me to what I was trying to do. I have been trying to follow the instructions listed in ccx_2.23.README.INSTALL.

It is not clear on www.dhondt.de which line leads to a simple executable program if there is an executable program.

It is not clear in the ccx—README.INSTALL where or how to load an executable ccx_2.23.

I have safely managed without injury to myself or blowing up my computer to do steps 1,2, and 3 where 3 was giving me problems in particular trying to find SPOOLES and ARPACK.

  1. copy ccx_2.23.src.tar.bz2, ccx_2.23.doc.tar.bz2,
    ccx_2.23.test.tar.bz2 and ccx_2.23.README.INSTALL to
    directory /usr/local

  2. bunzip2 and untar ccx_2.23.src.tar.bz2, ccx_2.23.doc.tar.bz2 and
    ccx_2.23.test.tar.bz2; the following directory tree is generated:
    /usr/local/CalculiX/ccx_2.23/src
    /usr/local/CalculiX/ccx_2.23/doc
    /usr/local/CalculiX/ccx_2.23/test

  3. get SPOOLES.2.2 and ARPACK from the internet

The instructions then say: Else, go to item 4.

There is a lot of detailed material and it is not clear what is item 4. I presumes item 4 is the following: 4. change to /usr/local/CalculiX/ccx_2.23/src and type make;

I was in the process of doing this and am not sure what is happening.

The installation instructions assumes that the person is experienced and fluent Linux, if not Linux being their mother tongue. The installation instructions also are not clearly written and tend to jump around to other topics.

I have barely started learning Linux this past December 2025. So, I have surprised myself.

Is ccx_2.23 the same as the Calculix program that is connected with / accessed through FreeCAD?

If so, how do I access some of the examples that come with the ccx_2.23 material? The whole point of this work is to be able to do some fracture mechanic analyses. FreeCAD is the entry point for me. From the Calculix pdf, there are special cards used in fracture mechanics requiring 8 pieces of information which are not fully identified nor described how these pieces are used.

My next goal is to install the Calculix Graphix cgx_2.23 software and these instructions are full of details like in ccx_2.23.

Many thanks for your patience and support.

Charlie

Hello fgr, I have been applying your fix technique in spooles for //#include <misc.h>, //#include <FrontMtx.h> and //#include <SymbFac.h>

Now there are some new errors. What is next?

Also, I do not understand what this technique does.

Thanks for your help.
Charlie

When I was building CalculiX with the PaStiX solver on FreeBSD, I put the whole process (including applying patches where needed) into a number of shell-scripts.

The combination of shell-scripts, tarballs of known-good versions of the softwares used and patches can be found here. It might be of use to you.

The whole procedure will require some changes to work with Linux, For example changing the names of the compilers used, and replacing gmake with make.

@CharlieM I’ll need to apologize for my misinformation the “<misc.h> is really needed when using the Spoole solver on linux and not legacy as I posted. I tested it on my windows installation and didn’t find any problem by putting <misc.h> in comment and compiling with mingw but it is needed on a linux system when using the Spoole solver.

So I need to ask you remove the changes you have done in “spoole.h” and “cascade.c”. You will need put them back to original.

In the folder for the ccx source and where you execute the make you should get the following result when you execute the find command because this what is written in your Makefile but since <misc.h> is missing I don’t expect you will get this result.

xxx@fgr:~/Calculix/ccx_2.23/src$ find ../../.. -name misc.h -print
../../../SPOOLES.2.2/misc/misc.h
../../../SPOOLES.2.2/Utilities/misc.h
../../../SPOOLES.2.2/misc.h

So you will need to find the relative correct location of the SPOOLES.2.2 folder and correct the include path in you Makefile

CFLAGS = -Wall -I ../../../SPOOLES.2.2 -DARCH="Linux" -DSPOOLES
                  ^^^^^^^^ 
                  this relative path needs to point exactly to the spooles.2.2 

be aware of filenames and folders are case sensitive in linux/unix
You’re welcome to ask again or following the recipe from @rsmith

It is not clear on www.dhondt.de which line leads to a simple executable program if there is an executable program.

Under “Available downloads for the solver (CalculiX CrunchiX)” there is a clear link “a Linux executable”. An executable is also available for the graphical interface (CalculiX GraphiX).

Is ccx_2.23 the same as the Calculix program that is connected with / accessed through FreeCAD?

I have no experience with FreeCAD, but as far as I know, FreeCAD’s Linux releases do not contain CalculiX per se, but require a path to the CalculiX binary (so it depends on your setup).

The installation instructions assumes that the person is experienced and fluent Linux, if not Linux being their mother tongue. The installation instructions also are not clearly written and tend to jump around to other topics.

For sure the instructions are not perfect, but compiling any program on Linux requires some experience and, unfortunately, these instructions can vary between different distributions.

If so, how do I access some of the examples that come with the ccx_2.23 material?

The CalculiX sources on GitHub contain a couple of crackprop related test examples (search for crack*.inp). These examples can also be downloaded here. Make sure to check the relevant section in the manual as well.

Hello fgr,

I modified / corrected the spoole.h and cascade.c files.

I found the Make file and modified it to include the corrected path in the Make file. I have attached a picture of the changes I made.

I also read and copied the output from the Make process from the terminal and onto a plain text file. There were some statements of various errors. I have to figure out how to send this to you.

Many thanks,

Charlie

@CharlieM I have sent you a personal message so we can communicate without involving the complete forum,.then I will try to help/guide you to compile the ccx in Linux.

1 Like

You can try my installation script which should automate all this. If it it works, then use intelone api compiler and install with pardiso option. Much faster as nobody uses spooles anymore..

1 Like