Opened 9 years ago

Closed 9 years ago

Last modified 9 years ago

#4891 closed Bug (fixed)

Solaris 11 compile errors on 2.51

Reported by: oh_noes Owned by:
Priority: Normal Milestone: 2.60
Component: Transmission Version: 2.51
Severity: Normal Keywords: patch-needed
Cc:

Description

Transmission Daemon 2.42 built fine.

./configure

CFLAGS="-L/usr/local/libevent/lib -R/usr/local/libevent/lib -D__EXTENSIONS__" \
CPPFLAGS="-I/usr/local/include" \
LIBEVENT_LIBS="-L/usr/local/libevent/lib -R/usr/local/libevent/lib -levent -lrt" \
LIBEVENT_CFLAGS="-I/usr/local/libevent/include" \
LDFLAGS="-L/usr/local/lib -R/usr/local/lib" \
LIBCURL_CFLAGS="-I/usr/local/include" \
LIBCURL_LIBS="-L/usr/local/lib -levent -lcurl" \
./configure --prefix=/usr/local/transmission --enable-utp --disable-external-natpmp \
--enable-daemon --enable-cli --disable-nls \
--disable-mac --without-gtk \
--with-zlib="/usr/local/lib" --with-zlib-includes="/usr/local/include"

make throws the following errors (inside miniupnpc.c)

# make
Making all in extras
make[1]: Entering directory `/root/transmission-2.51/extras'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/root/transmission-2.51/extras'
Making all in third-party
make[1]: Entering directory `/root/transmission-2.51/third-party'
Making all in dht
make[2]: Entering directory `/root/transmission-2.51/third-party/dht'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/transmission-2.51/third-party/dht'
Making all in libnatpmp
make[2]: Entering directory `/root/transmission-2.51/third-party/libnatpmp'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/transmission-2.51/third-party/libnatpmp'
Making all in miniupnp
make[2]: Entering directory `/root/transmission-2.51/third-party/miniupnp'
./updateminiupnpcstrings.sh ./miniupnpcstrings.h.in miniupnpcstrings.h
Detected OS [SunOS] version [5.11]
setting OS_STRING macro value to SunOS/5.11 in miniupnpcstrings.h.
make  all-am
make[3]: Entering directory `/root/transmission-2.51/third-party/miniupnp'
  CC     minisoap.o
  CC     miniupnpc.o
miniupnpc.c: In function `upnpDiscover':
miniupnpc.c:520: error: storage size of 'reqn' isn't known
miniupnpc.c:521: error: invalid application of `sizeof' to incomplete type `ip_mreqn'
miniupnpc.c:520: warning: unused variable `reqn'
make[3]: *** [miniupnpc.o] Error 1
make[3]: Leaving directory `/root/transmission-2.51/third-party/miniupnp'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/root/transmission-2.51/third-party/miniupnp'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/transmission-2.51/third-party'
make: *** [all-recursive] Error 1

config.log, attached.

Attachments (2)

config.log (105.1 KB) - added by oh_noes 9 years ago.
config.log
miniupnpc.c.patch (444 bytes) - added by rb07 9 years ago.

Download all attachments as: .zip

Change History (16)

Changed 9 years ago by oh_noes

config.log

comment:1 Changed 9 years ago by rb07

It's a miniupnc bug, see for instance http://miniupnp.tuxfamily.org/forum/viewtopic.php?t=1130 and there are more cases which that line is missing (it probably needs to test the inverse, to avoid that long list of operating system environments).

The code has to be fixed upstream. Actually it already has, but I'm not sure if the fix works for Solaris.

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

comment:2 Changed 9 years ago by jordan

oh_noes, does r13294 fix this problem for you?

comment:3 Changed 9 years ago by s0rce

Still broken for me (Solaris 11) transmission 2.52

miniupnpc.c:115:8: warning: no previous declaration for âsimpleUPnPcommand2â miniupnpc.c: In function âupnpDiscoverâ: miniupnpc.c:515:21: error: storage size of âreqnâ isnât known miniupnpc.c:516:29: error: invalid application of âsizeofâ to incomplete type âstruct ip_mreqnâ miniupnpc.c:515:21: warning: unused variable âreqnâ

comment:4 Changed 9 years ago by jordan

  • Keywords patch-needed added

Changed 9 years ago by rb07

comment:5 Changed 9 years ago by rb07

The patch of course doesn't change Transmission, I've already posted on miniupnp's forum about the Cygwin change.

Perhaps revision r13294 should be reverted, it didn't fix this, and who knows what it could affect.

Last edited 9 years ago by livings124 (previous) (diff)

comment:6 follow-up: Changed 9 years ago by jordan

Looks like that diff was included in miniunpnpc-1.7 :)

comment:7 Changed 9 years ago by jordan

  • Milestone changed from None Set to 2.53
  • Resolution set to fixed
  • Status changed from new to closed

Updated to miniupnpc 1.7 in r13331.

comment:8 in reply to: ↑ 6 Changed 9 years ago by rb07

  • Resolution fixed deleted
  • Status changed from closed to reopened

Replying to jordan:

Looks like that diff was included in miniunpnpc-1.7 :)

No it didn't, the Solaris part is missing (and this ticket is about exactly that).

The problem is that nobody reported it upstream.

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

comment:9 follow-up: Changed 9 years ago by livings124

rb07, have you reported upstream?

comment:10 in reply to: ↑ 9 Changed 9 years ago by rb07

Replying to livings124:

rb07, have you reported upstream?

No.

I was expecting the original reporter to test the patch, and also to open a report upstream.

comment:11 Changed 9 years ago by s0rce

The patch works.

I posted on the miniupnp forum:

http://miniupnp.tuxfamily.org/forum/viewtopic.php?p=2992#2992

First post so I wasn't allowed to post links. I hope they understand.

comment:13 Changed 9 years ago by livings124

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

comment:14 Changed 9 years ago by livings124

  • Milestone changed from 2.53 to 2.60
Note: See TracTickets for help on using tickets.