install-name-tool

install_name_tool difference between -change and -id

青春壹個敷衍的年華 提交于 2019-12-05 11:48:25
I have been struggling with this concept for a while and I cannot really understand what the difference is between -change and -id .The man page states -id name Changes the shared library identification name of a dynamic shared library to name. If the Mach-O binary is not a dynamic shared library and the -id option is specified it is ignored. -change old new Changes the dependent shared library install name old to new in the specified Mach-O binary. More than one of these options can be specified. If the Mach-O binary does not contain the old install name in a specified -change option the

Python tk framework

烈酒焚心 提交于 2019-12-05 07:52:27
I have python code that generates the following error: objc[36554]: Class TKApplication is implemented in both /Library/Frameworks/Tk.framework/Versions/8.5/Tk and /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk. One of the two will be used. Which one is undefined. objc[36554]: Class TKMenu is implemented in both /Library/Frameworks/Tk.framework/Versions/8.5/Tk and /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk. One of the two will be used. Which one is undefined. objc[36554]: Class TKContentView is implemented in both /Library/Frameworks/Tk.framework/Versions/8.5/Tk and

install-name-tool does not add path to library when viewed through otool?

淺唱寂寞╮ 提交于 2019-12-04 15:16:24
I finished my mac app using Xcode and Qt. Now I would like to prepare it for deployment to other macs. Inorder to do that I utilized macdeployqt. I just created an app bundle with macdeployqt. However some of the libraries are missing. I attempted to follow [this][1] answer. Turns out I need to copy the missing dylib from my computer to the .app and then run install name tool. I have not gotten to the install-name tool yet as I am confused as to use -id or -change with it especially in my current scenario. Do I even need to use it ? Here is what I did so far. Step 1: Running macdeployqt - this

install_name_tool reporting malformed object

╄→гoц情女王★ 提交于 2019-12-04 10:40:20
问题 Everytime I try to use install_name_tool on my machine it reports the following install_name_tool: object: Abacate malformed object (unknown load command 4) I read that it could be an error when building the binary. In order to check I create the simplest hello world c++ program and try to change something using install_name_tool. Didn't work. What Am I doing wrong? Currently I have XCode 4.2 running Snow Leopard OS. 回答1: Apparently install_name_tool is not updated when XCode is updated. You

install_name_tool reporting malformed object

喜夏-厌秋 提交于 2019-12-03 06:32:27
Everytime I try to use install_name_tool on my machine it reports the following install_name_tool: object: Abacate malformed object (unknown load command 4) I read that it could be an error when building the binary. In order to check I create the simplest hello world c++ program and try to change something using install_name_tool. Didn't work. What Am I doing wrong? Currently I have XCode 4.2 running Snow Leopard OS. Maarten O. Apparently install_name_tool is not updated when XCode is updated. You need to install the Command Line Tools from XCode Preferences. See also install_name_tool on OS X

dylib @executable_path path issue in a plug-in bundle

北战南征 提交于 2019-11-30 05:02:58
I am developing a plug-in bundle , say MyPlugIn.bundle for an application , say BigApp.app . This bundle requires a dylib , say MyPlugIn.bundle/Contents/Resources/library.dylib . I have relocated paths for library.dylib, as I would have done for a simple application bundle: $ otool -L MyPlugIn.bundle/Contents/MacOS/MyPlugIn MyPlugIn.bundle/Contents/MacOS/MyPlugIn: @executable_path/../Resources/library.dylib (compatibility version 0.0.0, current version 0.0.0) [...] $ otool -L MyPlugIn.bundle/Contents/Resources/library.dylib MyPlugIn.bundle/Contents/Resources/library.dylib: @executable_path/..

How do I modify the install name of a .dylib at build time

末鹿安然 提交于 2019-11-29 04:31:41
I am building the google-gflags commandline flags library for C++ on Mac OS X (10.7.1). The build process is as such: $ ./configure --prefix=output $ make $ make install I'd like to change the install name of the generated shared library at build time and not use install_name_tool afterwards. By default, the install name of the generated shared library, libgflags.dylib , is the output path: $ otool -L ./output/libgflags.dylib $ ./output/libgflags.dylib: /tmp/gflags-1.5/output/lib/libgflags.0.dylib (compatibility version 2.0.0, current version 2.0.0) /usr/lib/libstdc++.6.dylib (compatibility

How can I change the filename of a shared library after building a program that depends on it?

故事扮演 提交于 2019-11-28 04:11:25
I have a program that depends on a shared library it expects to find deep inside a directory structure. I'd like to move that shared library out and into a better place. On OS X, this can be done with install_name_tool. I'm unable to find an equivalent for Linux. For reference, readelf -d myprogram spits out the following paraphrased output: Dynamic section at offset 0x1e9ed4 contains 30 entries: Tag Type Name/Value 0x00000001 (NEEDED) Shared library: [this/is/terrible/library.so] 0x00000001 (NEEDED) Shared library: [libGL.so.1] 0x00000001 (NEEDED) Shared library: [libGLU.so.1] 0x00000001

Why is install_name_tool and otool necessary for Mach-O libraries in Mac Os X?

匆匆过客 提交于 2019-11-27 17:10:40
I am developing a Cocoa Application using the latest version of Xcode 4, I want to link dynamic libraries to my project ( dylibs ). I read somewhere that adding the libraries in my project was not enough as I have to run install_name_tool and otool to make my project use the libraries that were bundled in my project. I have read the manual pages for install_name_tool , but I do not understand WHY I have to do this. How do libraries work? Especially interested in the part where the application and the libraries have paths that point to specific places in my machine, like /usr/local/lib

Why is install_name_tool and otool necessary for Mach-O libraries in Mac Os X?

只愿长相守 提交于 2019-11-26 18:56:07
问题 I am developing a Cocoa Application using the latest version of Xcode 4, I want to link dynamic libraries to my project ( dylibs ). I read somewhere that adding the libraries in my project was not enough as I have to run install_name_tool and otool to make my project use the libraries that were bundled in my project. I have read the manual pages for install_name_tool , but I do not understand WHY I have to do this. How do libraries work? Especially interested in the part where the application