问题标签 [dylib]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xcode - Xcode 一直在错误的路径上搜索 dylib
那是我的错误:
我做了一些研究并使用 install_name_tool 更改了 dylib 内的路径:
但是 Xcode 一直在 /usr/lib/ 中搜索它:
有没有办法在 Xcode 中设置这个???谢谢
编辑:该库不是 Xcode 项目。它使用 ./configure 构建;制作
xcode - OSX 框架链接问题
我正在为 OSX 10.6 开发一个私有框架,其中包括一些命令行工具以及一些 dylib。现在,dylib 需要相互链接,命令行工具需要链接 dylib。
命令行工具和 .dylibs 位于Resources
框架包内的文件夹中。我曾经install_name_tool
将所有路径更新为:
现在,所有 dylib 在应用程序使用时都可以正确加载,但运行时命令行工具会失败,dyld: Library not loaded
运行时如下所示:
现在,我来自 Windows 背景,如果 DLL 与应用程序位于同一文件夹中,加载程序会找到它们,但显然 OSX 会寻找完整路径。如何获取命令行工具以在同一文件夹中查找 dylib?
谢谢,J
c++ - 使用 Netbeans (linux/mac) 为 dylib 设置当前/兼容版本
根据标题,我该如何设置?此外,我如何自己设置版本?
感谢所有和最好的问候。
c - 如何在 Obj-C 应用程序中访问和使用 dylib?
我制作了一个包含以下代码的 dylib:
我已经编译了 dylib 并将其放在另一个项目中,但我似乎无法弄清楚如何从 dylib 制作一个 Test 对象并调用一些方法。
有人知道怎么做吗?
谢谢,
马特
objective-c - 从 dlsym() 返回值的函数?
我敢肯定,愚蠢的问题是一些不正确的语法。如何让 dlsym 使用返回值的函数?我在以下代码中收到错误“void* 到 LSError (*)() 的无效转换” - 试图编译 linux lightscribe 示例程序,希望我可以将它与 OSX dylib 链接起来(为什么地狱赢了'HP 没有发布实际的 Cocoa SDK 吗?LS 只存在了 6 年还是 7 年?):
xcode - 如何在 XCode 4 的 i386 应用程序的 dylib 中使用 Sqlite?这种方法确实适用于 iPhone 应用程序
在 XCode 4 的 i386 应用程序的 dylib 中使用 Sqlite
对于 iOS,我需要从目录中添加一个名为 libsqlite3.0.dylib 的文件:/Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols/usr/lib/
我有一种从 sqlite DB 的列中获取 MaxID 的方法。这在我制作的通用 iOS 应用程序中运行良好。我想将此代码移植到 Mac 应用程序 i386。
因为我找不到这样的 i386 dylib,所以我使用下载文件创建了一个:sqlite-autoconf-3070500.tar.gz
按照指示,我在 /usr/local/lib 中生成了 3 个文件
libsqlite3.a libsqlite3.la libsqlite3.dylib
在 XCode 中,我将 '/usr/local/lib' 添加到 Build Setting->Search Paths->Library Search Paths
我用过: export DYLD_LIBRARY_PATH=/usr/local/bin/:$DYLD_LIBRARY_PATH
当我取消注释 AppDelegate.m 中的 sqlite 代码时,我收到以下构建错误
ld /Users/appleuser/Library/Developer/Xcode/DerivedData/iHungryMacNonDoc-dakfnxxiwzxehygtwrboebgysgwc/Build/Products/Debug/iHungryMacNonDoc.app/Contents/MacOS/iHungryMacNonDoc 正常 i386 cd /Users/appleuser/Cocoa/iHungryMacNonDoc setenv MACOSX_DEPLOYMENT/TAR usr/bin/llvm-gcc-4.2 -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -L/Users/appleuser/Library/Developer/Xcode/DerivedData/iHungryMacNonDoc-dakfnxxiwzxehygtwrboebgysgwc/Build/Products/Debug -L /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk/usr/lib -L/Users/appleuser/Cocoa/iHungryMacNonDoc/../SqliteLib -L/Developer/Platforms/iPhoneSimulator.platform/Developer/ SDKs/iPhoneSimulator4.3。sdk/usr/lib -F/Users/appleuser/Library/Developer/Xcode/DerivedData/iHungryMacNonDoc-dakfnxxiwzxehygtwrboebgysgwc/Build/Products/Debug-filelist /Users/appleuser/Library/Developer/Xcode/DerivedData/iHungryMacNonDoc-dakfnxxiwzxehygtwrboebgysgwc///中间体/iHungryMacNonDoc.build/Debug/iHungryMacNonDoc.build/Objects-normal/i386/iHungryMacNonDoc.LinkFileList -mmacosx-version-min=10.6 -framework Cocoa -lsqlite3.0.8.6 -o /Users/appleuser/Library/Developer/Xcode /DerivedData/iHungryMacNonDoc-dakfnxxiwzxehygtwrboebgysgwc/Build/Products/Debug/iHungryMacNonDoc.app/Contents/MacOS/iHungryMacNonDoc6 -framework Cocoa -lsqlite3.0.8.6 -o /Users/appleuser/Library/Developer/Xcode/DerivedData/iHungryMacNonDoc-dakfnxxiwzxehygtwrboebgysgwc/Build/Products/Debug/iHungryMacNonDoc.app/Contents/MacOS/iHungryMacNonDoc6 -framework Cocoa -lsqlite3.0.8.6 -o /Users/appleuser/Library/Developer/Xcode/DerivedData/iHungryMacNonDoc-dakfnxxiwzxehygtwrboebgysgwc/Build/Products/Debug/iHungryMacNonDoc.app/Contents/MacOS/iHungryMacNonDoc
ld:找不到文件:/usr/lib/system/libdispatch_sim.dylib 用于架构 i386 collect2:ld 返回 1 退出状态命令 /Developer/usr/bin/llvm-gcc-4.2 失败,退出代码为 1
AppDelegate.h 开始 ///////////
导入“AppDelegate.h”
导入“IngredXML.h”
导入“XmlListReader.h”
导入“常量.h”
进口
进口
导入“/usr/include/sqlite3.h”
非常感谢您阅读本文。请指教。标记
c - 在 Xcode 4 项目中包含动态库
我为这个基本问题道歉。我一直在寻找一个简单的答案,但到目前为止我没有成功,所以我希望这对其他初学者程序员有所帮助。
我已经安装了 MacPorts,然后安装了我想要的外部库:ImageMagick
. 根据我的研究,我知道 MacPorts 将 dylibs 放在/opt/local/lib/
文件夹中:image。我也知道头文件位于/opt/local/include/ImageMagick/
文件夹中。
我想我会从一个示例程序开始,看看它是如何运行的。我创建了一个新项目,一个 C 命令行工具,然后将第一个示例复制到main.c
. 我现在想将 ImageMagick 库添加到我的项目中。
然后我如何将文件与我的 Xcode 项目链接,以便#include <wand/MagickWand.h>
工作?
static - 可以将我的静态库与 Xcode 中的动态库链接吗?
我目前正在创建一个静态库,其中包含我想提供给其他一些应用程序的功能。但是,我的静态库需要 libxml2.dylib 并且目前编译我的静态库失败,因为它无法访问 dylib。有没有办法将我的静态库与动态库链接?
macos - 为什么 jmpq 可以跳转到与 GDB 在 Mac OS X 上的提示不同的地址?
0x0000000149ab0d2c <+0000> jmpq *0x1e04b6(%rip) # 0x149c911e8
(gdb) p $rip $1 = (void (*)(void)) 0x149ab0d2c
(gdb) p $rip+6+0x1e04b6 $4 = (void (*)(void)) 0x149c911e8
stepi 之后:(它应该在 0x149c911e8,但是......)
(gdb) p $rip $5 = (void (*)(void)) 0x148c46d4a
顺便说一句,我的环境是 Mac OS X 10.6.4。该程序加载了 2 个 dylib,它们都链接到使用 -fPIC 选项编译的同一个静态库。这个问题混淆了 dylib 并使它们中的一个调用另一个函数,这是不应该的,因为它们实际上是相互独立的。
macos - OSX 加载 dylib Lua 模块
尝试在 OSX 上加载 Lua 模块时,我收到以下错误。
lua 解释器正在尝试加载 .so 文件而不是 .dylib 文件。我的印象是 .dylib 是 .so 的 OSX 等价物(略有变化)。所以我希望 Lua 解释器正在寻找一个 .dylib 文件。
我应该尝试在 OSX 上将我的库编译成 .so 吗?(如果是这样怎么办?)还是应该更改与 lua 解释器相关的内容?