> On Nov 6, 2017, at 2:21 PM, Jim Ingham via swift-users
> <[email protected]> wrote:
>
> This works for me (with Xcode 9.0):
>
> > git clone https://github.com/PerfectlySoft/PerfectTemplate.git
> <https://github.com/PerfectlySoft/PerfectTemplate.git> PT
> Cloning into 'PT'...
> remote: Counting objects: 214, done.
> remote: Total 214 (delta 0), reused 0 (delta 0), pack-reused 214
> Receiving objects: 100% (214/214), 48.65 KiB | 0 bytes/s, done.
> Resolving deltas: 100% (110/110), done.
> > cd PT
> > swift build
> <lots of output>
> > cd .build/debug
> > lldb PerfectTemplate
> (lldb) target create "PerfectTemplate"
> Current executable set to 'PerfectTemplate' (x86_64).
> (lldb) b s -l 71
You’ll have to say:
(lldb) br s -l 71
here.
Jim
> Breakpoint 1: where = PerfectTemplate`main + 2627 at main.swift:71, address =
> 0x0000000100436c33
> (lldb) run
> Process 26948 launched:
> '/private/tmp/PT/.build/x86_64-apple-macosx10.10/debug/PerfectTemplate'
> (x86_64)
> Process 26948 stopped
> * thread #1, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1
> frame #0: 0x0000000100436c33 PerfectTemplate`main at main.swift:71
> 68
> 69 do {
> 70 // Launch the servers based on the configuration data.
> -> 71 try HTTPServer.launch(configurationData: confData)
> ^
> 72 } catch {
> 73 fatalError("\(error)") // fatal error launching one of
> the servers
> 74 }
> Target 0: (PerfectTemplate) stopped.
> (lldb) expr confData.count
> (Int) $R1 = 1
>
> Do the same steps not work for you? If you were doing something different
> can you describe the steps you took?
>
> Jim
>
>> On Nov 6, 2017, at 2:10 PM, Fadi Botros <[email protected]
>> <mailto:[email protected]>> wrote:
>>
>> Also please noted
>> I think it is a SPM issue not an LLDB one
>> Because when compiled on the same mac with Xcode (Swift package manager
>> generate Xcode project), then use xcode-build
>> LLDB works perfectly in this circumstances
>>
>> I think you should refine the compilation script generated by SPM to
>> generate something like Xcode results (I think Xcode itself uses normal
>> Swift toolchain, I think it does nothing here more than generating a better
>> compilation/linking script)
>>
>>
>> من: Jim Ingham <[email protected] <mailto:[email protected]>>
>> إلى: Fadi Botros <[email protected] <mailto:[email protected]>>
>> نسخة كربونية: Michael Gottesman <[email protected]
>> <mailto:[email protected]>>; "[email protected]
>> <mailto:[email protected]>" <[email protected]
>> <mailto:[email protected]>>
>> تاريخ الإرسال: الإثنين 6 نوفمبر، 2017 11:45 م
>> الموضوع: Re: [swift-users] About Swift Package Manager and LLDB
>>
>> Swift doesn’t seem to be reporting whatever the error is, I just see:
>>
>> ((SwiftASTContext*)0x7f8c555c84a0)->GetModule('PerfectTemplate') -- failed
>> with no error
>>
>> That’s not very helpful. Again, I’ll probably need to make this happen
>> locally to see what went wrong. If you have a project that shows the issue
>> which you can make available, please file a bug with a description of how
>> you build and debug this app, I’ll take a look.
>>
>> Jim
>>
>>
>>> On Nov 6, 2017, at 12:56 PM, Fadi Botros <[email protected]
>>> <mailto:[email protected]>> wrote:
>>>
>>> OK
>>> Here is when captured "print self" log from the beginning
>>>
>>> Attached here is the full log file
>>> See the attachments
>>> من: Jim Ingham <[email protected] <mailto:[email protected]>>
>>> إلى: Fadi Botros <[email protected] <mailto:[email protected]>>
>>> نسخة كربونية: Michael Gottesman <[email protected]
>>> <mailto:[email protected]>>; "[email protected]
>>> <mailto:[email protected]>" <[email protected]
>>> <mailto:[email protected]>>
>>> تاريخ الإرسال: الإثنين 6 نوفمبر، 2017 10:15 م
>>> الموضوع: Re: [swift-users] About Swift Package Manager and LLDB
>>>
>>> The log for “print self” was unfortunately captured too late. Reading in
>>> the PerfectTemplate module had already failed, and so any subsequent
>>> attempt will just report it as failed. To get the complete error log for
>>> this, you need to put:
>>>
>>> log enable -f /tmp/lldb-type-log.txt lldb types
>>>
>>> in your ~/.lldbinit file and then start a fresh debugging session and
>>> capture the whole session.
>>>
>>> The failure from the REPL is because you have to tell the REPL where to
>>> look for other frameworks from which it might load modules. You can pass
>>> appropriate -I, -L and -F flags to the “swift” invocation too tell the
>>> compiler lldb’s using to implement the REPL where to look for this module.
>>>
>>> The example you gave seems to be a MacOS X example. The binary type was
>>> MachO etc. If this is just a small example that you are using to
>>> demonstrate the problem, can you file a PR with the swift bug reporter with
>>> this example and how you built/ran it and we can take a look here. That’s
>>> probably easier than trying to pass logs back and forth.
>>>
>>> Jim
>>>
>>>> On Nov 6, 2017, at 11:27 AM, Fadi Botros via swift-users
>>>> <[email protected] <mailto:[email protected]>> wrote:
>>>>
>>>> This happens when try to print(self)
>>>> Processing command: po print(self) HandleCommand, cmd_obj : 'expression'
>>>> Handl - Pastebin.com <https://pastebin.com/15b52C1x>
>>>>
>>>>
>>>> Processing command: po print(self) HandleCommand, cmd_obj : 'expressio...
>>>> <https://pastebin.com/15b52C1x>
>>>>
>>>>
>>>> This happens when REPL then try to "import PerfectTemplate"
>>>> == [UserExpression::Evaluate] Parsing expression import PerfectTemplate ==
>>>> Swif - Pastebin.com <https://pastebin.com/FsGgXa54>
>>>>
>>>>
>>>> == [UserExpression::Evaluate] Parsing expression import PerfectTemplate ==
>>>> ...
>>>> <https://pastebin.com/FsGgXa54>
>>>>
>>>>
>>>> Also the same problem happens in Kitura (even if only use packages that
>>>> depend on Swift 4)
>>>>
>>>> من: Michael Gottesman <[email protected] <mailto:[email protected]>>
>>>> إلى: Michael Gottesman <[email protected]
>>>> <mailto:[email protected]>>
>>>> نسخة كربونية: "[email protected] <mailto:[email protected]>"
>>>> <[email protected] <mailto:[email protected]>>; Fadi Botros
>>>> <[email protected] <mailto:[email protected]>>
>>>> تاريخ الإرسال: الإثنين 6 نوفمبر، 2017 7:01 م
>>>> الموضوع: Re: [swift-users] About Swift Package Manager and LLDB
>>>>
>>>> Or actually:
>>>>
>>>> https://github.com/apple/swift/blob/master/docs/DebuggingTheCompiler.rst#debugging-failures-in-lldb
>>>>
>>>> <https://github.com/apple/swift/blob/master/docs/DebuggingTheCompiler.rst#debugging-failures-in-lldb>
>>>>
>>>> I would just enable all of the logging and post it here or if the log is
>>>> very big put the log into a pastebin.
>>>>
>>>>> On Nov 6, 2017, at 8:59 AM, Michael Gottesman via swift-users
>>>>> <[email protected] <mailto:[email protected]>> wrote:
>>>>>
>>>>
>>>> I am not going to answer this fully (I forwarded it to the appropriate
>>>> people though). But to help them out, can you go to
>>>> ./docs/DebuggingTheCompiler and enable lldb logging and post the output
>>>> here?
>>>>
>>>> Michael
>>>>
>>>>> On Nov 6, 2017, at 8:43 AM, Fadi Botros via swift-users
>>>>> <[email protected] <mailto:[email protected]>> wrote:
>>>>>
>>>>> I'm interested in doing Web Application using Swift and promoting this to
>>>>> be a trend someday.
>>>>> But I couldn't find a way to debug web apps without using Xcode
>>>>> This is irrelevant because web applications are mainly on Linux, so what
>>>>> if we want to do remote debugging ?
>>>>>
>>>>> I tried using the SPM, and when I try to compile a Kitura or Perfect app
>>>>> then try to debug it, it gives me this
>>>>>
>>>>> (lldb) po print(self)
>>>>> warning: Swift error in module <moduleName>.
>>>>> Debug info from this module will be unavailable in the debugger.
>>>>>
>>>>> error: in auto-import:
>>>>> failed to get module '<SomeModuleName>' from AST context
>>>>>
>>>>> I'm using macOS Sierra (sorry didn't have time to upgrade), with Swift 4
>>>>> that comes with Xcode 9
>>>>> Also tried the same experiment on Xubuntu using Swift 4 debian package
>>>>> provided on swift.org <http://swift.org/> itself
>>>>>
>>>>> The only succeeded way is to generate an xcodeproj and compile it, this
>>>>> is irrelevant because it is only macOS, while servers are Linux.
>>>>> _______________________________________________
>>>>> swift-users mailing list
>>>>> [email protected] <mailto:[email protected]>
>>>>> https://lists.swift.org/mailman/listinfo/swift-users
>>>>> <https://lists.swift.org/mailman/listinfo/swift-users>
>>>>
>>>> _______________________________________________
>>>> swift-users mailing list
>>>> [email protected] <mailto:[email protected]>
>>>> https://lists.swift.org/mailman/listinfo/swift-users
>>>> <https://lists.swift.org/mailman/listinfo/swift-users>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> swift-users mailing list
>>>> [email protected] <mailto:[email protected]>
>>>> https://lists.swift.org/mailman/listinfo/swift-users
>>>> <https://lists.swift.org/mailman/listinfo/swift-users>
>>>
>>>
>>>
>>> <lldb-type-log.txt>
>>
>>
>>
>
> _______________________________________________
> swift-users mailing list
> [email protected]
> https://lists.swift.org/mailman/listinfo/swift-users
_______________________________________________
swift-users mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-users