Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Timeout in cpanm means modules slow to install are always skipped and can't be installed #139

Open
cubabit opened this issue Sep 12, 2013 · 5 comments

Comments

@cubabit
Copy link

cubabit commented Sep 12, 2013

I was trying to install Memcached::libmemcached via Carton, but the build would always timeout with the following output in cpanm's build.log:

   CXX      libhashkit/libhashkit_libhashkitinc_la-hashkit.lo
   CXX      libhashkit/libhashkit_libhashkitinc_la-jenkins.lo
 -> FAIL Timed out (> 60s). Use --verbose to retry.
 Terminated
 Terminated
 make[1]: *** [libhashkit/libhashkit_libhashkitinc_la-has.lo] Terminated
 make[1]: *** [libhashkit/libhashkit_libhashkitinc_la-jenkins.lo] Terminated
 -> N/A
 make: *** [install] Terminated

I got around it by hacking Carton::Builder module to supply the --verbose switch to cpanm

@miyagawa
Copy link
Contributor

This is probably due to you're using a slow computer that compiles memcached takes more time than usual. Annoying that there's no configuration for this in carton, we'll see.

For now, workaround will be to add --build-timeout with a long value in Carton::Builder.

@pstuifzand
Copy link

I had the same problem with this module. It seems the problem isn't the speed of the computer, but the way the module is build. The configure step of the module also builds the C part of the package which does take a long time.

@pstuifzand
Copy link

After I added the --configure-timeout option to cpanm call in Carton::Builder with value 3600, this module installed without problems.

@frezik
Copy link

frezik commented Apr 26, 2015

I had a similar issue installing Device::SerialPort on a Raspberry Pi. The Pi is indeed slow, but it's also very popular. I'm glad there's a workaround, but it would be nice if there was an option to pass timeout options directly.

@miyagawa
Copy link
Contributor

if there's a way to cross compile modules on another (higher spec) options, right way to do is to build there and just copy the build artifacts.

That's what Carmel is aiming at - I already replaced one of my sites running on Carton with Carmel over this weekend.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants