No announcement yet.

HL2-Based GoldenEye: Source Gets Open-Sourced

  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    I forget to say that libldap (i386) must be installed (why? ), unless that, the mod will not launch and wine will complain:

    err:module:load_builtin_dll failed to load .so lib for builtin L"WLDAP32.dll": cannot open shared object file: No such file or directory
    err:module:import_dll Loading library WLDAP32.dll (which is needed by L"C:\\program files\\steam\\steamapps\\sourcemods\\gesource\\bin\\client.dll") failed (error c000007a).
    This is not a wine requirement neither a PlayOnLinux requirement, wine can run without that, but some Steam apps can’t. You can install “libldap-2.4-2:i386” on Debian.


    • #17
      Originally posted by illwieckz View Post
      I forget to say that libldap (i386) must be installed (why? )
      Read the error message you showed, it clearly shows that the client.dll of the application needs WLDAP32.dll. Now guess what's the easiest way to translate this Windows library to Linux. It might be by wrapping it to


      • #18
        Sorry, you don’t understand the meaning of my question , I could write:

        I forget to say that WLDAP32.dll must be installed (why? )
        Why Goldeneye: Source is an LDAP client?

        I'm not a regular Steam user so I may be missing something, but neither Steam nor the Source Engine require wldap32.dll (the built in Source SDK benchmark runs with Steam without this library), GE:S needs wldap32.dll but neither Steam.exe nor hl2.exe need it.


        • #19
          Originally posted by illwieckz View Post
          Why Goldeneye: Source is an LDAP client?
          Now this is a good question. My first guess was for some form of multiplayer or DRM, but I don't know the game. Your best bet would be to ask the developers. Anyway I cloned the git repo and searched for ldap/LDAP:
          $ grep -r -e ldap -e LDAP
          public/curl/curl.h:  CURLE_LDAP_CANNOT_BIND,        /* 38 */
          public/curl/curl.h:  CURLE_LDAP_SEARCH_FAILED,      /* 39 */
          public/curl/curl.h:  CURLE_LDAP_INVALID_URL,        /* 62 - Invalid LDAP URL */
          public/curl/curl.h:#define CURLPROTO_LDAP   (1<<7)
          public/curl/curl.h:#define CURLPROTO_LDAPS  (1<<8)
          Übereinstimmungen in Binärdatei lib/common/libcurl.lib.
          Übereinstimmungen in Binärdatei lib/common/linux32/libcurlssl.a.
          Übereinstimmungen in Binärdatei lib/common/linux32/libcurl.a.
          Übereinstimmungen in Binärdatei lib/common/linux32/libcrypto.a.
          Übereinstimmungen in Binärdatei thirdparty/python26/pcbuild/pcbuild.sdf.
          So it uses curl which depends on LDAP. Grepping the sources for curl gives a very large output but a quick overview showed it's used in files like ge_webrequest.cpp.