Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#4041 closed Bug (fixed)

FTBFS with enabled uTP on Debian

Reported by: taem Owned by: jordan
Priority: Normal Milestone: 2.30
Component: Transmission Version:
Severity: Normal Keywords: debian patch
Cc:

Description

Hi,

Here is fix of FTBFS with enabled uTP on Debian Wheezy [1]. Please find attached patch.

  1. http://wiki.debian.org/ToolChain/DSOLinking

Thanks.

Attachments (2)

0001-Fix-FTBFS-with-enabled-uTP-on-Debian.patch (1.3 KB) - added by taem 7 years ago.
librt-fix.patch (1.4 KB) - added by taem 7 years ago.

Download all attachments as: .zip

Change History (10)

comment:1 Changed 7 years ago by jordan

  • Milestone changed from None Set to 2.30
  • Owner set to jordan
  • Status changed from new to assigned
  • Version 2.21 deleted

comment:2 Changed 7 years ago by jordan

  • Resolution set to fixed
  • Status changed from assigned to closed

comment:3 follow-up: Changed 7 years ago by jordan

  • Resolution fixed deleted
  • Status changed from closed to reopened

taem, your patch broke building on OS X. Could you modify your patch to fix this?

From #4065:

Building svn version: r12042 on OSX 10.6.6 using build options: ./configure --disable-gtk --disable-mac --enable-daemon --enable-cli --disable-libnotify

Configuration:

   Source code location:                              .
   Compiler:                                          g++

   Build libtransmission:                             yes

      * optimized for low-resource systems:           no
      * µTP enabled:                                  yes

   Build Command-Line client:                         yes

   Build GTK+ client:                                 no

     Optional dependencies for GTK+ client:

      * dbus support:                                 no
      * gio for watchdir support:                     no
      * libnotify for 'download completed' popups:    no
      * libcanberra for 'download completed' sounds:  no
      * gconf2 to register as a magnet link handler:  no
      * libappindicator for an Ubuntu-style tray:     no

   Build Daemon:                                      yes

   Build Mac client:                                  no

results in the following build error

...
checking for clock_gettime in -lrt... no
...
ldld: library not found for -lrt
collect2: ld returned 1 exit status
ld: library not found for -lrt
collect2: ld returned 1 exit status
: library not found for -lrt
collect2: ld returned 1 exit status
make[1]: *** [blocklist-test] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [bencode-test] Error 1
make[1]: *** [clients-test] Error 1
make: *** [all-recursive] Error 1

comment:4 Changed 7 years ago by rb07

It also breaks building for Windows, where there is no librt. The qt.pro part is fine obviously since the libraries pulled are kept separate, but the configure patch is incomplete... looking at curl's configure they test for what is needed (for the clock_gettime function):

$as_echo_n "checking for clock_gettime in libraries... " >&6; }
    #
    curl_cv_save_LIBS="$LIBS"
    curl_cv_gclk_LIBS="unknown"
    #
    for x_xlibs in '' '-lrt' '-lposix4' ; do

What problem exactly was being fixed? I don't see any symbols in librt that pertain network communications, its mainly IPC, queues, semaphores and shared memory.

Last edited 7 years ago by rb07 (previous) (diff)

comment:5 in reply to: ↑ 3 Changed 7 years ago by taem

Replying to jordan:

taem, your patch broke building on OS X. Could you modify your patch to fix this?

Please test attached patch.

Thanks.

Changed 7 years ago by taem

comment:6 Changed 7 years ago by leena

The patch unbreaks Mac OS X.

comment:7 Changed 7 years ago by jordan

  • Resolution set to fixed
  • Status changed from reopened to closed

committed in r12064. Thanks taem :)

re-closing based on leena's report. rb07, please reopen if this doesn't fix things for you.

comment:8 Changed 7 years ago by rb07

Revision 12065 builds fine for Windows. Thanks Taem.

Note: See TracTickets for help on using tickets.