Error faced in executables storing during Blat installation
1
0
Entering edit mode
2.3 years ago

Hello,

I have created the directory MACHTYPE in home directory in bin. The variable of my MACHTYPE is x86_64-linux-gnu. To check whether my executables are storing in the directory I have tried to make fixCr by going to the directory Downloads/kent/src/utils/fixcr and typed make. The fixCr program did not come to the x86_64-linux-gnu directory. It says this whenever I type make

cc -O -g -o /home/sabreena/bin/x86_64/fixCr fixCr.o    ../../lib/x86_64/jkweb.a /usr/lib/x86_64-linux-gnu/libmysqlclient.a -ldl -lstdc++ -lrt  -lpthread /usr/lib/x86_64-linux-gnu/libssl.a -lcrypto ../../htslib/libhts.a -lpng16 -lm -lz 
  /home/linuxbrew/.linuxbrew/bin/ld: cannot open output file /home/sabreena/bin/x86_64/fixCr: No such file or directory
  collect2: error: ld returned 1 exit status
  make: *** [../../inc/userApp.mk:31: /home/sabreena/bin/x86_64/fixCr] Error 1

Why the output file cannot be opened? What's wrong here?

BLAT • 1.7k views
ADD COMMENT
0
Entering edit mode
2.3 years ago
Michael 55k

There may be an error in the setup or even in one Makefile, building Kent tools is not easy and error prone:

What happens if you run the following command directly:

cc -O -g -o /home/sabreena/bin/x86_64-linux-gnu/fixCr fixCr.o    ../../lib/x86_64/jkweb.a /usr/lib/x86_64-linux-gnu/libmysqlclient.a -ldl -lstdc++ -lrt  -lpthread /usr/lib/x86_64-linux-gnu/libssl.a -lcrypto ../../htslib/libhts.a -lpng16 -lm -lz 

I propose, you use the following machtype

 export MACHTYPE=x86_64 # without the linux-gnu suffix

and run the whole process again, including running a make clean and making directories if required.

ADD COMMENT
0
Entering edit mode

Yes, I followed your advice and hence a long process took place. Now, it did not say the file cannot be opened but gave an another error.

collect2: error: ld returned 1 exit status make: *** [../../inc/userApp.mk:31: /home/sabreena/bin/x86_64/fixCr] Error 1

Why did this error come?

ADD REPLY
0
Entering edit mode

The relevant error message is the line above the output you gave, please give all the output.

ADD REPLY
0
Entering edit mode

This is the error message which came in loads, i just could provide a part of it due to the limitation of this text box..

/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x139d): undefined reference to `WPACKET_start_sub_packet_len__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x13ae): undefined reference to `WPACKET_set_flags'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x1452): undefined reference to `WPACKET_sub_memcpy__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x148e): undefined reference to `WPACKET_close'
/home/linuxbrew/.linuxbrew/bin/ld: /usr/lib/x86_64-linux-gnu/libssl.a(libssl-lib-statem_srvr.o): in function `tls_construct_server_certificate':
(.text+0x15cb): undefined reference to `WPACKET_put_bytes__'
/home/linuxbrew/.linuxbrew/bin/ld: /usr/lib/x86_64-linux-gnu/libssl.a(libssl-lib-statem_srvr.o): in function `tls_construct_new_session_ticket':
(.text+0x1966): undefined reference to `WPACKET_get_total_written'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x1988): undefined reference to `WPACKET_memcpy'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x199c): undefined reference to `WPACKET_memcpy'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x19bc): undefined reference to `WPACKET_reserve_bytes'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x19f5): undefined reference to `WPACKET_allocate_bytes'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x1e51): undefined reference to `WPACKET_memcpy'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x1e5f): undefined reference to `WPACKET_close'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x1f25): undefined reference to `WPACKET_put_bytes__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x1f43): undefined reference to `WPACKET_put_bytes__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x21bd): undefined reference to `WPACKET_allocate_bytes'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x21f9): undefined reference to `WPACKET_get_total_written'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x2243): undefined reference to `WPACKET_reserve_bytes'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x2286): undefined reference to `WPACKET_allocate_bytes'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x22a8): undefined reference to `WPACKET_close'
/home/linuxbrew/.linuxbrew/bin/ld: /usr/lib/x86_64-linux-gnu/libssl.a(libssl-lib-statem_srvr.o): in function `dtls_raw_hello_verify_request':
(.text+0x38cd): undefined reference to `WPACKET_put_bytes__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x38e4): undefined reference to `WPACKET_sub_memcpy__'
/home/linuxbrew/.linuxbrew/bin/ld: /usr/lib/x86_64-linux-gnu/libssl.a(libssl-lib-statem_srvr.o): in function `tls_construct_cert_status_body':
(.text+0x7300): undefined reference to `WPACKET_put_bytes__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x731f): undefined reference to `WPACKET_sub_memcpy__'
/home/linuxbrew/.linuxbrew/bin/ld: /usr/lib/x86_64-linux-gnu/libssl.a(libssl-lib-d1_lib.o): in function `DTLSv1_listen.part.0':
(.text+0x385): undefined reference to `WPACKET_init_static_len'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x39f): undefined reference to `WPACKET_put_bytes__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x3b8): undefined reference to `WPACKET_put_bytes__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x3d2): undefined reference to `WPACKET_memcpy'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x3e7): undefined reference to `WPACKET_start_sub_packet_len__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x401): undefined reference to `WPACKET_put_bytes__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x418): undefined reference to `WPACKET_put_bytes__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x42f): undefined reference to `WPACKET_put_bytes__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x446): undefined reference to `WPACKET_put_bytes__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x45b): undefined reference to `WPACKET_start_sub_packet_len__'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x484): undefined reference to `WPACKET_close'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x494): undefined reference to `WPACKET_close'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x4a9): undefined reference to `WPACKET_get_total_written'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x4b9): undefined reference to `WPACKET_finish'
/home/linuxbrew/.linuxbrew/bin/ld: (.text+0x892): undefined reference to `WPACKET_cleanup'
collect2: error: ld returned 1 exit status
make: *** [../../inc/userApp.mk:31: /home/sabreena/bin/x86_64/fixCr] Error 1

How should i solve the error?

ADD REPLY
0
Entering edit mode

Hi, there might be a version mismatch or missing library. I anticipate that it may be very hard or impossible to fix. In general BLAT doesn't use a modern build system and is terribly awkward to build from source (sorry, Jim). So there might be no reasonable way of installing it that way. Instead, please try to install it via bioconda https://bioconda.github.io/recipes/ucsc-blat/README.html

ADD REPLY
0
Entering edit mode

I did not understand what you meant.. Could you please elaborate?

ADD REPLY
0
Entering edit mode

Sorry, but it does not really matter. I guess it will be nearly impossible to debug the problem using this forum. Please try the bioconda recipe first and see where this leads.

ADD REPLY
0
Entering edit mode

Actually I managed to find a fix for the same issue (undefined reference to WPACKET blabla) by installing a VM with Ubuntu 18.04 on it, if it can help you :)

ADD REPLY

Login before adding your answer.

Traffic: 2743 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6