| | 1 | |
| | 2 | |
| | 3 | -- Main.RobertoFranceschini - 25 Mar 2007 |
| | 4 | |
| | 5 | |
| | 6 | Due to some "non-standardness" of SuSe 10.2 the straight setup procedure of MG_ME_V4.1.xx doesn't work. Here follows how it worked on several workstation running SuSe 10.2 both i586 and x86_64. |
| | 7 | |
| | 8 | * First issue is |
| | 9 | */usr/lib/gcc-lib/i586-suse-linux/3.3.5/../../../../i586-suse-linux/bin/ld: cannot find -lgcc_s* |
| | 10 | which is related to a misplacement of the file libg cc_s.so or libg cc_s.so.1. |
| | 11 | To solve this issue symlink the libgcc_s.so where is missing i.e. when you run locate libg cc_s.so you should match the following list (for x86_64 system). |
| | 12 | |
| | 13 | {{{ |
| | 14 | ~>locate libgcc_s.so |
| | 15 | /lib/libgcc_s.so.1 |
| | 16 | /lib64/libgcc_s.so.1 |
| | 17 | /usr/lib/libgcc_s.so |
| | 18 | /usr/lib/libgcc_s.so.1 |
| | 19 | /usr/lib64/gcc/x86_64-suse-linux/4.1.2/libgcc_s.so |
| | 20 | }}} |
| | 21 | |
| | 22 | Look to "man ln" to know how to symlink, the basic command is |
| | 23 | ln -s /lib/libgcc_s.so.1 /usr/lib/libgcc_s.so.1 |
| | 24 | where the first path is the link target and the second is the link |
| | 25 | |
| | 26 | * Second issue is |
| | 27 | '''f77 -O -ffixed-line-length-132 -o decay decay_couplings.o decay.o decay_matrix.o decay_mom.o decay_event.o vegas.o decay_printout.o hdecay.o ran1.o rw_events.o open_file.o alfas_functions.o ../HELAS/lib/libdhelas3.a''' |
| | 28 | f77: ../HELAS/lib/libdhelas3.a: No such file or directory |
| | 29 | To understand what's hppening go to the HELAS folder and issue "make" |
| | 30 | you should get a |
| | 31 | {{{ |
| | 32 | ~/MG_ME_V4.1.24/HELAS> make |
| | 33 | f77 -O -I. -c httsxx.F |
| | 34 | f77: installation problem, cannot exec `cc1': No such file or directory |
| | 35 | make: *** [httsxx.o] Error 1 |
| | 36 | }}} |
| | 37 | |
| | 38 | This is related to the missing compiler cc1, you just need to put into the PATH. Again a symlink is enough to make MG |
| | 39 | {{{n -s /usr/lib/gcc/i586-suse-linux/4.1.2/cc1 /bin/cc1}}} |
| | 40 | should work on most 10.2-i586. |
| | 41 | |
| | 42 | * Third issue is again |
| | 43 | '''f77 -O -ffixed-line-length-132 -o decay decay_couplings.o decay.o decay_matrix.o decay_mom.o decay_event.o vegas.o decay_printout.o hdecay.o ran1.o rw_events.o open_file.o alfas_functions.o ../HELAS/lib/libdhelas3.a''' |
| | 44 | f77: ../HELAS/lib/libdhelas3.a: No such file or directory |
| | 45 | make[1]: *** [all] Error 1 |
| | 46 | make[1]: Leaving directory `/home/roberto/MG_ME_V4.1.24/DECAY' |
| | 47 | make: *** [decay] Error 2 |
| | 48 | |
| | 49 | If you still have this problem then change to HELAS folder and issue |
| | 50 | make. You should get |
| | 51 | {{{ |
| | 52 | ~/MG_ME_V4.1.24/HELAS> make |
| | 53 | f77 -O -I. -c httsxx.F |
| | 54 | cc1: error: too many filenames given. Type cc1 --help for usage |
| | 55 | # 1 "httsxx.F" |
| | 56 | make: *** [httsxx.o] Error 1 |
| | 57 | }}} |
| | 58 | |
| | 59 | To fix it you have to edit /usr/lib/gcc-lib/i586-suse-linux/3.3.5/specs |
| | 60 | Open this file and look for: |
| | 61 | {{{ |
| | 62 | *cpp_options: |
| | 63 | %(cpp_unique_options) %1 %{m*} %{std*} %{ansi} %{W*&pedantic*} %{w} %{f*} %{g*} %{O*} %{undef} |
| | 64 | }}} |
| | 65 | edit this line replacing "%{O*}" by "-o" |
| | 66 | |
| | 67 | These are all the erros i had to fix to make MG compile on suse linux, other happen if you want also '''pythia-pgs'''. Next i'll show how to fix these. |
| | 68 | |
| | 69 | To fix |
| | 70 | *g77 -O2 -ffortran-bounds-check -fno-automatic -I../libraries/stdhep/src/inc -I../libraries/pgs/src -c pgs.f |
| | 71 | make[2]: Target `all' not remade because of errors.* |
| | 72 | |
| | 73 | change to MG_ME_V4.1.24/pythia-pgs/libraries/stdhep/mcfio |
| | 74 | find |
| | 75 | {{{ |
| | 76 | FFLAGS= $(DFLG) -fdebug-kludge -fno-second-underscore |
| | 77 | }}} |
| | 78 | and remove "-fdebug-kludge" |
| | 79 | |
| | 80 | |