WineHQ
Wine Forums

Board index » WineHQ » Wine Help




 Page 1 of 1 [ 8 posts ] 



 
Author Message
 Post Posted: Mon May 27, 2019 5:12 am 
Offline
Level 1
Level 1

Joined: Tue Jun 13, 2017 6:02 am
Posts: 6
Wine has a lot of optional dependencies to various libraries and tools (e.g. see all the optional dependencies of the Arch Linux package, and I believe that list is not even comprehensive). It seems many recommend installing simply all of them, because without those Windows applications might crash or misbehave, without clear indication what the problem is. Furthermore, the wiki here says to report bugs only when "Your system has all the libraries that Wine needs.".

So I was wondering how "optional" these dependencies are now. Which of them can safely be skipped without fearing that apps break? Which of those are required for bug reporting? I'd rather like to not install some larger things that I wouldn't otherwise need (like samba).


Top 
 Post Posted: Mon May 27, 2019 5:18 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2637
Location: Cambridge
z-s-e wrote:
...

So I was wondering how "optional" these dependencies are now. Which of them can safely be skipped without fearing that apps break? Which of those are required for bug reporting? I'd rather like to not install some larger things that I wouldn't otherwise need (like samba).


A quick look over the wine-staging-4.9 package leads to my cherry-picking the following very optional dependencies:

Code:
 
optdepends=(
...
  v4l-utils             lib32-v4l-utils # Can omit - webcam, digital camera capture support (recently was bumped to V4L2 - so might be more useful now!)
...
  gtk3                  lib32-gtk3 # Can omit - only required for broken Gtk3 widgets option (wine-staging only)
...
  libldap               lib32-libldap # Can omit - allows Windows applications access to directory services LDAP.
...
  sdl2                  lib32-sdl2 # Can omit - currently just used to supported joysticks and controllers via SDL2
  vkd3d                 lib32-vkd3d # Can omit - D3D12 support via Vulkan - very poor support for most games at present
  sane # can omit - only required for scanner support
  libgphoto2 # can omit? - required for digital camera support
  gsm # can omit? - GSM 06.10 codec support
  cups # can omit - but is required for printer support
  samba # can omit - typically only used directly by Microsoft products
  dosbox # can omit - used to support DOS games and applications

)

Please ask if you have a more specific question or application in mind...

As it standards, your question is largely meaningless...
Because you haven't stated what specific applications, you are trying run with Wine. :roll:

Bob


Top 
 Post Posted: Mon May 27, 2019 10:20 pm 
Offline
Level 4
Level 4

Joined: Mon Dec 25, 2017 12:11 pm
Posts: 215
Some games also use ntlm_auth for secure connections, so samba should be installed.


Top 
 Post Posted: Tue May 28, 2019 5:10 am 
Offline
Level 1
Level 1

Joined: Tue Jun 13, 2017 6:02 am
Posts: 6
Maybe I should clarify a bit more: Obviously, functionality provided by a dependency won't work without it. So without samba, I wouldn't expect some local netplay to work for some games, or without cups an application wouldn't find any printer. That much is clear.

What I wonder is: are there optional dependencies that can cause applications to crash or bug out when they are missing? One concrete example: Suppose I run an application that in principle can use a printer. Can it happen that the application does not even start up when cups is missing, even though I don't have any printer and never plan to use the print functionality of the application?

So in other words, which of the optional dependencies can impact/stop applications from working in general, and not just reduce functionality in the obvious way. At least I think this would be good to know.


Top 
 Post Posted: Tue May 28, 2019 10:33 am 
Offline
Level 4
Level 4

Joined: Mon Dec 25, 2017 12:11 pm
Posts: 215
@Bob
Code:
gsm-  library and tools to convert to/frm gsm audio format

So it might be needed.

@z-s-e
Nobody can be sure it’s very Application/game specific sometime I’ve gotten away with only providing libpng/libfreetype/libjpeg and that was all.
Sometimes I’ve needed literally everything to get something to function.

It’s not so cut and dry, if the developer didn’t anticipate printer support being broken on the system it could crash right away or crash when trying to access a printer.

A game could function without a required codec, some just plain crash or refuse to even start.
So as Bob said above the question is too broad meaning no single answer.


Top 
 Post Posted: Tue May 28, 2019 12:02 pm 
Offline
Level 1
Level 1

Joined: Tue Jun 13, 2017 6:02 am
Posts: 6
@Gcenx Well, but you gave me an answer, according to you every single missing optional dependency can cause applications to not work. If you are correct, that would be unfortunate...

I guess I probably should rather ask the Wine devs via Bugzilla directly or something, because this is a question about how Wine is implemented. E.g. if Wine has no cups on the host system, will it simply crash when the Windows application uses Windows printer APIs, or will it rather emulate a system that simply has no printers available (but the Windows API still technically functional).

For some dependencies, like libpng/libfreetype/libjpeg or codecs as you said, it is pretty clear that those cannot be "mocked out", so there it is obvious that not having those can cause problems for the whole application. But for example all those dependencies for special hardware or network support could in principle be handled in Wine such that it would just emulate a system without the corresponding hardware or network, and not just simply crash.


Top 
 Post Posted: Fri May 31, 2019 3:16 pm 
Offline
Level 7
Level 7
User avatar

Joined: Tue Nov 22, 2016 5:39 pm
Posts: 783
When it's optional, it's dynamic. Like, print an error message and act like this functionality is unsupported. At least that's why I found. You'll quickly see if your program needs that, but obviously, every missing dependency can break a program.


Top 
 Post Posted: Fri May 31, 2019 4:59 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2637
Location: Cambridge
@z-s-e

When testing specific (!!) applications you can run these with:
Code:
export WINEDEBUG=+loaddll,+module

- which will at least tell you, what Windows libraries the application is trying to load.

Bob


Top 
Display posts from previous:  Sort by  
 
 Page 1 of 1 [ 8 posts ] 




Board index » WineHQ » Wine Help


Who is online

Users browsing this forum: No registered users and 4 guests

 
 

 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: