nanoporetech / scrappie

Scrappie is a technology demonstrator for the Oxford Nanopore Research Algorithms group
Mozilla Public License 2.0
90 stars 27 forks source link

Installation problem on CentOS 6.5 #12

Closed ernestopicardi closed 6 years ago

ernestopicardi commented 6 years ago

Hi all, I'm trying to install scrappie but without any success... All requested libraries seem to be installed. The cmake command gives me: [root@srv00 build]# cmake .. -- The C compiler identification is GNU 5.3.1 -- Check for working C compiler: /opt/rh/devtoolset-4/root/usr/bin/cc -- Check for working C compiler: /opt/rh/devtoolset-4/root/usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done Defaulting to release build -- Performing Test HAS_OPENMP -- Performing Test HAS_OPENMP - Success -- Looking for hdf5.h -- Looking for hdf5.h - found -- Configuring done -- Generating done -- Build files have been written to: /home/sw/scrappie/build

while the make command raises the following errors: Scanning dependencies of target scrappie_objects [ 3%] Building C object CMakeFiles/scrappie_objects.dir/src/decode.c.o [ 7%] Building C object CMakeFiles/scrappie_objects.dir/src/event_detection.c.o [ 11%] Building C object CMakeFiles/scrappie_objects.dir/src/layers.c.o /home/sw/scrappie/src/layers.c: In function ‘residual_inplace’: /home/sw/scrappie/src/layers.c:305:18: warning: unused variable ‘nr’ [-Wunused-variable] const size_t nr = X->nr; ^ [ 14%] Building C object CMakeFiles/scrappie_objects.dir/src/networks.c.o [ 18%] Building C object CMakeFiles/scrappie_objects.dir/src/nnfeatures.c.o [ 22%] Building C object CMakeFiles/scrappie_objects.dir/src/scrappie_common.c.o [ 25%] Building C object CMakeFiles/scrappie_objects.dir/src/scrappie_matrix.c.o In file included from /home/sw/scrappie/src/scrappie_matrix.c:9:0: /home/sw/scrappie/src/scrappie_matrix.c: In function ‘make_scrappie_matrix’: /home/sw/scrappie/src/scrappie_stdlib.h:25:37: warning: implicit declaration of function ‘aligned_alloc’ [-Wimplicit-function-declaration]

define aligned_alloc(A, B) aligned_alloc(A, B)

                                 ^

/home/sw/scrappie/src/scrappie_matrix.c:34:19: note: in expansion of macro ‘aligned_alloc’ mat->data.v = aligned_alloc(16, nrq nc sizeof(__m128)); ^ /home/sw/scrappie/src/scrappie_stdlib.h:25:37: warning: incompatible implicit declaration of built-in function ‘aligned_alloc’

define aligned_alloc(A, B) aligned_alloc(A, B)

                                 ^

/home/sw/scrappie/src/scrappie_matrix.c:34:19: note: in expansion of macro ‘aligned_alloc’ mat->data.v = aligned_alloc(16, nrq nc sizeof(__m128)); ^ /home/sw/scrappie/src/scrappie_stdlib.h:25:37: note: include ‘’ or provide a declaration of ‘aligned_alloc’

define aligned_alloc(A, B) aligned_alloc(A, B)

                                 ^

/home/sw/scrappie/src/scrappie_matrix.c:34:19: note: in expansion of macro ‘aligned_alloc’ mat->data.v = aligned_alloc(16, nrq nc sizeof(__m128)); ^ /home/sw/scrappie/src/scrappie_matrix.c: In function ‘make_scrappie_imatrix’: /home/sw/scrappie/src/scrappie_stdlib.h:25:37: warning: incompatible implicit declaration of built-in function ‘aligned_alloc’

define aligned_alloc(A, B) aligned_alloc(A, B)

                                 ^

/home/sw/scrappie/src/scrappie_matrix.c:279:19: note: in expansion of macro ‘aligned_alloc’ mat->data.v = aligned_alloc(16, nrq nc sizeof(__m128i)); ^ /home/sw/scrappie/src/scrappie_stdlib.h:25:37: note: include ‘’ or provide a declaration of ‘aligned_alloc’

define aligned_alloc(A, B) aligned_alloc(A, B)

                                 ^

/home/sw/scrappie/src/scrappie_matrix.c:279:19: note: in expansion of macro ‘aligned_alloc’ mat->data.v = aligned_alloc(16, nrq nc sizeof(__m128i)); ^ [ 29%] Building C object CMakeFiles/scrappie_objects.dir/src/util.c.o [ 29%] Built target scrappie_objects Scanning dependencies of target scrappie_static Linking C static library libscrappie.a [ 29%] Built target scrappie_static Scanning dependencies of target scrappie [ 33%] Building C object CMakeFiles/scrappie.dir/src/scrappie.c.o [ 37%] Building C object CMakeFiles/scrappie.dir/src/scrappie_raw.c.o [ 40%] Building C object CMakeFiles/scrappie.dir/src/scrappie_events.c.o [ 44%] Building C object CMakeFiles/scrappie.dir/src/scrappie_squiggle.c.o [ 48%] Building C object CMakeFiles/scrappie.dir/src/scrappie_subcommands.c.o [ 51%] Building C object CMakeFiles/scrappie.dir/src/scrappie_help.c.o [ 55%] Building C object CMakeFiles/scrappie.dir/src/fast5_interface.c.o Linking C executable scrappie libscrappie.a(scrappie_matrix.c.o): nella funzione "make_scrappie_matrix": scrappie_matrix.c:(.text+0x8a): riferimento non definito a "aligned_alloc" libscrappie.a(scrappie_matrix.c.o): nella funzione "make_scrappie_imatrix": scrappie_matrix.c:(.text+0x939): riferimento non definito a "aligned_alloc" libscrappie.a(scrappie_matrix.c.o): nella funzione "affine_map": scrappie_matrix.c:(.text+0xc3d): riferimento non definito a "cblas_sgemm" libscrappie.a(scrappie_matrix.c.o): nella funzione "affine_map2": scrappie_matrix.c:(.text+0xd47): riferimento non definito a "cblas_sgemm" scrappie_matrix.c:(.text+0xda2): riferimento non definito a "cblas_sgemm" libscrappie.a(layers.c.o): nella funzione "convolution": layers.c:(.text+0xe23): riferimento non definito a "cblas_sgemv" layers.c:(.text+0xf43): riferimento non definito a "cblas_sgemm" layers.c:(.text+0x106a): riferimento non definito a "cblas_sgemv" libscrappie.a(layers.c.o): nella funzione "gru_step": layers.c:(.text+0x1439): riferimento non definito a "cblas_sgemv" layers.c:(.text+0x15ec): riferimento non definito a "cblas_sgemv" layers.c:(.text+0x1799): riferimento non definito a "cblas_sgemv" libscrappie.a(layers.c.o): nella funzione "lstm_step": layers.c:(.text+0x1c44): riferimento non definito a "cblas_sgemv" collect2: error: ld returned 1 exit status make[2]: [CMakeFiles/scrappie.dir/build.make:240: scrappie] Error 1 make[1]: [CMakeFiles/Makefile2:64: CMakeFiles/scrappie.dir/all] Error 2 make: *** [Makefile:147: all] Error 2

"riferimento non definito" means "reference undefined"

Many thanks in advance.

Ernesto

tmassingham-ont commented 6 years ago

Hello. Scrappie requires C11 support in both the compiler and C library, which means that Centos 7.0 is the oldest version with support out of the box.

The solution described by @rrwick for issue #5 will probably get Scrappie working for you.