Build Transmission on Windows

Ask for help and report issues with the Windows version of Transmission
Post Reply
fat_chris
Posts: 9
Joined: Fri Jun 05, 2009 4:12 pm

Re: Build Transmission on Windows

Post by fat_chris »

Wow, I didn't even notice that. But yes, it's using about 160mb and climbing.
essiw
Posts: 567
Joined: Sat Aug 23, 2008 10:40 am
Location: the Netherlands

Re: Build Transmission on Windows

Post by essiw »

just asking, are you talking about the free RAM memory?
if so, inactive is free RAM that has been used, and nearly all of the dissapeard free memory should appear at the inactive memory. nothing to worry about
if not, ignore this comment.
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

fat_chris wrote:Wow, I didn't even notice that. But yes, it's using about 160mb and climbing.
Thanks for the info.

I'll see if I can use Valgrind to find out where its leaking.
Jordan
Transmission Developer
Posts: 2312
Joined: Sat May 26, 2007 3:39 pm
Location: Titania's Room

Re: Build Transmission on Windows

Post by Jordan »

We're probably going to do 1.71 tomorrow. If you can find the leak before then, I'll try to include the fix in that release.

FWIW, I've been running Valgrind on the Qt client in "remote" mode on F10 and am not seeing any leaks in the latest nightly.

rb07: tarballs of the latest build can be found at http://build.transmissionbt.com/job/trunk-linux-inc/
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

Running now 1.70+(8638), it leaks slower, about 3 or 4 times slower. The problem with the initial communication persists, it takes from 1 to 2 minutes for anything to appear (my daemon is in my LAN, connected with gigabit switch and interfaces).

Also noticed that when I minimize the application it frees a lot of memory. Still leaks minimized, slow as before, maximize and it gains 3 MB, minimize and looses 15 MB (probably goes to a constant size, I need to test with longer time maximized 'till it gets fat ;-)

Funny things happen:
QTr running minimized -> 42 MB and counting
maximized -> 46 MB ...
minimized -> 5 MB and then jumps to 30 MB, slow from there
maximized -> 34 MB
The mimimize diet doesn't work :)

Haven't tried Valgrind, still have to see if I have to cross-build it or what.
fat_chris
Posts: 9
Joined: Fri Jun 05, 2009 4:12 pm

Re: Build Transmission on Windows

Post by fat_chris »

rb07:
I've just remembered, I managed to get native Vista+ theme. All I had to do was copy QtGui4.dll from the Qt SDK. If you dont want to download the whole SDK I could upload it somewhere and you could include it in your installer so that everyone can appreciate a native look on Vista and 7. If you do download the SDK, use the QtGui4.dll in C:\Qt\2009.02\qt\bin not C:\Qt\2009.02\bin as that one doesn't work.
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

fat_chris :

I have the Qt 4.5.1 SDK on Windows, and you are right, they distribute 2 different libraries (7.2M vs 11M). Anyway, the one in the installer is yet another (9.4M) which was compiled under Fedora (they build everything from source).

I tested with the change you propose, actually changed all 3 Qt libraries, the application works as before, looks different (looks to me identical to the application running under Fedora, the native application, not the Windows one which could also run under Fedora+Wine)... it seems to work better even, the race condition at the start that takes 3 minutes for anything to show is not there, it still leaks (but it leaks as well under Fedora -- perhaps Jordan is using a different version of Qt 'cause with 4.5.0 and 4.5.1 Qt leaks constantly, not the app as far as I've followed the long list of leaks).

This makes things difficult to follow, for instance, in my builds version 1.61 looked different than all the 1.7x versions. I don't know if something changed in the application or was Qt?

Only recently, last week or so, Fedora-mingw32 changed versions of Qt from 4.5.0 to 4.5.1; since then I built QTr 1.7.2 and it was just as the version before (meaning: different than 1.61).

I can make a new package like you say, switching the Qt libraries. I don't know if anybody has downloaded those packages (I've built one for every recent release).

What we should be doing is reporting the bugs to the developers, I haven't, and I've seen 3 big ones:
  1. 1. Application tries to write settings.json w/o first creating the directory;
    2. The startup seems to have a race condition, app spins its wheels for 3 minutes... but this one dissapeared just now whith the changed libraries;
    3. Leaking... but as I said, using Valgrind with the Linux native application I see lots of leaks by Qt, under Windows is the same but worse (seems to leak in 4k multiples) I used DUMA and gdb so I was in the middle of an avalanche.
fat_chris
Posts: 9
Joined: Fri Jun 05, 2009 4:12 pm

Re: Build Transmission on Windows

Post by fat_chris »

Under Windows 7 it certainly looks much better and fits in with all other apps.

Maybe 2. should be reported to the fedora devs who are building it and because they don't seem to be including all the qt windows themes. Also, should it really be writing the settings of the remote transmission-daemon (which it seems to do) as won't this make it hard to switch between remote and local modes? Unless settings.json is somehow switched.

I have a windows-build specific bug: The sizes of my torrents and how much I've up/downloaded aren't showing correctly, although these were previously mostly reporting correct with the fedora builds except the total amounts. If you select Total Transfer in the status bar or look in Statistics, it shows this.
Image
Does this happen to you also rb07?
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

Yes, the ratios and download amount got corrupted at some point, they where working before.

About the settings, the ones I care with this application are the window size and position, the last mode used (local or connected to remote), and with remote session the IP address of the daemon, port, and authentication data. Those are being stored (but will fail to store in Windows and Linux until you create the directory, if you remember one of my comments it was after I ran the GTK+ version that QTr started saving those settings... yes, Transmission Gtk does it right).

You are right about a possible conflict if the settings only can store one configuration, what happens if I want to connect to several daemons? I had a problem with transmission-cli once, it took over the torrents that the running daemon had, which is not what I wanted; something similar hasn't happened with QTr, but I don't know if it can be triggered.

Also, the first time I ran QTr it created a download directory in C:/transmission/downloads (or something like it), that was before I could set my remote session which is all I use. I consider that a bug also, it should ask before doing such things.

I don't know enough Qt to comment on your statement about "including all the qt windows themes". QTr doesn't set a style or theme AFAIK, so its using either a default theme or a native specific default, I don't know if the libraries contain it or not, I did check the Fedora-mingw32 Qt libraries and headers, and the windows themes are there (but they are separate libraries, like all other themes -- in the SDK: Qt/2009.02/qt/include/QtGui/qwindows*style.h, I'm not sure which library).
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

I remembered something, about the different libraries: the one in my installer, which are the ones from Fedora-mingw32, are built using gcc 4.0.x and sjlj exception handling. On the other hand, the libraries from the Windows SDK are (supposedly) built with gcc 3.4.2 (or 3.4.5 or maybe even MS VC) which use very different (and incompatible) exception handling.

Right now, I don't know how this is working, the mixing of these codes is not supposed to work, but it does. So, its strange that it even works better (the absence of wheel spinning at the start -- oops! take that one back, its doing the same now on 2nd use, 3 minutes and counting, nothing shows). Perhaps my build has a very strange mixture of compiled code... but so far it works for me ;-)
Last edited by rb07 on Mon Jun 22, 2009 10:14 pm, edited 1 time in total.
fat_chris
Posts: 9
Joined: Fri Jun 05, 2009 4:12 pm

Re: Build Transmission on Windows

Post by fat_chris »

Yes I had the same problem about the settings not being saved and I think I remember reporting it on irc a while ago when it happened on linux. I only said "including all the qt windows themes" because if I get a native vista look with a simple replacement of QtGui4.dll then it seems obvious that the fedora .dlls don't contain this or XP themes and are just falling back to the classic windows style. I know it's probably too much to ask from you but, maybe it would be worth compiling against the libs in the SDK rather than in fedora as they are perhaps more complete, it avoids mixing and matching runtime .dlls and if everything is built with the same (older) compiler as you say, it will probably avoid more problems.
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

The Qt Windows SDK doesn't work when it comes to build Transmission.

Reason: it has a very old winapi.

I don't know if just dropping a current winapi over it will make it compile T on Windows, I haven't tried (but that's the usual way with MinGW, at least I think it is the usual way -- I'm not an expert on MinGW).
Last edited by rb07 on Tue Jun 23, 2009 5:44 pm, edited 1 time in total.
fat_chris
Posts: 9
Joined: Fri Jun 05, 2009 4:12 pm

Re: Build Transmission on Windows

Post by fat_chris »

Ah I see, that's kind of annoying. Well, if you have any progress be sure to let us know :).
Sagres
Posts: 4
Joined: Fri Nov 06, 2009 6:56 pm

Re: Build Transmission on Windows

Post by Sagres »

I'm sorry i'm new to this program and i'm not very good with all this programming stuff :D

Apparently here the program can not connect to any seeds/leechers, I got the port foward (it is using the same ut was using) but still it stays on 0/0 on both torrents i got on. :roll:
One of them as 9000 seeds vs 1000 leechers so i can't see that being the problem :|

So... Some help please? :D

Edit: oh I'm running windows vista, and simply downloaded the link you've got on this tread
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

Do you have the C:/Users/<your user>/Application Data/transmission directory ?

I'm not sure if that was corrected, but the application used to fail storing its parameters because it didn't create the directory first... I don't know if that is the problem you are seeing but if the directory (and it may be in a slightly different place, I'm looking at WinXP and just substituted "Documents and Settings" for "Users") is not created perhaps there are weird values for the number of connections allowed... which you should be able to see in Edit -> Preferences -> Network, and also the port used (and run "Test Port").

You are the first person I've heard that seems to be using QTr by itself, I use it with a daemon running on another computer.
Post Reply