torch / ezinstall

One-line install scripts for Torch.
75 stars 79 forks source link

Installing on Amazon Linux #77

Open R-Gerard opened 9 years ago

R-Gerard commented 9 years ago

I'm trying to get the ezinstall script to run on Amazon Linux, and I'm stuck on compiling OpenBLAS. The output wasn't very helpful, so I'm stuck. Any suggestions?

My first error was:

make[1]: Leaving directory `/tmp/OpenBLAS/ctest'
make[1]: Entering directory `/tmp/OpenBLAS/exports'
perl ./gensymbol linktest  x86_64 _ 0 0 0 0 0 0 "" "" > linktest.c
gcc -O2 -DMAX_STACK_ALLOC=2048 -fopenmp -Wall -m64 -DF_INTERFACE_GFORT -fPIC -DSMP_SERVER -DUSE_OPENMP -DNO_WARMUP -DMAX_CPU_NUMBER=8 -DASMNAME= -DASMFNAME=_ -DNAME=_ -DCNAME= -DCHAR_NAME=\"_\" -DCHAR_CNAME=\"\" -DNO_AFFINITY -I..  -shared -o ../libopenblas_sandybridgep-r0.2.15.so \
-Wl,--whole-archive ../libopenblas_sandybridgep-r0.2.15.a -Wl,--no-whole-archive \
-Wl,-soname,libopenblas.so.0 -lm -lpthread -lgfortran -lm -lpthread -lgfortran
/usr/bin/ld: /usr/lib/gcc/x86_64-amazon-linux/4.8.3/libgfortran.a(etime.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC
/usr/lib/gcc/x86_64-amazon-linux/4.8.3/libgfortran.a: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
make[1]: *** [../libopenblas_sandybridgep-r0.2.15.so] Error 1
make[1]: Leaving directory `/tmp/OpenBLAS/exports'
make: *** [shared] Error 2
Error. OpenBLAS could not be compiled

...After adding the -fPIC flag I get:

Cloning into 'OpenBLAS'...
remote: Counting objects: 17467, done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 17467 (delta 0), reused 0 (delta 0), pack-reused 17461
Receiving objects: 100% (17467/17467), 14.86 MiB | 9.30 MiB/s, done.
Resolving deltas: 100% (12123/12123), done.
Checking connectivity... done.
make: PIC: No such file or directory
make: *** No rule to make target `PIC'.  Stop.
Error. OpenBLAS could not be compiled
lefromage commented 8 years ago

same problem note that -fPIC is already in gcc compile command gcc -O2 -DMAX_STACK_ALLOC=2048 -fopenmp -Wall -m64 -DF_INTERFACE_GFORT -fPIC ....