[lldb-dev] lldb is failing to start on OSX
Vince Harron
vharron at google.com
Sat May 9 17:12:02 PDT 2015
Hi Greg,
This is still a problem for me. I just did a clean checkout and build.
I'm unable to run lldb. This makes it very difficult to test my changes on
OSX. =)
REPRO STEPS:
vharron-macpro3:ll vharron$ mkdir fresh
vharron-macpro3:ll vharron$ cd fresh
vharron-macpro3:fresh vharron$ git clone http://llvm.org/git/lldb.git
Cloning into 'lldb'...
remote: Counting objects: 120337, done.
remote: Compressing objects: 100% (36468/36468), done.
remote: Total 120337 (delta 92692), reused 107965 (delta 82116)
Receiving objects: 100% (120337/120337), 30.90 MiB | 6.67 MiB/s, done.
Resolving deltas: 100% (92692/92692), done.
Checking connectivity... done.
vharron-macpro3:fresh vharron$ git clone http://llvm.org/git/lldb.git
Open ~/ll/fresh/lldb/lldb.xcworkspace
Select lldb-tool
Select Build
(wait for build to complete successfully)
vharron-macpro3:Debug vharron$ pwd
/Users/vharron/ll/fresh/lldb/DerivedData/lldb/Build/Products/Debug
vharron-macpro3:Debug vharron$ history|less
vharron-macpro3:Debug vharron$ otool -lv lldb | grep -A2 LC_RPATH
cmd LC_RPATH
cmdsize 32
path @loader_path (offset 12)
vharron-macpro3:Debug vharron$ ./lldb
dyld: Library not loaded: @rpath/LLDB.framework/LLDB
Referenced from:
/Users/vharron/ll/fresh/lldb/DerivedData/lldb/Build/Products/Debug/./lldb
Reason: image not found
Trace/BPT trap: 5
vharron-macpro3:Debug vharron$ echo $DYLD_FRAMEWORK_PATH
/Users/vharron/ll/fresh/lldb/DerivedData/lldb/Build/Products/Debug
vharron-macpro3:Debug vharron$ ls -l LLDB.framework/LLDB
lrwxr-xr-x 1 vharron eng 21 May 8 22:04 LLDB.framework/LLDB ->
Versions/Current/LLDB
vharron-macpro3:Debug vharron$ ls -l LLDB.framework/Versions/Current/LLDB
-rwxr-xr-x 1 vharron eng 72990060 May 8 22:04
LLDB.framework/Versions/Current/LLDB
vharron-macpro3:Debug vharron$ ls -l
total 873336
drwxr-xr-x 6 vharron eng 204 May 9 15:55 LLDB.framework
-rw-r--r-- 1 vharron eng 2806473 May 8 22:04 LLDBWrapPython.cpp
-rwxr-xr-x 1 vharron eng 43807600 May 8 22:04 argdumper
-rwxr-xr-x 1 vharron eng 49332 May 8 22:04 darwin-debug
-rwxr-xr-x 1 vharron eng 5595984 May 9 15:55 debugserver
-rw-r--r-- 1 vharron eng 353044136 May 8 22:04 liblldb-core.a
-rwxr-xr-x 1 vharron eng 147776 May 9 15:55 lldb
-rwxr-xr-x 1 vharron eng 41134240 May 9 15:55 lldb-server
-rw-r--r-- 1 vharron eng 538509 May 8 22:04 lldb.py
vharron-macpro3:Debug vharron$
On Wed, Feb 11, 2015 at 4:13 PM, Oleksiy Vyalov <ovyalov at google.com> wrote:
> It happens to me from time to time but I don't know exactly why - as a
> workaround, set DYLD_FRAMEWORK_PATH to your output build directory, e.g. export
> DYLD_FRAMEWORK_PATH=/Users/ovyalov/google/lldb/git/lldb/DerivedData/lldb/Build/Products/Debug
>
>
> On Wed, Feb 11, 2015 at 3:32 PM, Ryan Brown <ribrdb at google.com> wrote:
>
>> Did you ever figure this out? I'm getting the same thing after updating
>> my lldb sources and rebuilding:
>>
>> $
>> /Users/ribrdb/Documents/git/lldb/DerivedData/lldb/Build/Products/Debug/lldb
>> dyld: Library not loaded: @rpath/LLDB.framework/LLDB
>> Referenced from:
>> /Users/ribrdb/Documents/git/lldb/DerivedData/lldb/Build/Products/Debug/lldb
>> Reason: image not found
>> Trace/BPT trap: 5
>> $ otool -lv
>> /Users/ribrdb/Documents/git/lldb/DerivedData/lldb/Build/Products/Debug/lldb|grep
>> -A2 LC_RPATH
>> cmd LC_RPATH
>> cmdsize 32
>> path @loader_path (offset 12)
>> $ file
>> /Users/ribrdb/Documents/git/lldb/DerivedData/lldb/Build/Products/Debug/LLDB.framework/LLDB
>> /Users/ribrdb/Documents/git/lldb/DerivedData/lldb/Build/Products/Debug/LLDB.framework/LLDB:
>> Mach-O 64-bit dynamically linked shared library x86_64
>>
>>
>> On Mon Feb 02 2015 at 11:38:32 AM Greg Clayton <gclayton at apple.com>
>> wrote:
>>
>>> As long as you don't build the BuildAndIntegration build you should be
>>> good. Build the "Debug" or "Release" configurations and you should be good.
>>>
>>> To find out where the "lldb" binary will search for its @rpath binaries
>>> you can type:
>>>
>>> % otool -lv lldb | grep -A2 LC_RPATH
>>> cmd LC_RPATH
>>> cmdsize 32
>>> path @loader_path (offset 12)
>>>
>>> We see the path for a "Debug" configuration is to look in the current
>>> directory (@loader_path). If you look at the installed lldb:
>>>
>>> % otool -lv `xcrun -find lldb` | grep -A2 LC_RPATH | grep path
>>> path @loader_path/../../Library/PrivateFrameworks (offset 12)
>>> path @loader_path/../../../SharedFrameworks (offset 12)
>>> path @loader_path/../../System/Library/PrivateFrameworks
>>> (offset 12)
>>> path @loader_path/../../Library/PrivateFrameworks (offset 12)
>>>
>>> You can see it will look relative to the lldb binary (@loader_path) in a
>>> variety of different directories. This is how the BuildAndIntegration
>>> version is setup because you would install LLDB in a "bin" folder somewhere
>>> (like "/Applications/Xcode.app/Contents/Developer/usr/bin") and it will
>>> look for LLDB.framework and any other @rpath binaries using the paths
>>> mentioned in the LC_RPATH load commands of the executable.
>>>
>>> Greg
>>>
>>>
>>> > On Feb 2, 2015, at 9:29 AM, Oleksiy Vyalov <ovyalov at google.com> wrote:
>>> >
>>> > Hello,
>>> >
>>> > I'm facing some weird problems while trying to run lldb on OSX (10.9.5)
>>> > It was okay up until recently but now lldb is complaining about not
>>> found dependencies:
>>> >
>>> > ovyalov-macpro2:Debug ovyalov$ ./lldb
>>> > dyld: Library not loaded: @rpath/LLDB.framework/LLDB
>>> > Referenced from: /Users/ovyalov/google/lldb/
>>> git/lldb/DerivedData/lldb/Build/Products/Debug/./lldb
>>> > Reason: image not found
>>> > Trace/BPT trap: 5
>>> >
>>> > I'm running lldb binary from DerivedData/lldb/Build/Products/Debug
>>> directory. It started to fail for me yesterday and I'm wondering whether
>>> it's XCode or MacOS SDK updates.
>>> > However, if I set "Linking/Runpath search paths" option as
>>> ..../DerivedData/lldb/Build/Products/Debug then lldb is running without
>>> issues.
>>> >
>>> > Please advise what might be wrong here.
>>> > Thank you in advance.
>>> >
>>> >
>>> > --
>>> > Oleksiy Vyalov | Software Engineer | ovyalov at google.com
>>> > _______________________________________________
>>> > lldb-dev mailing list
>>> > lldb-dev at cs.uiuc.edu
>>> > http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>>>
>>>
>>> _______________________________________________
>>> lldb-dev mailing list
>>> lldb-dev at cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>>>
>>
>
>
> --
> Oleksiy Vyalov | Software Engineer | ovyalov at google.com
>
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>
>
--
Vince Harron | Technical Lead Manager | vharron at google.com | 858-442-0868
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20150509/34397339/attachment.html>
More information about the lldb-dev
mailing list