RejectedSoftware Forums

Sign up

Can not use precompiled binary

Hi:

I was trying to use dub-0.9.11-linux-x8664.gz, but when it is extracted, there is a dub-0.9.11-linux-x8664 file which is not executable.
I use chmod +x, but it still cannot execute.

I can't build it in my desktop either. I'm in Ubuntu 12.10 x8664, and I've installed `apt-get install libcurl4-openssl-dev`,<br>but when I run './build', it still complaints about curlglobal_init and many other functions not defined.

Can you shed some light on this issue?

Re: Can not use precompiled binary

On Mon, 11 Mar 2013 14:18:54 GMT, zhaopuming wrote:

Hi:

I was trying to use dub-0.9.11-linux-x8664.gz, but when it is extracted, there is a dub-0.9.11-linux-x8664 file which is not executable.
I use chmod +x, but it still cannot execute.

I can't build it in my desktop either. I'm in Ubuntu 12.10 x8664, and I've installed `apt-get install libcurl4-openssl-dev`,<br>but when I run './build', it still complaints about curlglobal_init and many other functions not defined.

Can you shed some light on this issue?

While I was writing an answer, I decided to do some research instead and found the cause: https://bugs.launchpad.net/ubuntu/+source/curl/+bug/1001576

I've added a workaround in the latest git master version and building should work fine now.

But it's strange that the executable didn't run. I have the same system here and there it works fine. Did it print any specific error message?

Re: Can not use precompiled binary

On Mon, 11 Mar 2013 19:38:17 GMT, Sönke Ludwig wrote:

On Mon, 11 Mar 2013 14:18:54 GMT, zhaopuming wrote:

Hi:

I was trying to use dub-0.9.11-linux-x8664.gz, but when it is extracted, there is a dub-0.9.11-linux-x8664 file which is not executable.
I use chmod +x, but it still cannot execute.

I can't build it in my desktop either. I'm in Ubuntu 12.10 x8664, and I've installed `apt-get install libcurl4-openssl-dev`,<br>but when I run './build', it still complaints about curlglobal_init and many other functions not defined.

Can you shed some light on this issue?

While I was writing an answer, I decided to do some research instead and found the cause: https://bugs.launchpad.net/ubuntu/+source/curl/+bug/1001576

I've added a workaround in the latest git master version and building should work fine now.

Thanks for the quick look :-)

Now the build is fine, and I get a dub file. But when I run the dub, it still says about curlglobalinit and many other functions not defined.

But it's strange that the executable didn't run. I have the same system here and there it works fine. Did it print any specific error message?

no specific error message, just says (I've install the Chinese language pack in Ubuntu):

"bash: ./dub-0.9.7-linux-x86_64: 无法执行二进制文件"

translates to english it is:

"bash: ./dub-0.9.7-linux-x86_64: binaries not executable"

Re: Can not use precompiled binary

On Tue, 12 Mar 2013 03:55:39 GMT, zhaopuming wrote:

On Mon, 11 Mar 2013 19:38:17 GMT, Sönke Ludwig wrote:

On Mon, 11 Mar 2013 14:18:54 GMT, zhaopuming wrote:

Hi:

I was trying to use dub-0.9.11-linux-x8664.gz, but when it is extracted, there is a dub-0.9.11-linux-x8664 file which is not executable.
I use chmod +x, but it still cannot execute.

I can't build it in my desktop either. I'm in Ubuntu 12.10 x8664, and I've installed `apt-get install libcurl4-openssl-dev`,<br>but when I run './build', it still complaints about curlglobal_init and many other functions not defined.

Can you shed some light on this issue?

While I was writing an answer, I decided to do some research instead and found the cause: https://bugs.launchpad.net/ubuntu/+source/curl/+bug/1001576

I've added a workaround in the latest git master version and building should work fine now.

Thanks for the quick look :-)

Now the build is fine, and I get a dub file. But when I run the dub, it still says about curl_global_init and many other functions not defined.

Did you run dub within the dub directory itself? That will case dub to try and build itself, but the fix is only in ./build.sh and not in dub's own builder.

Running dub help or running it in another directory should hopefully work, though...

But it's strange that the executable didn't run. I have the same system here and there it works fine. Did it print any specific error message?

no specific error message, just says (I've install the Chinese language pack in Ubuntu):

"bash: ./dub-0.9.7-linux-x86_64: 无法执行二进制文件"

translates to english it is:

"bash: ./dub-0.9.7-linux-x86_64: binaries not executable"


I once got that error message when I tried to execute an OS X binary on Linux, but unfortunately I don't know how to get more detailed error information.

But I just realized that I'm indeed still on 12.04 (I'll start an upgrade later and test there). This is what worked for me:

wget http://registry.vibed.org/files/dub-0.9.11-linux-x86_64.gz
gzip -d dub-0.9.11-linux-x86_64.gz
chmod +x dub-0.9.11-linux-x86_64.gz
./dub-0.9.11-linux-x86_64 help

Re: Can not use precompiled binary

On Tue, 12 Mar 2013 09:05:54 GMT, Sönke Ludwig wrote:

On Tue, 12 Mar 2013 03:55:39 GMT, zhaopuming wrote:

On Mon, 11 Mar 2013 19:38:17 GMT, Sönke Ludwig wrote:

On Mon, 11 Mar 2013 14:18:54 GMT, zhaopuming wrote:

Hi:

I was trying to use dub-0.9.11-linux-x8664.gz, but when it is extracted, there is a dub-0.9.11-linux-x8664 file which is not executable.
I use chmod +x, but it still cannot execute.

I can't build it in my desktop either. I'm in Ubuntu 12.10 x8664, and I've installed `apt-get install libcurl4-openssl-dev`,<br>but when I run './build', it still complaints about curlglobal_init and many other functions not defined.

Can you shed some light on this issue?

While I was writing an answer, I decided to do some research instead and found the cause: https://bugs.launchpad.net/ubuntu/+source/curl/+bug/1001576

I've added a workaround in the latest git master version and building should work fine now.

Thanks for the quick look :-)

Now the build is fine, and I get a dub file. But when I run the dub, it still says about curl_global_init and many other functions not defined.

Did you run dub within the dub directory itself? That will case dub to try and build itself, but the fix is only in ./build.sh and not in dub's own builder.

Running dub help or running it in another directory should hopefully work, though...

Thanks :-) running dub in a different folder works fine.

But it's strange that the executable didn't run. I have the same system here and there it works fine. Did it print any specific error message?

no specific error message, just says (I've install the Chinese language pack in Ubuntu):

"bash: ./dub-0.9.7-linux-x86_64: 无法执行二进制文件"

translates to english it is:

"bash: ./dub-0.9.7-linux-x86_64: binaries not executable"


I once got that error message when I tried to execute an OS X binary on Linux, but unfortunately I don't know how to get more detailed error information.

But I just realized that I'm indeed still on 12.04 (I'll start an upgrade later and test there). This is what worked for me:

wget http://registry.vibed.org/files/dub-0.9.11-linux-x86_64.gz
gzip -d dub-0.9.11-linux-x86_64.gz
chmod +x dub-0.9.11-linux-x86_64.gz
./dub-0.9.11-linux-x86_64 help

I tried your approach and it worked!

After another look I found that I was downloading the gz file with chromium browser before. and the file sizes are different with the wget one.

So maybe it was because my download was bad. (although I've tried several times, and never had a similar issue)

Thanks for your help :-)

Re: Can not use precompiled binary

wget http://registry.vibed.org/files/dub-0.9.11-linux-x86_64.gz
gzip -d dub-0.9.11-linux-x86_64.gz
chmod +x dub-0.9.11-linux-x86_64.gz
./dub-0.9.11-linux-x86_64 help

I tried your approach and it worked!

After another look I found that I was downloading the gz file with chromium browser before. and the file sizes are different with the wget one.

So maybe it was because my download was bad. (although I've tried several times, and never had a similar issue)

Thanks for your help :-)

Glad it worked :-) I'll look into the Chrome issue. Maybe there is an
issue with the HTTP headers the server sends or something.

Re: Can not use precompiled binary

Am 12.03.2013 16:43, schrieb Sönke Ludwig:

wget http://registry.vibed.org/files/dub-0.9.11-linux-x86_64.gz
gzip -d dub-0.9.11-linux-x86_64.gz
chmod +x dub-0.9.11-linux-x86_64.gz
./dub-0.9.11-linux-x86_64 help

I tried your approach and it worked!

After another look I found that I was downloading the gz file with chromium browser before. and the file sizes are different with the wget one.

So maybe it was because my download was bad. (although I've tried several times, and never had a similar issue)

Thanks for your help :-)

Glad it worked :-) I'll look into the Chrome issue. Maybe there is an
issue with the HTTP headers the server sends or something.

Turns out that the proxy was dropping the Content-Length header and that
caused Chrome to ignore the "Content-Encoding: gzip" header, too. The
result was a double gzip compressed file.