darlinghq / darling

Darwin/macOS emulation layer for Linux
http://www.darlinghq.org
GNU General Public License v3.0
11.53k stars 444 forks source link

The security submodule fails to build: 'dotMacTp.h' file not found #200

Closed ahyattdev closed 7 years ago

ahyattdev commented 7 years ago
git/darling/src/external/security/OSX/libsecurity_keychain/lib/CertificateRequest.cpp:33:10: fatal error: 
      'dotMacTp.h' file not found
#include <dotMacTp.h>

This is probably a known issue, but please make sure that the commit referenced for the security submodule allows Darling to build cleanly.

LubosD commented 7 years ago

Hmm, this actually isn't a known issue, it builds fine for me locally and on the build server.

The file in question should be made available by this line in CMakeLists.txt:

include_directories(${CMAKE_CURRENT_SOURCE_DIR}/OSX/libsecurity_dotmac_tp/lib)
ahyattdev commented 7 years ago

It turns out that since OSX/libsecurity_dotmac_tp is a submodule of src/external/security (also a submodule), it was never cloned when I ran git submodule update src/external/security.

This fixes dotMacTp.h not being found, but raises a new error.

[ 81%] Building CXX object src/external/security/OSX/libsecurity_keychain/lib/CMakeFiles/security_keychain.dir/SecAccess.o
In file included from darling/src/external/security/OSX/libsecurity_keychain/lib/SecAccess.cpp:29:
In file included from darling/src/external/security/include/security_keychain/Access.h:35:
In file included from darling/src/external/security/include/security_keychain/TrustedApplication.h:33:
In file included from darling/src/external/security/include/security_cdsa_utilities/acl_codesigning.h:42:
In file included from darling/src/external/security/include/security_cdsa_utilities/osxverifier.h:26:
In file included from darling/src/external/security/include/security_utilities/osxcode.h:26:
In file included from darling/src/external/security/OSX/libsecurity_keychain/lib/SecAccess.cpp:34:
darling/src/external/security/include/utilities/SecCFWrappers.h:362:10: fatal error: 
      'CommonNumerics/CommonCRC.h' file not found
#include <CommonNumerics/CommonCRC.h>
LubosD commented 7 years ago

That would mean you probably lack src/external/commoncrypto.

ahyattdev commented 7 years ago

Correct, not sure why it was that one.