Author Topic: qBittorrent project needs help on Windows front  (Read 64813 times)

Dayman

  • Administrator
  • Veteran
  • *****
  • Posts: 343
  • Karma: +45/-0
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #30 on: November 26, 2012, 11:53:37 AM »
But don't try to add all four commands into a single batch file, after the second command (starting another batchfile) has ended, the entire process ends, and it'll never come to the two nmake commands.
Executing another batchfile from a batchfile is done with CALL command, otherwise control will be passed to the second batchfile and the first one will be discarded.


P.S. Anyone interested in contributing code through GitHub on windows should probably read this: https://help.github.com/articles/dealing-with-line-endings#platform-windows
« Last Edit: November 26, 2012, 12:16:55 PM by Dayman »
Building x86_64 stuff on Windows due to Gentoo syndrome.

Jabber: [email protected]
Skype: x.dayman
Irc #[email protected]: Dayman

bfelten

  • Newbie
  • *
  • Posts: 15
  • Karma: +0/-0
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #31 on: November 26, 2012, 02:10:35 PM »
For those interested in making things a little more easy, here's the batch file I ended up with -- now working properly. Just name it e.g. 'mk.bat', place in the openssl directory and run it. No directory names or anything should need to be changed. But you must of course run it from an MSVC2008 command shell:

Code: [Select]
for /f "tokens=* delims=/" %%A in ('cd') do set CURRENT_DIR=%%A
perl Configure VC-WIN32 no-shared no-zlib-dynamic threads --prefix="%CURRENT_DIR%\my_build"
call ms\do_nasm
nmake -f ms\nt.mak
nmake -f ms\nt.mak install
xcopy my_build\include\*.* "%VCINSTALLDIR%\include\" /Y /Q /S
xcopy my_build\lib\*.* "%VCINSTALLDIR%\lib\" /Y /Q /S
« Last Edit: November 26, 2012, 05:28:05 PM by bfelten »

bfelten

  • Newbie
  • *
  • Posts: 15
  • Karma: +0/-0
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #32 on: November 26, 2012, 02:14:35 PM »
Executing another batchfile from a batchfile is done with CALL command, otherwise control will be passed to the second batchfile and the first one will be discarded.

Of course. What I missed was that ms\do_nasm actually was a batchfile.

bfelten

  • Newbie
  • *
  • Posts: 15
  • Karma: +0/-0
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #33 on: November 26, 2012, 09:01:37 PM »
OK, so I've made a lot of changes -- or rather additions -- to the wiki. If you think I'm way out of line there, feel free to tell me off.

I regard myself as something of a batch file guru, and just love to contribute even with such small stuff. But that's probably just my ego talking...  ::)

bfelten

  • Newbie
  • *
  • Posts: 15
  • Karma: +0/-0
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #34 on: November 26, 2012, 09:16:08 PM »
After all those efforts, I still can't get the damn thing to compile. I don't know if the 'misc::toQString' error I reported previously -- still remaining no matter what I do -- is just the tip of an iceberg, or just a single error.

Is there actually anyone here, who's managed to compile it all from scratch, just following the wiki?

Dayman

  • Administrator
  • Veteran
  • *****
  • Posts: 343
  • Karma: +45/-0
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #35 on: November 26, 2012, 09:33:41 PM »
I thinks it needs Qt built with -stl option.

P.S. I may end up uploaded my build scripts someday. They are for 64-bit builds though.
Building x86_64 stuff on Windows due to Gentoo syndrome.

Jabber: [email protected]
Skype: x.dayman
Irc #[email protected]: Dayman

bfelten

  • Newbie
  • *
  • Posts: 15
  • Karma: +0/-0
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #36 on: November 27, 2012, 01:51:00 AM »
They are for 64-bit builds though.
Looking forward to that -- that's what I really wanted in the first place any way. Building 32-bit apps is so 00-ish. Just as 8-bit apps are 1980-ish and 16-bit apps are 1990-ish  -- welcome to the 202:nd decade, we're almost three years into it now...  8)
« Last Edit: November 27, 2012, 04:32:53 AM by bfelten »

sledgehammer_999

  • qBittorrent maintainer
  • Administrator
  • Forum addict
  • *****
  • Posts: 2406
  • Karma: +151/-2
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #37 on: November 27, 2012, 06:30:36 PM »
@bfelten
Yes, nice just the batch approach, but I want to keep it as an optional step. That's why I reverted some of your wiki changes and I put the optional tag.
I see that you are having problems compiling qbt. Do the problems still occur? If yes, can you post some more info about what the error is?
Also, please for the first time follow the wiki instructions AS IS, without doing any modification or trying to use batch files. This is to verify that the instructions work on your machine. After that you can experiment with other options or batch files to automate the process.

@Dayman
If you want to post your instructions on how to build a 64bit version please create a new page here with the appropriate name. If however, your method doesn't diverge much from the official method then feel free to edit the "official method" wiki page.

About the 32bit vs 64bit: First of all utorrent doesn't seem to provide different versions either. Secondly, I don't believe that 64bits offer a significant(if any) boost in performance. A bittorrent client doesn't do much CPU intensive tasks to really benefit from 64bit.(I may be wrong though. I don't have any test data on that). On the other hand, 64bit slightly increase the memory footprint of the program. Lastly, other everyday apps are 32bit only, eg Firefox, so in the end 32bit isn't that uncommon.

We could try a different approach though. I could switch to gcc builds(it is feasible-> link) and cross build the 64bit from a 32bit host. Another solution is for Dayman,bfelten (or anyone else who is up to the task) to be the "Windows 64bit packager". Of course, we will need to get permission from Chris, to upload on sf.net. But this is the least of our worries.

loki

  • Forum addict
  • ****
  • Posts: 567
  • Karma: +16/-2
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #38 on: November 28, 2012, 01:24:20 AM »
I think I chimed in on this "fight" about a pointless 64-bit version once too. One of the main reasons I know of to have a 64-bit program is to allow it access to larger amount of RAM, unnecessary in a torrent program... I sure wouldn't use a torrent program either if it needed to address more than 3-4GB of RAM.
Faster? Not specifically. More efficient? Maybe, but is negligible at best.
One theory which might hold true, possibly one advantage, creating (large) torrent file... though this is probably commonly bottle-necked by the HDD and not processor anyway.
Processors and OS's we have are backwards compatible to 32-bit programs also... so is not "necessary" as it may be with linux package-wise.

Dayman

  • Administrator
  • Veteran
  • *****
  • Posts: 343
  • Karma: +45/-0
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #39 on: November 28, 2012, 01:52:01 PM »
@Dayman
If you want to post your instructions on how to build a 64bit version please create a new page here with the appropriate name. If however, your method doesn't diverge much from the official method then feel free to edit the "official method" wiki page.
It differs mostly in using layout=system for boost (and boost=system for LT) and using make install wherever possible.
Btw, copying anything into system include and lib dirs on windows is a bad idea. You can use these bjam options when building LT: "include=%BUILDROOT%\OpenSSL\OpenSSL64\include" "library-path=%BUILDROOT%\OpenSSL\OpenSSL64\lib"
Secondly, I don't believe that 64bits offer a significant(if any) boost in performance. A bittorrent client doesn't do much CPU intensive tasks to really benefit from 64bit.(I may be wrong though. I don't have any test data on that). On the other hand, 64bit slightly increase the memory footprint of the program.
I agree on performance: speed boost in very small for not cpu intensive tasks, if there is at all. Still i686 arch is way outdated, x86_64 has way more registers, which is really good for compiler optimizations.
Lastly, other everyday apps are 32bit only, eg Firefox, so in the end 32bit isn't that uncommon.
Waterfox, Palemoon, Firefox Nightly (before they dropped 64-bit builds in 17.0) There is a bunch of other 64-bit applications.
Building x86_64 stuff on Windows due to Gentoo syndrome.

Jabber: [email protected]
Skype: x.dayman
Irc #[email protected]: Dayman

sledgehammer_999

  • qBittorrent maintainer
  • Administrator
  • Forum addict
  • *****
  • Posts: 2406
  • Karma: +151/-2
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #40 on: November 28, 2012, 03:03:21 PM »
@Dayman
If you want to post your instructions on how to build a 64bit version please create a new page here with the appropriate name. If however, your method doesn't diverge much from the official method then feel free to edit the "official method" wiki page.
It differs mostly in using layout=system for boost (and boost=system for LT) and using make install wherever possible.
Btw, copying anything into system include and lib dirs on windows is a bad idea. You can use these bjam options when building LT: "include=%BUILDROOT%\OpenSSL\OpenSSL64\include" "library-path=%BUILDROOT%\OpenSSL\OpenSSL64\lib"

I think you should create a separate page(copying whatever you need from the other pages), for the sole reason of having a tested official "working" guide and not confuse possible contibutors.

For the system include/lib you are right. I didn't like it either but I needed a quick way to solve potential pitfalls. eg How do you direct qt's configure.exe to look for your openssl include/lib ?

Secondly, I don't believe that 64bits offer a significant(if any) boost in performance. A bittorrent client doesn't do much CPU intensive tasks to really benefit from 64bit.(I may be wrong though. I don't have any test data on that). On the other hand, 64bit slightly increase the memory footprint of the program.
I agree on performance: speed boost in very small for not cpu intensive tasks, if there is at all. Still i686 arch is way outdated, x86_64 has way more registers, which is really good for compiler optimizations.
Lastly, other everyday apps are 32bit only, eg Firefox, so in the end 32bit isn't that uncommon.
Waterfox, Palemoon, Firefox Nightly (before they dropped 64-bit builds in 17.0) There is a bunch of other 64-bit applications.

Ok noted. The only think I have to say is that currently qbt really needs(IMO) contributors/bug fixers/programmers more than providing a 64bit build. The bug reports/feature requests are increasing  daily and there isn't enough manpower to resolve them quickly.
« Last Edit: November 28, 2012, 03:05:11 PM by sledgehammer_999 »

Dayman

  • Administrator
  • Veteran
  • *****
  • Posts: 343
  • Karma: +45/-0
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #41 on: November 28, 2012, 05:24:01 PM »

For the system include/lib you are right. I didn't like it either but I needed a quick way to solve potential pitfalls. eg How do you direct qt's configure.exe to look for your openssl include/lib ?
configure.exe -I %BUILDROOT%\OpenSSL\OpenSSL64\include -L %BUILDROOT%\OpenSSL\OpenSSL64\lib

Building x86_64 stuff on Windows due to Gentoo syndrome.

Jabber: [email protected]
Skype: x.dayman
Irc #[email protected]: Dayman

bovirus

  • Newbie
  • *
  • Posts: 12
  • Karma: +0/-0
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #42 on: December 01, 2012, 06:29:29 PM »
Should be possible to make the languiage file outsuide the core of teh program as standalone file?
In this way should be possible to change/revise the language file without rebuild the exe & installer.
Thanks.

John Peterson

  • Newbie
  • *
  • Posts: 6
  • Karma: +1/-0
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #43 on: December 03, 2012, 06:31:33 PM »
It's important that build commands are available because that makes it easy to build to program
« Last Edit: May 01, 2013, 02:47:21 AM by John Peterson »

sledgehammer_999

  • qBittorrent maintainer
  • Administrator
  • Forum addict
  • *****
  • Posts: 2406
  • Karma: +151/-2
    • View Profile
Re: qBittorrent project needs help on Windows front
« Reply #44 on: December 03, 2012, 07:01:34 PM »
@John Peterson they are available in the wiki page. link