Author Topic: qBittorrent System Requirements  (Read 7511 times)

Dayman

  • Administrator
  • Veteran
  • *****
  • Posts: 343
  • Karma: +45/-0
    • View Profile
Re: qBittorrent System Requirements
« Reply #15 on: July 12, 2013, 09:38:22 am »
The point of me doing a statically linked binary(no dlls) was to avoid depending on MSVC2008 dlls. Because they need to be installed on end machines. Up until now, I thought that it worked. Obviously I have overlooked something.

ZLib maybe?
Building x86_64 stuff on Windows due to Gentoo syndrome.

Jabber: Dayman@dukgo.com
Skype: x.dayman
Irc #qbittorrent@freenode.net: Dayman

sledgehammer_999

  • qBittorrent maintainer
  • Administrator
  • Forum addict
  • *****
  • Posts: 2406
  • Karma: +150/-2
    • View Profile
Re: qBittorrent System Requirements
« Reply #16 on: July 12, 2013, 02:22:39 pm »
Screenshot from dependency walker on Windows XP sp2:


There is no dependency on msvcrt90.dll or similar. I'll setup a VM tonight to do a clean install of WinXP and see if I can get the error OP got.

sledgehammer_999

  • qBittorrent maintainer
  • Administrator
  • Forum addict
  • *****
  • Posts: 2406
  • Karma: +150/-2
    • View Profile
Re: qBittorrent System Requirements
« Reply #17 on: July 13, 2013, 08:36:16 pm »
@qRegret

I can confirm that there is a dependency on msvc2008. But it isn't a hard one. Explanation for the techie users:

The binary has a manifest embedded in it by the compiler. This manifest can contain many things. Among them are dll dependencies. In our case, the linker embeds a dependency on the msvc2008 runtime ALTHOUGH it is not needed since we statically link against it. I can confirm this, because I used "resource hacker" to remove that specific dependency from the emdedded manifest and the binary was LOADED without errors on a clean install of Windows XP.

Also dependency walker wasn't much helpful. The only indication to a problem with SxS assemblies was with an obscure message in its log window. The module tree didn't indicate the dependency on msvc2008 dll. Frankly, it was a lucky guess to go and investigate the embedded manifest!

Now the real problem is to track down my build instructions and see how I can tell the linker to remove that dependency.
« Last Edit: July 13, 2013, 08:39:47 pm by sledgehammer_999 »

sledgehammer_999

  • qBittorrent maintainer
  • Administrator
  • Forum addict
  • *****
  • Posts: 2406
  • Karma: +150/-2
    • View Profile
Re: qBittorrent System Requirements
« Reply #18 on: July 13, 2013, 11:33:37 pm »
Problem found. And Dayman was correct...

I was linking zlib dynamically against the vc2008 runtime and that made the linker to output a manifest which dependent on that runtime...

Anyway, problem fixed.

qRegret

  • Newbie
  • *
  • Posts: 7
  • Karma: +0/-0
    • View Profile
Re: qBittorrent System Requirements
« Reply #19 on: July 14, 2013, 12:53:41 am »
Quote from: sledgehammer_999
linking zlib dynamically against the vc2008 runtime

Hey sledge,
Just to be sure... does this mean that future versions of qBittorrent will not require the run time package to be installed on my old XP/2003 boxes?

sledgehammer_999

  • qBittorrent maintainer
  • Administrator
  • Forum addict
  • *****
  • Posts: 2406
  • Karma: +150/-2
    • View Profile
Re: qBittorrent System Requirements
« Reply #20 on: July 14, 2013, 01:29:40 am »
YES, the runtime won't be needed. I wish I had taken notice of this sooner. :S

qRegret

  • Newbie
  • *
  • Posts: 7
  • Karma: +0/-0
    • View Profile
Re: qBittorrent System Requirements
« Reply #21 on: July 14, 2013, 03:35:24 am »
Hey sledge,
I gotta admit that as a guy who

1. Still runs a decade old operating system by choice
2. Frequently refuses to upgrade software just because the new version has a higher number and
3. Passed over a smokin' hot chick just because her favourite PC game is Java dependent

... I frequently find myself at odds with developers.  I get pretty bent out of shape about bloatware and typically have a big mouth about it... I love to be first in line to ride someone's ass if I think they suck, and as such I have to be the first to commend someone when they don't suck.

I truly would expect most developers to tell me to "get over it and install the run time package like everyone else in the world".  Instead you jumped on the opportunity to keep qBittorrent free of external dependencies, and fixed it in about 48 hours.  qBittorrent runs pretty lean, and I think that speaks volumes about how you (and the other qBittorrent developers) treat the application.  I never paid for qBittorrent, and yet I find that your support of it exceeds what people would usually see from companies that are actually drawing a reasonable salary from their apps.

I tip my hat sir.

sledgehammer_999

  • qBittorrent maintainer
  • Administrator
  • Forum addict
  • *****
  • Posts: 2406
  • Karma: +150/-2
    • View Profile
Re: qBittorrent System Requirements
« Reply #22 on: July 14, 2013, 09:38:22 am »
Thank you.