Build Transmission on Windows

Ask for help and report issues with the Windows version of Transmission
Post Reply
cadusilva
Posts: 24
Joined: Thu Nov 11, 2010 10:25 pm

Re: Build Transmission on Windows

Post by cadusilva »

I translated the TransmissionQT by the source code and sent it to a VM running Fedora 13. I installed MinGW with all its dependencies satisfied. I could compile it by following the instructions in this link, but to give the make command and enter the folder libtransmission the announce.o cause a series of errors as can be seen here.

Errors happen when I run this part of the tutorial (in red):
Then:

* cd transmission-1.83
* curl "http://trac.transmissionbt.com/wiki/Bui ... format=txt" -O transmission-1.83-Qt-build.diff
* patch -p1 < transmission-1.83-Qt-build.diff
* mingw32-configure --disable-nls --disable-largefile --disable-cli --disable-gtk
* make CFLAGS="-pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -mms-bitfields -DSTATICLIB"
* make install
For the record, I'm using the source code of latest version, the 2.11 and not 1.83.

Can you help?
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

The problem is the document is getting old (I wrote it), and it doesn't say that transmission went from including libevent, to not including it... my mistake, I make those adjustments on the fly and forget to document them.

So you have to install it yourself in the MingW environment (the usual cycle of mingw32-configure, make install); or change to http://www.nongnu.org/mingw-cross-env/, this one already has it (you still have to run 'make libevent' to install it).

You say that you translated TransmissionQT, whatever that means. You don't seem to have read or understood what I said before: that will not change anything in the resulting application, you need one or two extra steps not documented in the Wiki.
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

Transmission 2.12 is out, the Windows binary is at http://ifile.it/yruqvdj/Transmission-Qt-2.12-Setup.exe

For those building it, the making of the library goes fine, but the utils stops with a message about strsep() missing. I don't know if this will stop the building of the Qt application, I added the function (which MingW really doesn't have) and rebuild the library before continuing.

The above binary is build with Qt 4.7.1, libcurl 7.21.2, libevent 1.4.14b, dbus 1.4.0 (still needs the dynamic library).
Last edited by rb07 on Thu Nov 18, 2010 6:14 am, edited 1 time in total.
cadusilva
Posts: 24
Joined: Thu Nov 11, 2010 10:25 pm

Re: Build Transmission on Windows

Post by cadusilva »

So, can I ask you something?

If it is not asking much, I would like to know which files I need to translate and if you could build a Windows installation with the new language. I have seen that the installer is already in Portuguese and I also saw that with what I know today, I never going to build a working software.

You already know all the way as the palm of your hand, then I wonder if you can do that.

Just say what I have to translate. I will do that and send the files to be added to build. The biggest problem would be to take the time to make the build and the need to create a different installer with the new language, as does Firefox.

But even so, I hope we can make this partnership. :D

Forgive me if I'm being too boring or insisting.
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

cadusilva
I tell you what, since as far as I know all you need is one file, I propose 2 things:
  • You translate the file transmission_en.ts (its in the source code, transmission-2.12/qt/transmission_en.ts) and put the result just like the Russian translator in the Wiki https://trac.transmissionbt.com/report (create an account, start a new ticket, upload your file which should be named as your locate, I guess transmission_pt_BR.ts), then send me a PM in this forum;
  • I'll run the Qt tool to create transmission_pt_BR.qm and upload that one to your ticket on the Wiki, for testing.
Then you can download the file, put it alongside the application, and see if it works as expected.
cadusilva wrote:The biggest problem would be to take the time to make the build and the need to create a different installer with the new language, as does Firefox.
No, its really easy.

The Windows installer is made using InstallJammer, its already multilingual so there's nothing to do there.

The Qt application is also already multilingual, or at least the ground work for that is already done, but nobody has taken the time to finish the job.

There are 2 ways to finish the job: with separate translation files, like the one I proposed above, and with embedded translations (the application contains all translations).

I would prefer embedded translations, and automate everything since there is no need to do it in several steps; i.e. the make step should do everything. But embedded translations need some changes to the code (my guess since I haven't done it before); first I would group all the translations under a (sub)directory, just like the icons are now; then I would put them as resources (just like the icons...); last I would change the code if needed.

Also as I said before, as a developer, I would also automate the translation phase. Since there are already translations for the GTK application, its easy to go from them to the Qt format.
cadusilva
Posts: 24
Joined: Thu Nov 11, 2010 10:25 pm

Re: Build Transmission on Windows

Post by cadusilva »

cadusilva
I tell you what, since as far as I know all you need is one file, I propose 2 things:
You translate the file transmission_en.ts (its in the source code, transmission-2.12/qt/transmission_en.ts) and put the result just like the Russian translator in the Wiki https://trac.transmissionbt.com/report (create an account, start a new ticket, upload your file which should be named as your locate, I guess transmission_pt_BR.ts), then send me a PM in this forum;
I'll run the Qt tool to create transmission_pt_BR.qm and upload that one to your ticket on the Wiki, for testing.
Then you can download the file, put it alongside the application, and see if it works as expected.
Then, after following these steps, simply extract the downloaded file in the directory where the Transmission is installed for it to be translated?

What if I want to translate the WebUI as well?

I'll start translating the file.

Thanks for your patience and sorry for anything.
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

cadusilva wrote:Then, after following these steps, simply extract the downloaded file in the directory where the Transmission is installed for it to be translated?
Yes.
cadusilva wrote:What if I want to translate the WebUI as well?
That's another matter, I was only talking about Transmission-Qt, I haven't looked at the Web client but usually, with Apache which is not used here, you have to provide different .html files for each language.
cadusilva
Posts: 24
Joined: Thu Nov 11, 2010 10:25 pm

Re: Build Transmission on Windows

Post by cadusilva »

I translated the file "transmission_en.ts" in the folder "qt" and generated a file "transmission_pt_BR.qm" with QTLinguistic, but when I put them in the same folder where is the transmission-qt.exe, it does not get translated. I also included the file transmission_pt_BR.ts, but to no avail. I tried to add the files in the AppData/Roaming/transmission but neither worked as expected.
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

Did you remember to change the "Translation File Settings..."?

Is your Windows showing Portuguese? I don't know where Windows shows the locale... well if you run msinfo32, it shows the country under System Summary - Locale, but what I meant was something like pt_BR, or LANG=en_US.UTF-8.
cadusilva
Posts: 24
Joined: Thu Nov 11, 2010 10:25 pm

Re: Build Transmission on Windows

Post by cadusilva »

rb07 wrote:Did you remember to change the "Translation File Settings..."?

Is your Windows showing Portuguese? I don't know where Windows shows the locale... well if you run msinfo32, it shows the country under System Summary - Locale, but what I meant was something like pt_BR, or LANG=en_US.UTF-8.
http://i51.tinypic.com/5c0k6f.png
http://i51.tinypic.com/jfgbit.png

Everything as it should be. Yet still without result. The Transmission has some kind of cache that needs to be cleared for the new language to be recognized? I looked at the headers of the TS files and they are in default of other languages.

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.0" language="en">

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.0" language="ru_RU">

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.0" language="pt_BR">
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

cadusilva wrote:Transmission has some kind of cache that needs to be cleared for the new language to be recognized?
No. Where do you get such crazy idea?

All looks fine to me. Perhaps you should move this topic to a new thread in the forum, first it has nothing to do with building T on Windows (plus you need to attract more expert answers, this thread doesn't attract anybody -- its too long, and boring), second other users with other OS might be interested (it is interesting for anybody running Transmission-Qt under any operating system), with any luck the Russian translator will tell us what is exactly he doing to make it work.

I'll experiment a little, making the translation to es_LA (if that is a valid code for español/Latin America), and test it in a Netbook I have with Windows in Spanish. But I'm busy with other things at work, so don't expect an answer soon.
cadusilva
Posts: 24
Joined: Thu Nov 11, 2010 10:25 pm

Re: Build Transmission on Windows

Post by cadusilva »

It was opened a ticket with the translation (which for some reason does not work). I opened another informing about a possible bug that makes dbus-daemon to be using 25% CPU all the time.

I'll see if I can find help here in the forum about both problems and see if I can talk to Russian translator.

In closing, let me say that I really like the Transmission. Let me also say a thank you for your patience with me while I asked questions and assertions somewhat idiotic. Thank you for your support and understanding.
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

Nice work.

Your second ticket is not valid, dbus is a different project, Transmission-Qt only uses it. Any problem with dbus should be reported with them http://www.freedesktop.org/software/dbus/ and the version is 1.4.0 (not the same as Transmission). Since you didn't build dbus, I did, I doubt any developer will want to investigate your case; I can tell you that it builds almost out of the box, it has a little bug I already reported, and a developer fixed, but the fix never made it into the release... I am waiting for 1.4.1 which they announced a long time ago, but never did release... anyway, that bug is not what causes the problem you are seeing, its a bug that prevents dbus from building.

I did see, and wrote about it somewhere in this thread, that dbus-daemon sometimes seemed to loop, causing high CPU use, but it only happened when I was doing a lot of testing (Transmission-Qt testing) and you just needed to kill that daemon.
cadusilva
Posts: 24
Joined: Thu Nov 11, 2010 10:25 pm

Re: Build Transmission on Windows

Post by cadusilva »

OK, I set the ticket as invalid to save the work to developers. I could not find the russian translator. I clicked on his name on the Trac, but falls in the search and not in a profile (if it exists) with information about him.

Let's see what they'll do with my translation. I hope it becomes effective and starts working as it should.
rb07
Posts: 1400
Joined: Sun Aug 24, 2008 3:14 am

Re: Build Transmission on Windows

Post by rb07 »

cadusilva

Let's test this:

In your Transmission-Qt installation directory, create a new directory with name translations, move your transmission_pt_BR.qm file to that directory, run the application.

Ref: http://doc.trolltech.com/4.6/internationalization.html and http://doc.trolltech.com/4.6/qt-conf.html
Post Reply