Uploaded image for project: 'Libmongocrypt'
  1. Libmongocrypt
  2. MONGOCRYPT-25

Unable to link against static libmongocrypt on OSX

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Works as Designed
    • Icon: Major - P3 Major - P3
    • None
    • None
    • None
    • None

    Description

      It seems like there are issues statically linking to libmongocrypt on OSX due to an inability to determine the architecture of the library. I get the following error message trying to link to it:

        c++ -bundle -undefined dynamic_lookup -Wl,-no_pie -Wl,-search_paths_first -mmacosx-version-min=10.7 -arch x86_64 -L./Release -stdlib=libc++  -o Release/mongocrypt.node Release/obj.target/mongocrypt/src/mongocrypt.o /Users/mbroadst/Development/mongo/libmongocrypt/bindings/node/deps/libmongocrypt/lib64/libmongocrypt-static.a
      ld: warning: ignoring file /Users/mbroadst/Development/mongo/libmongocrypt/bindings/node/deps/libmongocrypt/lib64/libmongocrypt-static.a, file was built for archive which is not the architecture being linked (x86_64): /Users/mbroadst/Development/mongo/libmongocrypt/bindings/node/deps/libmongocrypt/lib64/libmongocrypt-static.a
      

      the contents of the archive are:

      [mbroadst@gorgor node (node-bindings ✗)]$ ar -t deps/libmongocrypt/lib64/libmongocrypt-static.a
      /
      //
      /0
      /23
      /46
      /68
      /99
      /125
      /152
      /175
      /203
      /231
      /259
      /279
      /299
      /326
      /350
      /370
      /394
      /415
      /438
      mongocrypt.c.o/
      os_mutex.c.o/
      os_once.c.o/
      openssl.c.o/
      kms_b64.c.o/
      hexlify.c.o/
      /468
      /493
      kms_kv_list.c.o/
      kms_message.c.o/
      kms_request.c.o/
      /518
      /539
      /560
      /578
      sort.c.o/
      /603
      

      on linux things look as expected:

      mbroadst@simulated-cell:~/test/lib$ ar -t libmongocrypt-static.a 
      mongocrypt-binary.c.o
      mongocrypt-buffer.c.o
      mongocrypt-cache.c.o
      mongocrypt-cache-collinfo.c.o
      mongocrypt-cache-key.c.o
      mongocrypt-ciphertext.c.o
      mongocrypt-crypto.c.o
      mongocrypt-ctx-datakey.c.o
      mongocrypt-ctx-decrypt.c.o
      mongocrypt-ctx-encrypt.c.o
      mongocrypt-ctx.c.o
      mongocrypt-key.c.o
      mongocrypt-key-broker.c.o
      mongocrypt-kms-ctx.c.o
      mongocrypt-log.c.o
      mongocrypt-marking.c.o
      mongocrypt-opts.c.o
      mongocrypt-status.c.o
      mongocrypt-traverse-util.c.o
      mongocrypt.c.o
      os_mutex.c.o
      os_once.c.o
      openssl.c.o
      kms_b64.c.o
      hexlify.c.o
      kms_decrypt_request.c.o
      kms_encrypt_request.c.o
      kms_kv_list.c.o
      kms_message.c.o
      kms_request.c.o
      kms_request_opt.c.o
      kms_request_str.c.o
      kms_response.c.o
      kms_response_parser.c.o
      sort.c.o
      kms_crypto_openssl.c.o
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            matt.broadstone@mongodb.com Matt Broadstone
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: