N=2 and N=3 Heisenberg chains are to simple for spinpack, because spinpack uses symmetries and so matrix size becomes to one. Use minimum N=5 sites (see example4_lc5.html) or switch off all symmetries to see the full base:

cd exe                      # execution path
gcc -lm -o m_1d ../m_1d.c   # compile model generation code for chains
./m_1d 2 > daten.def        # generate 2 side model

config.h:
 #define CONFIG_NOS1SYM 1
 // #define Sud 0          // sym_ud=0 used
 
daten.i:
 verbose=33
 xout=3 99
 sym_ud= 0     # no up-down-symmetry (case nu==nd)
 sym_k= -9999
 param= 1.0, 0.0
 nud=1,1   # ud-subspace
 a0
 nud=0,2   # dd-subspace
 a0
 nud=2,0   # uu-subspace (same as dd-subspace)
 a0

make; ./spin

results:
# nud=1,1 n1=2 hnz/n1=3.00(double entries) J1=1 E0= -1.50000  0.50000
# nud=0,2 n1=1 hnz/n1=1.00                 J1=1 E0=  0.50000           
#
# nud=1,1 n1=2 hnz/n1=3.00(double entries) J1=1 E0= -1.50000  0.50000
 i-j  0  0 ZiZj  0.250000  num=    2  r^2=   0.000
 i-j  0  1 ZiZj -0.250000  num=    2  r^2=   1.000
 i-j  0  0 SiSj  0.750000  Sij-3Zij= -0.000000 -1e-08 num=    2
 i-j  0  1 SiSj -0.750000  Sij-3Zij=  0.000000  1e-08 num=    2
 x (weight, factor, coefficient, diff, |sN...s0>, (symfactor)):
  0.5000000      1  0.7071068 0e+00 |0x2> (   1) dcorr:  0 idx=1
  0.5000000      1 -0.7071068 0e+00 |0x1> (   1) dcorr:  0 idx=0
# nud=0,2 n1=1  hnz/n1=1.00 J1=1 E0= 0.50000000           
 i-j  0  0 ZiZj  0.250000  num=    2  r^2=   0.000
 i-j  0  1 ZiZj  0.250000  num=    2  r^2=   1.000
 i-j  0  0 SiSj  0.750000  Sij-3Zij=  0.000000  0e+00 num=    2
 i-j  0  1 SiSj  0.250000  Sij-3Zij= -0.500000 -5e-01 num=    2
 SS= 2.000 2S= 2.000    
 x (weight, factor, coefficient, diff, |sN...s0>, (symfactor)):
 1.000000000      1  1.000000000 0e+00 |0x3> (   1) dcorr:  1 idx=0