I'm trying to run an accounting program on Linux via CrossOver and am having some success but one, important, feature seems to refuse to work. The situation is as follows:
This specific feature relies on a dll that is located in the install directory of the program (bapi.dll) and while I can confirm it is present there, it refuses to use it and simply says "Bapi.dll is missing". I've tried adding it to the DLL library (native) in the bottle config thingie and copied it to the win32 directory as well but both actions did not fix the issue.
Possibly you need to register the dll into the windows registry
using regsvr32 /s nameof.dll before the app can find it..
Cheers!
Hey Don, thanks for the speedy reply. I did try that in various places but I always get some error that the command is not recognized etc. Tried it in both the terminal and the crossover execute windows command thingie. Could you possibly give me a quick run-down? I seem to be either missing something or just doing it horribly wrong haha.
Perhaps the simplest resolve is to copy said dll file into
the bottle's drive_c/windows/system32 directory, and then using
the Crossover 'Run command' function (after first selecting the
bottle in question), just enter;;
regsvr32 bapi.dll
If the app still fails to load the dll, something else is going
wrong, but it's hard to say exactly what at this stage....
Perhaps the simplest resolve is to copy said dll file into
the bottle's drive_c/windows/system32 directory, and then using
the Crossover 'Run command' function (after first selecting the
bottle in question), just enter;;
regsvr32 bapi.dll
If the app still fails to load the dll, something else is going
wrong, but it's hard to say exactly what at this stage....
Cheers!
Hey Don,
Thanks for the reply. I just entered said command and did not get an error message when executing it, though the problem still occurs. This is one persistent little bugger. Thoughts?
When you get the log together, don't post it in this forum -- instead gzip
the resultant logfile and upload it here - use the password 4Fp76586fP to
login and upload the file -- possibly the debug channels to look at would
be +seh,+trace,+ntdll ...
err:module:load_builtin_dll failed to load .so lib for builtin L"WLDAP32.dll": libldap_r.so.2: kan gedeeld objectbestand niet openen: Bestand of map bestaatniet
err:module:import_dll Loading library WLDAP32.dll (which is needed by L"C:\Program Files\Loon2010\Bapi.dll") failed (error c000007a).
///
...as we can see here, it's trying to load the .dll in question (Bapi.dll) but that .dll itself has
a dependency on WLDAP32.dll -- as it appears to be loading the builtin version of wldap32.dll, that
itself relies on libldap_r.so.2 which apparently isn't present in your system's libraries...there's
probably two angles to try...;
Fix the libldap_r.so.2 dependency on your system, then the native wldap32.dll should load correctly...
Obtain a native version of wldap32.dll and copy that file into your bottle's ../drive_c/windows/system32 directory.
Then start the Wine Configuration GUI, click library tab, find (or enter) wldap32.dll into the list of libraries, then
highlight that entry -> Edit -> set the load order to native -> Ok, Apply, Ok.
Then retry the app - let us know how you get along...
err:module:load_builtin_dll failed to load .so lib for builtin
L"WLDAP32.dll": libldap_r.so.2: kan gedeeld objectbestand niet
openen: Bestand of map bestaatniet
err:module:import_dll Loading library WLDAP32.dll (which is needed
by L"C:\Program Files\Loon2010\Bapi.dll") failed (error
c000007a).
///
...as we can see here, it's trying to load the .dll in question
(Bapi.dll) but that .dll itself has
a dependency on WLDAP32.dll -- as it appears to be loading the
builtin version of wldap32.dll, that
itself relies on libldap_r.so.2 which apparently isn't present in
your system's libraries...there's
probably two angles to try...;
Fix the libldap_r.so.2 dependency on your system, then the native
wldap32.dll should load correctly...
Obtain a native version of wldap32.dll and copy that file into
your bottle's ../drive_c/windows/system32 directory.
Then start the Wine Configuration GUI, click library tab, find (or
enter) wldap32.dll into the list of libraries, then
highlight that entry -> Edit -> set the load order to native -> Ok,
Apply, Ok.
Then retry the app - let us know how you get along...
Cheers!
Hey Don,
I tried said suggestions but unfortunately, to no avail. I've tried adding hre wldap32.dll from a win xp installation and setting it as native but that didn't fix it. I then installed an RPM that supposedly would install the libldap_r.so.2 library, and tried again. Unfortunately, that too didn't work. I then removed the wldap32.dll from the wine config and restored the old one (thinking the libldap fix might work in combination with the old dll) but that too did not get rid of the error.
Would you like another log? And if so, with the old wldap32.dll or the new one, pulled from the windows box?
For sure....do a logfile of each situation (with & without the native dll) - name the logs
accordingly of course. Also, can you provide the output of ~/cxoffice/bin/cxdiag (or is you
installed into /opt, /opt/cxoffice/bin/cxdiag ...these may give some other pointers...
Thanks for your effort debugging this - much appreciated ;) You can upload said files to the
same location as before, same password.
Done, I just uploaded (roosrooslogs.tar.gz) it. The "olddll" log is the one with the old dll that was included with Crossover/WINE and the "nativedll" one is the log with the dll taken from a windows installation.
Np, thank YOU for your support=)
Folks like myself are only 'keystones' really - consider I don't have this
software, can't test it myself, nor anything else really - people like yourself
who do 'the hard yards' gathering info like this really do deserve thanks =)
...I have no idea -why- it isn't loading the native dll -- if you did the
library override stuff, by rights it -should- find it...bit strange...
As for loading the builtin version...looks like the openldap is cleared, but then...
///
err:module:load_builtin_dll failed to load .so lib for builtin L"WLDAP32.dll": libsasl.so.7: kan gedeeld objectbestand niet openen: Bestand of map bestaat niet
err:module:import_dll Loading library WLDAP32.dll (which is needed by L"C:\Program Files\Loon2010\Bapi.dll") failed (error c000007a).
///
So for native to to work, you'd need satisfy the libsasl.so.7 dependency.
Cheers!
edit: Ooops....I wanted the -output- of the cxdiag command, not the command itself ;)
/opt/cxoffice/bin/cxdiag
or such...it'll prattle on to stdout about things it doesn't find.
I'm killing one lib error after another at the moment but here's the cxdiag output in the meanwhile (I thought it was a log before, not an actual program haha).
[MissingLibCapi20]
"Level"="Suggest"
"Title"="Missing 32bit libcapi20.so.3 library"
"Description"="Provides support for some ISDN cards. Very few applications need this."
[MissingLibJack]
"Level"="Suggest"
"Title"="Missing 32bit libjack-0.100.0.so.0 library"
"Description"="This is needed if you want the Windows applications to send sound to a Jack sound server. If you already have Alsa or OSS, then you will not need it."
[MissingLibXml2]
"Level"="Recommend"
"Title"="Missing 32bit libxml2.so library"
"Description"="This library makes it possible for Windows applications read and write XML files."
[MissingLibXslt]
"Level"="Recommend"
"Title"="Missing 32bit libxslt.so library"
"Description"="This library lets Windows applications perform queries and transformations on XML files."
Coincidentally (this is the cxdiag before I went on to clearing missing library messages earlier today), it too mentions libldap_r.so.2. Should I fix everything that cxdiag says first? Also, I get a libldap_r_so.2 error in the log at the moment, complaining about an undefined symbol in the library. Thoughts?
Try to fix at least MissingLibLdap_r and MissingLibXml2 at a guess.
What distro are you using? Serach your distro's forums/package manager
for 32bit (ia-32) libs -- also, installing mainstream wine via your
package maanger often pulls in a lot of common deps CX needs...
I installed wine and found the library I needed in an RPM. I then downloaded the library and extracted the libs to /usr/libs/ but CXDIAG still complains about libldap_r.so.2.
I'm using Suse 11.2 (i586).
EDIT: NVM, I redownloaded the lib from another source, and it seems to work. I'll keep testing.
This whole issue....months old now...iirc was resolved in 9.1/9.2 (I
think)...
The fact it's complaining about a .so means it couldn't read the
library
header (at a guess)....what does the output of cxdiag --debug say
currently?
That's rather odd. Here's the debug:
libcapi20.so.3: cannot open shared object file: No such file or directory
[MissingLibCapi20]
"Level"="Suggest"
"Title"="Missing 32bit libcapi20.so.3 library"
"Description"="Provides support for some ISDN cards. Very few applications need this."
libjack-0.100.0.so.0: cannot open shared object file: No such file or directory
[MissingLibJack]
"Level"="Suggest"
"Title"="Missing 32bit libjack-0.100.0.so.0 library"
"Description"="This is needed if you want the Windows applications to send sound to a Jack sound server. If you already have Alsa or OSS, then you will not need it."
libxml2.so: cannot open shared object file: No such file or directory
[MissingLibXml2]
"Level"="Recommend"
"Title"="Missing 32bit libxml2.so library"
"Description"="This library makes it possible for Windows applications read and write XML files."
libxslt.so: cannot open shared object file: No such file or directory
[MissingLibXslt]
"Level"="Recommend"
"Title"="Missing 32bit libxslt.so library"
"Description"="This library lets Windows applications perform queries and transformations on XML files."
found libcrypto.so.0.9.8
found libssl.so.0.9.8
egrep 'hosts:.*mdns4' /etc/nsswitch.conf >/dev/null 2>&1 returned 256
XOpenDisplay failed
err:module:load_builtin_dll failed to load .so lib for builtin L"WLDAP32.dll": libcom_err.so.3: kan gedeeld objectbestand niet openen: Bestand of map bestaatniet
err:module:import_dll Loading library WLDAP32.dll (which is needed by L"C:\Program Files\Loon2010\Bapi.dll") failed (error c000007a).
///
Okay, we're trying to load the builtin version, but it's failing due to a missing libcom_err.so.3
(which I don't recall seeing before)...you will need satisfy this dependency - again, look in
your package manager for the appropriate target..
I satisfied that dependency but the stubborn little fool still does not want to work properly. It's giving me 2 errors in the log now, one about a missing libssl.so.3 and one about a missing .so. I'm hoping that the "missing .so" is just refering to "libssl.so.3" and not just some other, undefined, library that it can't load or whatever.
Openssl I thought was available for everything....that's a bit weird....
Cheers!
1
to 25
of 25
Please Note: This Forum is for non-application specific questions relating to installation/configuration of CrossOver. All application-specific posts to this Forum will be moved to their appropriate Compatibility Center Forum.
CrossOver Forums: the place to discuss running Windows applications on Mac and Linux
CodeWeavers or its third-party tools process personal data (e.g. browsing data or IP addresses) and use cookies or other identifiers, which are necessary for its functioning and required to achieve the purposes illustrated in our Privacy Policy. You accept the use of cookies or other identifiers by clicking the Acknowledge button.