View Issue Details

IDProjectCategoryView StatusLast Update
0002516FreeCADBugpublic2018-08-26 15:21
ReporterNumOpenAssigned Tosgrogan1 
PrioritynoneSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
PlatformIntel 64-bitOSWindowsOS Version7
Product Version 
Target Version0.17Fixed in Version0.17 
Summary0002516: Microsoft Visual C++ 2013 is included in the setup package
DescriptionI installed FreeCAD version 0.16.6700 on Windows 7. The installer added Microsoft Visual C++ 2013.
I think you shouldn't add Microsoft DLL in the installer because you add a proprietary software in the free software package and because we have no choice to accept or not it. It's like with crapwares in installers.
It would be better that the installer tests if Microsoft Visual C++ 2013 is already installed and if not, DOWNLOAD it and then install it.
Tagsdistribution specific, Win

Activities

wmayer

2016-04-21 10:03

administrator   ~0006992

> I think you shouldn't add Microsoft DLL in the installer because you add a proprietary software in the free software package and because we have no choice to accept or not it. It's like with crapwares in installers.

But this installs the required runtime and without it FreeCAD won't even start and only gives a cryptic error message that 99% of the users won't understand. If the runtime is already installed then the included installer won't do anything.

> It would be better that the installer tests if Microsoft Visual C++ 2013 is already installed and if not, DOWNLOAD it and then install it.

That would be definitely worse because how would an average user know which re-distributable to install? There is one for every compiler version and also Win32 and Win64 architecture. So, it would quite difficult to find the right one.

The only thing that could be done is making an option to the installer where the user can switch it on or off.

NumOpen

2016-04-21 10:09

reporter   ~0006993

Last edited: 2016-04-21 10:29

View 3 revisions

That would be definitely worse because how would an average user know which re-distributable to install?
-> 1) You can explain it on your website, on the download page, with the necessary links toward VC++.
-> 2) The installer can test which version of VC++ is already installed and if necessary, download and install it automatically. The user will not have to do anything, the installation will be automatic as in the current solution but you will not add a proprietary software in the free software package. A lot of others free softwares do like that, with JAVA or VC++.

NumOpen

2016-04-21 10:26

reporter   ~0006994

And with this method, your package will be smaller and if VC++ is already installed, the users won't download it, it's more ecologic :)

wmayer

2016-04-22 17:09

administrator   ~0006996

https://kobyk.wordpress.com/2008/04/12/deploying-the-visual-c-libraries-with-an-nsis-installer/
http://stackoverflow.com/questions/12206314/detect-if-visual-c-redistributable-for-visual-studio-2012-is-installed

wmayer

2016-05-18 17:33

administrator   ~0007111

See also: http://forum.freecadweb.org/viewtopic.php?f=4&t=15786&p=125476#p125476

yorik

2016-05-29 01:39

administrator   ~0007122

> It would be better that the installer tests if Microsoft Visual C++ 2013 is already installed and if not, DOWNLOAD it and then install it.

It would also make FreeCAd uninstallable - or annoying to install - on machines without internet access, which is the case in a big part of the world.

I also think the best way would be to make this an untickable option in the installer...

NumOpen

2016-05-29 07:38

reporter   ~0007124

If you can download FreeCAD, you've got an access to internet and you can download MSVC++ too. You could add a message on FreeCAD download page, with a link toward MSVC++ download page.

I think it's not a good solution to include MSVC++ because you put proprietary software into a free software package and because we must download it even it's unnecessary. A good solution is to test if MSVC++ is already installed and if not, download and install it, like Shareaza, PHPServer, Hexchat, Handbrake... are doing.

yorik

2016-05-29 14:25

administrator   ~0007125

I know all this looks obvious for someone used to open-source software, but there are still a lot of countries where people are sharing software on usb keys, sometimes whole "packages" made by someone out there who might not read the full instructions on the website. If we did this we would certainly cause problems for many people outside the industrialized world.

NumOpen

2016-05-29 15:01

reporter   ~0007126

Last edited: 2016-05-29 15:02

View 2 revisions

If they can put and share FreeCAD on an USB key, they can do it with MSVC++ too, even if the two softwares are separated. They are enough intelligent outside the industrialized world to do it.

Kunda1

2017-07-12 12:45

administrator   ~0009738

@yorik fate of this ticket?

yorik

2017-07-12 15:46

administrator   ~0009740

Well I don't think any of us intends to do anything about it, so it might be best to close it as "won't fix"... However, as I suggested above, the visual c++ package could also be added to the install screen as an untickable option:

https://www.freecadweb.org/wiki/images/1/1b/Freecad-windows-install-03.jpg

But I never touched the windows installer, not sure what is involved or if it is a good idea or not.

Kunda1

2017-07-12 16:48

administrator   ~0009744

@sgrogan1 are you interested in tackling this ?
Specifically:
yorik wrote

the visual c++ package could also be added to the install screen as an untickable option:

sgrogan1

2017-07-12 22:10

developer   ~0009751

Last edited: 2017-07-12 22:11

View 2 revisions

@Kunda1 It's fine to assign this to me. It's a bit of a balancing act though. See Here: https://forum.freecadweb.org/viewtopic.php?f=8&t=14211
Maybe some warning text in the dialog that @yorik posted could work. FreeCAD doesn't run without the redistributable, so allowing 1% of users download it independently, means forcing 99% of users to do it manually. You can target for 0.17 release.

Kunda1

2017-09-26 15:17

administrator   ~0010195

@yorik what do you think?

yorik

2017-09-26 16:28

administrator   ~0010198

@Kunda1 I'm fine with what sgrogan says (add a warning text).

Kunda1

2017-09-27 12:09

administrator   ~0010200

@sgrogan1 what should the text read? And where in the source should it be added. I'll be happy to add it and submit a PR.

sgrogan1

2018-02-08 00:35

developer   ~0010932

@kunda1 can you target for 0.18?
I agree with wmayer more and more.
I think we could eventually have a warning that proprietary software will be installed continue or quit. On windows these are really the only options.
For 0.17 I will keep this from the developer builds
"These builds require https://www.microsoft.com/en-us/download/details.aspx?id=40784 If you've installed an x64 version before you most likely have it already. x86 (32-bit) users will need to install it." or the like.

Kunda1

2018-02-08 09:25

administrator   ~0010933

Targeted to 0.18 per @sgrogan1 request

wmayer

2018-03-14 12:28

administrator   ~0011039

https://github.com/FreeCAD/FreeCAD/commit/d45135e46c45e6989969b17fa5f7c6c1264a74b5

Installation of runtime libraries is now optional and off by default.

Issue History

Date Modified Username Field Change
2016-04-20 09:13 NumOpen New Issue
2016-04-21 10:03 wmayer Note Added: 0006992
2016-04-21 10:09 NumOpen Note Added: 0006993
2016-04-21 10:10 NumOpen Note Edited: 0006993 View Revisions
2016-04-21 10:26 NumOpen Note Added: 0006994
2016-04-21 10:29 NumOpen Note Edited: 0006993 View Revisions
2016-04-22 17:09 wmayer Note Added: 0006996
2016-05-18 17:33 wmayer Note Added: 0007111
2016-05-29 01:39 yorik Note Added: 0007122
2016-05-29 07:38 NumOpen Note Added: 0007124
2016-05-29 14:25 yorik Note Added: 0007125
2016-05-29 15:01 NumOpen Note Added: 0007126
2016-05-29 15:02 NumOpen Note Edited: 0007126 View Revisions
2016-05-30 13:09 wmayer Assigned To => sgrogan
2016-05-30 13:09 wmayer Status new => assigned
2017-03-02 18:07 Kunda1 Tag Attached: distribution specific
2017-03-02 18:07 Kunda1 Tag Attached: Win
2017-07-12 12:45 Kunda1 Note Added: 0009738
2017-07-12 12:46 Kunda1 Tag Attached: #pending
2017-07-12 15:46 yorik Note Added: 0009740
2017-07-12 16:48 Kunda1 Note Added: 0009744
2017-07-12 16:48 Kunda1 Assigned To sgrogan => sgrogan1
2017-07-12 22:10 sgrogan1 Note Added: 0009751
2017-07-12 22:11 sgrogan1 Note Edited: 0009751 View Revisions
2017-07-12 22:31 Kunda1 Target Version => 0.17
2017-09-26 15:17 Kunda1 Note Added: 0010195
2017-09-26 16:28 yorik Note Added: 0010198
2017-09-27 12:09 Kunda1 Note Added: 0010200
2018-02-08 00:35 sgrogan1 Note Added: 0010932
2018-02-08 09:01 wmayer Priority normal => none
2018-02-08 09:01 wmayer Target Version 0.17 =>
2018-02-08 09:25 Kunda1 Target Version => 0.18
2018-02-08 09:25 Kunda1 Note Added: 0010933
2018-03-14 12:28 wmayer Fixed in Version => 0.17
2018-03-14 12:28 wmayer Target Version 0.18 => 0.17
2018-03-14 12:28 wmayer Note Added: 0011039
2018-03-14 12:28 wmayer Status assigned => closed
2018-03-14 12:28 wmayer Resolution open => fixed
2018-08-26 15:21 Kunda1 Tag Detached: #pending