I just saw in your review comment that this is using
LLVM_ENABLE_RUNTIMES and not LLVM_ENABLE_PROJECTS for libcxx, so the
failure just comes from us setting the wrong RPATH due to the
different runtimes library directory (at least from what I can see).
Would it be possible to put libcxx in LLVM_ENABLE_PROJECTS for now? I
think this shouldn't be too hard to fix (famous last words?).

Am Mo., 18. Okt. 2021 um 22:30 Uhr schrieb David Blaikie <dblai...@gmail.com>:
>
> On Mon, Oct 18, 2021 at 9:45 AM Raphael Isemann <teempe...@gmail.com> wrote:
>>
>> I think https://reviews.llvm.org/D111978 ,
>> https://reviews.llvm.org/D111981 and the other patches Pavel & me put
>> up today should improve this situation IIUC.
>
>
> Thanks Raphael - really appreciate you & looking into this!
>
> With https://reviews.llvm.org/D111981 I still seem to not have that cxx 
> dependency (building/running the test, then building libcxx, then running the 
> test again goes from unsupported -> failing) - didn't seem to work for me?
>
> The diagnostic improvement sounds good to me (pity about whatever limitations 
> it has re: remote or windows execution gathering the stdout). I guess 
> gathering the logs in the remote execution case has the same problem (that 
> the log is made on the remote machine/non-trivial to retrieve?)?
>
> & yeah, have you got any patches/ideas about how to make the libcxx tests use 
> the just-built libcxx library (using LD_LIBRARY_PATH, rpath, etc)? For now, 
> even with both these fixes I'll just be seeing (consistent, which is nice) 
> failures, rather than being able to run these tests successfully. I'll either 
> have to get used to ignoring certain failures, or disable the tests by not 
> building libcxx in that build tree, which would also be unfortunate. (or 
> maybe there's some other workarounds?) Any idea how this works for other 
> folks?
>
> - Dave
>
>> - Raphael
>>
>> Am Mo., 18. Okt. 2021 um 05:54 Uhr schrieb David Blaikie via lldb-dev
>> <lldb-dev@lists.llvm.org>:
>> >
>> > Wondering if anyone else has encountered/dealt with debugging lldb test 
>> > failures like the one shown at the end of this email ("AssertionError: 10 
>> > != 5" in "test.assertEqual(process.GetState(), lldb.eStateStopped)" while 
>> > checking that a breakpoint was reached)
>> >
>> > Is there anything that could be done to improve the debuggability of such 
>> > failures? Logging standard output/error from the lldb process or any other 
>> > logging it might have? At least for one of these I managed to figure it 
>> > out by running lldb directly on the binary and finding that the binary 
>> > couldn't find libc++.so (that's a story for another bug/email thread, 
>> > looks like maybe lldb libc++ pretty printer tests are using the system 
>> > installed libc++, not the just-built libc++ (& thus not running if there 
>> > is no system installed libc++)). But my current failure like this seems a 
>> > bit more inscrutible and I'm still looking into it.
>> >
>> > Looks like dotest.py has some sense of logging (it has a --log-success 
>> > option which says preserves the logs even on failure - though the output 
>> > of dotest.py, at least for me, has no mention of logs, log files, or where 
>> > they might be located, and looking at the source points to some sort of 
>> > ".log" files... ah, found some)
>> >
>> > So, yeah, there do seem to be some Failure.log, SkippedTest.log, etc - 
>> > should dotest print something about the paths to those files when it exits 
>> > with failure, maybe?
>> >
>> > ********************
>> >
>> > FAIL: lldb-api :: 
>> > functionalities/data-formatter/data-formatter-stl/libcxx/set/TestDataFormatterLibcxxSet.py
>> >  (23 of 23)
>> >
>> > ******************** TEST 'lldb-api :: 
>> > functionalities/data-formatter/data-formatter-stl/libcxx/set/TestDataFormatterLibcxxSet.py'
>> >  FAILED ********************
>> >
>> > Script:
>> >
>> > --
>> >
>> > /usr/bin/python3 
>> > /usr/local/google/home/blaikie/dev/llvm/src/lldb/test/API/dotest.py -u 
>> > CXXFLAGS -u CFLAGS --env ARCHIVER=/usr/bin/ar --env 
>> > OBJCOPY=/usr/bin/objcopy --env 
>> > LLVM_LIBS_DIR=/usr/local/google/home/blaikie/dev/llvm/build/release/./lib 
>> > --arch x86_64 --build-dir 
>> > /usr/local/google/home/blaikie/dev/llvm/build/release/lldb-test-build.noindex
>> >  --lldb-module-cache-dir 
>> > /usr/local/google/home/blaikie/dev/llvm/build/release/lldb-test-build.noindex/module-cache-lldb/lldb-api
>> >  --clang-module-cache-dir 
>> > /usr/local/google/home/blaikie/dev/llvm/build/release/lldb-test-build.noindex/module-cache-clang/lldb-api
>> >  --executable 
>> > /usr/local/google/home/blaikie/dev/llvm/build/release/./bin/lldb 
>> > --compiler 
>> > /usr/local/google/home/blaikie/dev/llvm/build/release/./bin/clang 
>> > --dsymutil 
>> > /usr/local/google/home/blaikie/dev/llvm/build/release/./bin/dsymutil 
>> > --llvm-tools-dir 
>> > /usr/local/google/home/blaikie/dev/llvm/build/release/./bin 
>> > --lldb-libs-dir 
>> > /usr/local/google/home/blaikie/dev/llvm/build/release/./lib 
>> > /usr/local/google/home/blaikie/dev/llvm/src/lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/set
>> >  -p TestDataFormatterLibcxxSet.py
>> >
>> > --
>> >
>> > Exit Code: 1
>> >
>> >
>> > Command Output (stdout):
>> >
>> > --
>> >
>> > lldb version 14.0.0 (g...@github.com:llvm/llvm-project.git revision 
>> > 6176fda3f992b5086302b3826aa0636135cc4cc0)
>> >
>> >   clang revision 6176fda3f992b5086302b3826aa0636135cc4cc0
>> >
>> >   llvm revision 6176fda3f992b5086302b3826aa0636135cc4cc0
>> >
>> > Skipping the following test categories: ['dsym', 'gmodules', 
>> > 'debugserver', 'objc']
>> >
>> >
>> > --
>> >
>> > Command Output (stderr):
>> >
>> > --
>> >
>> > UNSUPPORTED: LLDB 
>> > (/usr/local/google/home/blaikie/dev/llvm/build/release/bin/clang-x86_64) 
>> > :: test_ref_and_ptr_dsym 
>> > (TestDataFormatterLibcxxSet.LibcxxSetDataFormatterTestCase) (test case 
>> > does not fall in any category of interest for this run)
>> >
>> > FAIL: LLDB 
>> > (/usr/local/google/home/blaikie/dev/llvm/build/release/bin/clang-x86_64) 
>> > :: test_ref_and_ptr_dwarf 
>> > (TestDataFormatterLibcxxSet.LibcxxSetDataFormatterTestCase)
>> >
>> > FAIL: LLDB 
>> > (/usr/local/google/home/blaikie/dev/llvm/build/release/bin/clang-x86_64) 
>> > :: test_ref_and_ptr_dwo 
>> > (TestDataFormatterLibcxxSet.LibcxxSetDataFormatterTestCase)
>> >
>> > UNSUPPORTED: LLDB 
>> > (/usr/local/google/home/blaikie/dev/llvm/build/release/bin/clang-x86_64) 
>> > :: test_ref_and_ptr_gmodules 
>> > (TestDataFormatterLibcxxSet.LibcxxSetDataFormatterTestCase) (test case 
>> > does not fall in any category of interest for this run)
>> >
>> > UNSUPPORTED: LLDB 
>> > (/usr/local/google/home/blaikie/dev/llvm/build/release/bin/clang-x86_64) 
>> > :: test_with_run_command_dsym 
>> > (TestDataFormatterLibcxxSet.LibcxxSetDataFormatterTestCase) (test case 
>> > does not fall in any category of interest for this run)
>> >
>> > FAIL: LLDB 
>> > (/usr/local/google/home/blaikie/dev/llvm/build/release/bin/clang-x86_64) 
>> > :: test_with_run_command_dwarf 
>> > (TestDataFormatterLibcxxSet.LibcxxSetDataFormatterTestCase)
>> >
>> > FAIL: LLDB 
>> > (/usr/local/google/home/blaikie/dev/llvm/build/release/bin/clang-x86_64) 
>> > :: test_with_run_command_dwo 
>> > (TestDataFormatterLibcxxSet.LibcxxSetDataFormatterTestCase)
>> >
>> > UNSUPPORTED: LLDB 
>> > (/usr/local/google/home/blaikie/dev/llvm/build/release/bin/clang-x86_64) 
>> > :: test_with_run_command_gmodules 
>> > (TestDataFormatterLibcxxSet.LibcxxSetDataFormatterTestCase) (test case 
>> > does not fall in any category of interest for this run)
>> >
>> > ======================================================================
>> >
>> > FAIL: test_ref_and_ptr_dwarf 
>> > (TestDataFormatterLibcxxSet.LibcxxSetDataFormatterTestCase)
>> >
>> >    Test that the data formatters work on ref and ptr.
>> >
>> > ----------------------------------------------------------------------
>> >
>> > Traceback (most recent call last):
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/packages/Python/lldbsuite/test/lldbtest.py",
>> >  line 1823, in test_method
>> >
>> >     return attrvalue(self)
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/set/TestDataFormatterLibcxxSet.py",
>> >  line 128, in test_ref_and_ptr
>> >
>> >     (self.target, process, _, bkpt) = lldbutil.run_to_source_breakpoint(
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/packages/Python/lldbsuite/test/lldbutil.py",
>> >  line 970, in run_to_source_breakpoint
>> >
>> >     return run_to_breakpoint_do_run(test, target, breakpoint, launch_info,
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/packages/Python/lldbsuite/test/lldbutil.py",
>> >  line 892, in run_to_breakpoint_do_run
>> >
>> >     test.assertEqual(process.GetState(), lldb.eStateStopped)
>> >
>> > AssertionError: 10 != 5
>> >
>> > Config=x86_64-/usr/local/google/home/blaikie/dev/llvm/build/release/bin/clang
>> >
>> > ======================================================================
>> >
>> > FAIL: test_ref_and_ptr_dwo 
>> > (TestDataFormatterLibcxxSet.LibcxxSetDataFormatterTestCase)
>> >
>> >    Test that the data formatters work on ref and ptr.
>> >
>> > ----------------------------------------------------------------------
>> >
>> > Traceback (most recent call last):
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/packages/Python/lldbsuite/test/lldbtest.py",
>> >  line 1823, in test_method
>> >
>> >     return attrvalue(self)
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/set/TestDataFormatterLibcxxSet.py",
>> >  line 128, in test_ref_and_ptr
>> >
>> >     (self.target, process, _, bkpt) = lldbutil.run_to_source_breakpoint(
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/packages/Python/lldbsuite/test/lldbutil.py",
>> >  line 970, in run_to_source_breakpoint
>> >
>> >     return run_to_breakpoint_do_run(test, target, breakpoint, launch_info,
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/packages/Python/lldbsuite/test/lldbutil.py",
>> >  line 892, in run_to_breakpoint_do_run
>> >
>> >     test.assertEqual(process.GetState(), lldb.eStateStopped)
>> >
>> > AssertionError: 10 != 5
>> >
>> > Config=x86_64-/usr/local/google/home/blaikie/dev/llvm/build/release/bin/clang
>> >
>> > ======================================================================
>> >
>> > FAIL: test_with_run_command_dwarf 
>> > (TestDataFormatterLibcxxSet.LibcxxSetDataFormatterTestCase)
>> >
>> >    Test that that file and class static variables display correctly.
>> >
>> > ----------------------------------------------------------------------
>> >
>> > Traceback (most recent call last):
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/packages/Python/lldbsuite/test/lldbtest.py",
>> >  line 1823, in test_method
>> >
>> >     return attrvalue(self)
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/set/TestDataFormatterLibcxxSet.py",
>> >  line 49, in test_with_run_command
>> >
>> >     (self.target, process, _, bkpt) = lldbutil.run_to_source_breakpoint(
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/packages/Python/lldbsuite/test/lldbutil.py",
>> >  line 970, in run_to_source_breakpoint
>> >
>> >     return run_to_breakpoint_do_run(test, target, breakpoint, launch_info,
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/packages/Python/lldbsuite/test/lldbutil.py",
>> >  line 892, in run_to_breakpoint_do_run
>> >
>> >     test.assertEqual(process.GetState(), lldb.eStateStopped)
>> >
>> > AssertionError: 10 != 5
>> >
>> > Config=x86_64-/usr/local/google/home/blaikie/dev/llvm/build/release/bin/clang
>> >
>> > ======================================================================
>> >
>> > FAIL: test_with_run_command_dwo 
>> > (TestDataFormatterLibcxxSet.LibcxxSetDataFormatterTestCase)
>> >
>> >    Test that that file and class static variables display correctly.
>> >
>> > ----------------------------------------------------------------------
>> >
>> > Traceback (most recent call last):
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/packages/Python/lldbsuite/test/lldbtest.py",
>> >  line 1823, in test_method
>> >
>> >     return attrvalue(self)
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/set/TestDataFormatterLibcxxSet.py",
>> >  line 49, in test_with_run_command
>> >
>> >     (self.target, process, _, bkpt) = lldbutil.run_to_source_breakpoint(
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/packages/Python/lldbsuite/test/lldbutil.py",
>> >  line 970, in run_to_source_breakpoint
>> >
>> >     return run_to_breakpoint_do_run(test, target, breakpoint, launch_info,
>> >
>> >   File 
>> > "/usr/local/google/home/blaikie/dev/llvm/src/lldb/packages/Python/lldbsuite/test/lldbutil.py",
>> >  line 892, in run_to_breakpoint_do_run
>> >
>> >     test.assertEqual(process.GetState(), lldb.eStateStopped)
>> >
>> > AssertionError: 10 != 5
>> >
>> > Config=x86_64-/usr/local/google/home/blaikie/dev/llvm/build/release/bin/clang
>> >
>> > ----------------------------------------------------------------------
>> >
>> > Ran 8 tests in 3.035s
>> >
>> >
>> > RESULT: FAILED (0 passes, 4 failures, 0 errors, 4 skipped, 0 expected 
>> > failures, 0 unexpected successes)
>> >
>> >
>> > _______________________________________________
>> > lldb-dev mailing list
>> > lldb-dev@lists.llvm.org
>> > https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
_______________________________________________
lldb-dev mailing list
lldb-dev@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev

Reply via email to