首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未加载macos库上的pymqi:@rpath/libmqic_r.dylib

未加载macos库上的pymqi:@rpath/libmqic_r.dylib
EN

Stack Overflow用户
提问于 2019-03-19 19:57:27
回答 1查看 577关注 0票数 1

我正在尝试在我的macbook上设置IBM MQ和pymqi。MQ是通过docker完成的,没有问题。我已经从https://developer.ibm.com/messaging/2019/02/05/ibm-mq-macos-toolkit-for-developers/安装了IBM MQ,并按照说明进行了操作。我用pip安装了pymqi,之后就没有问题了。

但是当简单地运行import pymqi时,我会得到

代码语言:javascript
复制
ImportError: dlopen(/Users/.../Library/Python/2.7/lib/python/site-packages/pymqi/pymqe.so, 2): Library not loaded: @rpath/libmqic_r.dylib

我已经在这上面试了一天了,尝试了各种方式的链接,复制,文件权限,设置环境变量等等。尽管这是一个相当常见的问题(至少看看谷歌的结果),但似乎没有什么建议。

libmqic_r.dylib在两个位置提供,包括/opt/mqm/lib64

otool的输出如下所示,我注意到它没有LC_RPATH,但我并不是真的理解它。我对python比较陌生。

代码语言:javascript
复制
libmqic_r.dylib:
Mach header
      magic cputype cpusubtype  caps    filetype ncmds sizeofcmds      flags
 0xfeedfacf 16777223          3  0x00           6    14        928 0x00100085
Load command 0
      cmd LC_SEGMENT_64
  cmdsize 312
  segname __TEXT
   vmaddr 0x0000000000000000
   vmsize 0x0000000000001000
  fileoff 0
 filesize 4096
  maxprot 0x00000007
 initprot 0x00000005
   nsects 3
    flags 0x0
Section
  sectname __text
   segname __TEXT
      addr 0x00000000000006d0
      size 0x000000000000088d
    offset 1744
     align 2^4 (16)
    reloff 0
    nreloc 0
     flags 0x80000400
 reserved1 0
 reserved2 0
Section
  sectname __cstring
   segname __TEXT
      addr 0x0000000000000f5d
      size 0x000000000000004d
    offset 3933
     align 2^0 (1)
    reloff 0
    nreloc 0
     flags 0x00000002
 reserved1 0
 reserved2 0
Section
  sectname __unwind_info
   segname __TEXT
      addr 0x0000000000000fac
      size 0x0000000000000048
    offset 4012
     align 2^2 (4)
    reloff 0
    nreloc 0
     flags 0x00000000
 reserved1 0
 reserved2 0
Load command 1
      cmd LC_SEGMENT_64
  cmdsize 152
  segname __DATA
   vmaddr 0x0000000000001000
   vmsize 0x0000000000001000
  fileoff 4096
 filesize 4096
  maxprot 0x00000007
 initprot 0x00000003
   nsects 1
    flags 0x0
Section
  sectname __got
   segname __DATA
      addr 0x0000000000001000
      size 0x0000000000000010
    offset 4096
     align 2^3 (8)
    reloff 0
    nreloc 0
     flags 0x00000006
 reserved1 0 (index into indirect symbol table)
 reserved2 0
Load command 2
      cmd LC_SEGMENT_64
  cmdsize 72
  segname __LINKEDIT
   vmaddr 0x0000000000002000
   vmsize 0x0000000000003000
  fileoff 8192
 filesize 8672
  maxprot 0x00000007
 initprot 0x00000001
   nsects 0
    flags 0x0
Load command 3
          cmd LC_ID_DYLIB
      cmdsize 48
         name @rpath/libmqic_r.dylib (offset 24)
   time stamp 1 Thu Jan  1 01:00:01 1970
      current version 0.0.0
compatibility version 0.0.0
Load command 4
            cmd LC_DYLD_INFO_ONLY
        cmdsize 48
     rebase_off 0
    rebase_size 0
       bind_off 8192
      bind_size 40
  weak_bind_off 0
 weak_bind_size 0
  lazy_bind_off 0
 lazy_bind_size 0
     export_off 8232
    export_size 1008
Load command 5
     cmd LC_SYMTAB
 cmdsize 24
  symoff 9312
   nsyms 352
  stroff 14952
 strsize 1912
Load command 6
            cmd LC_DYSYMTAB
        cmdsize 80
      ilocalsym 0
      nlocalsym 281
     iextdefsym 281
     nextdefsym 68
      iundefsym 349
      nundefsym 3
         tocoff 0
           ntoc 0
      modtaboff 0
        nmodtab 0
   extrefsymoff 0
    nextrefsyms 0
 indirectsymoff 14944
  nindirectsyms 2
      extreloff 0
        nextrel 0
      locreloff 0
        nlocrel 0
Load command 7
     cmd LC_UUID
 cmdsize 24
    uuid EDA21FCE-4BC7-39FC-A150-95D20DE313A6
Load command 8
      cmd LC_VERSION_MIN_MACOSX
  cmdsize 16
  version 10.13
      sdk 10.13
Load command 9
      cmd LC_SOURCE_VERSION
  cmdsize 16
  version 0.0
Load command 10
          cmd LC_LOAD_DYLIB
      cmdsize 48
         name @rpath/libmqe_r.dylib (offset 24)
   time stamp 2 Thu Jan  1 01:00:02 1970
      current version 0.0.0
compatibility version 0.0.0
Load command 11
          cmd LC_LOAD_DYLIB
      cmdsize 56
         name /usr/lib/libSystem.B.dylib (offset 24)
   time stamp 2 Thu Jan  1 01:00:02 1970
      current version 1252.50.4
compatibility version 1.0.0
Load command 12
      cmd LC_FUNCTION_STARTS
  cmdsize 16
  dataoff 9240
 datasize 72
Load command 13
      cmd LC_DATA_IN_CODE
  cmdsize 16
  dataoff 9312
 datasize 0
EN

回答 1

Stack Overflow用户

发布于 2019-03-19 20:08:46

IBM已经发布了一组用于MQ的开发模式,其中包括Python - https://github.com/ibm-messaging/mq-dev-patterns

我的理解是,大多数(我猜不是C#)都是在mac上测试过的,因为它们有mac设置说明- https://github.com/ibm-messaging/mq-dev-patterns/tree/master/Python

我怀疑你失踪了-

通过编辑/etc/ PATH,将/IBM-MQ-Toolkit-Mac-x64-9.1.1.0/bin和/IBM-MQ-Toolkit-Mac-x64-9.1.1.0/samp/bin添加到路径中

导出DYLD_LIBRARY_PATH = /IBM-MQ-Toolkit-Mac-x64-9.1.1.0/lib64

如果这是您第一次在mac上进行任何编码,那么您可能会缺少一个C编译器。您将需要安装Xcode。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55240523

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档