Forums

Keep intermediate files not working?

General discussion about Cobra. Releases and general news will also be posted here.
Feel free to ask questions or just say "Hello".

Keep intermediate files not working?

Postby johannes.krampf » Thu Dec 16, 2010 2:28 pm

I wanted to have a look at the C# files generated by Cobra. I found the option --keep-intermediate-files:yes or short -kif, but I can't find the files. I looked both in the current directory and in /tmp. Where should I look?

File listing + compiler output:

Code: Select all
$ ls
hello.cobra
$ cobra -c -v:2 -kif hello.cobra
Cobra Command Line 2010-10-18 (svn-post-0.8.0)
Copyright (C) 2003-2010 by Cobra Language LLC.

OS Version:   Unix 2.6.36.0
CLR Platform: Mono
CLR Version:  2.0.50727.1433
Current Directory: /home/johkra/tmp/test-kif
Current Exe: /opt/cobra/Cobra-0.8.0-post/bin/cobra.exe
Option Dictionary:
    compile: true
    verbosity: 2
    keep-intermediate-files: true
    back-end: 'none'
    contracts: 'inline'
    correct-source: Set<of String>['none']
    debugging-tips: true
    embed-run-time: false
    include-asserts: true
    include-nil-checks: true
    include-tests: true
    include-traces: true
    native-compiler: 'auto'
    number: 'decimal'
    test-runner: 'Cobra.Lang.CobraCore.runAllTests'
    testify-results: 'r-testify'
Paths:
    hello.cobra
Phase: Binding Cobra run-time library
Referencing Cobra run-time
Adding reference to Cobra.Lang.dll
Phase: Reading libraries
Reading assembly:  mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
              at:  /usr/lib/mono/2.0/mscorlib.dll
Reading assembly:  System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
              at:  /usr/lib/mono/gac/System/2.0.0.0__b77a5c561934e089/System.dll
Final assembly reference list:
0. Cobra.Lang.dll
Loading reference: Cobra.Lang.dll
Reading assembly:  Cobra.Lang, Version=0.8.0.1, Culture=neutral, PublicKeyToken=0a4783a5c7c9616e
              at:  /opt/cobra/Cobra-0.8.0-post/bin/Cobra.Lang.dll
Phase: Parsing source code
Parsing hello.cobra
Phase: Binding use directives
Phase: Binding inheritance
Phase: Binding interface
Phase: Computing matching base members
Phase: Binding implementation
Phase: Identifying .main
Phase: Generating C# code
-native-compiler:auto ... Found /opt/cobra/Cobra-0.8.0-post/bin/Cobra.Sharp.2_8.dll
Phase: Compiling C# code
Compiling to produce hello.exe
/opt/cobra/Cobra-0.8.0-post/bin/Cobra.Sharp.2_8.dll ['-r:Cobra.Lang.dll', '-nologo', '-nowarn:0108,0162,0169,0183,0184,0219,0414,0429,1717,1718', '-main:MainWrapper', '-lib:/opt/cobra/Cobra-0.8.0-post/bin', '-out:hello.exe', 'hello.cobra.cs', 'MainWrapper.cobra.cs']
Keeping intermediate files.
Phase: Checking if a default number type should be suggested
Compilation succeeded
$ ls
hello.cobra  hello.exe
johannes.krampf
 
Posts: 11
Location: Suisse Romande

Re: Keep intermediate files not working?

Postby Charles » Fri Dec 17, 2010 2:56 am

Sorry, I broke that when I enhanced Cobra to load the back-end C# compiler as a .dll instead of invoking it as an external process. However, you can use the -native-compiler option, probably with /usr/bin/gmcs, which will cause -kif to work again.
Charles
 
Posts: 2515
Location: Los Angeles, CA

Re: Keep intermediate files not working?

Postby johannes.krampf » Fri Dec 17, 2010 4:13 am

Thank you, this works.
johannes.krampf
 
Posts: 11
Location: Suisse Romande


Return to Discussion

Who is online

Users browsing this forum: No registered users and 61 guests