Its strange because with the checkout of libgit2 that I did yesterday I did
not have this messages. I was having some - type not found.

You should not take the compilation results as reference, since the
makefile will have all compile options set correctly, and probably it will
use GCC for compilation.
You should try to see what are the options that need to be passed to clang,
when compiling the header. Looking at the makefile can be a good starting
point.

I'll try to have a look at this, to identify the correct options.
On Apr 7, 2013 10:57 PM, "Max Leske" <maxle...@gmail.com> wrote:

> BTW: I see two errors from parsing: missing stddef.h and some problem with
> one header file. stddef.h is present on the system and since I built
> libgit2 myself I know there were no errors during the build. I attached the
> Transcript output.
>
>
>
> On 07.04.2013, at 22:32, Max Leske <maxle...@gmail.com> wrote:
>
> I'm not sure but this might be a VM problem. I found a segmentation fault
> (funny enough the VM didn't quit). I attached the crash report (cc'ing
> Esteban, maybe he knows what this is about).
>
> Max
>
> <crash.dmp>
>
>
>
> On 07.04.2013, at 21:31, Ciprian Teodorov <ciprian.teodo...@gmail.com>
> wrote:
>
>
>
>
> On Sun, Apr 7, 2013 at 9:17 PM, Max Leske <maxle...@gmail.com> wrote:
>
>> The replacement video is up now (vimeo.com/maxleske/talkffibindings).
>>
>>
>> On 07.04.2013, at 20:48, Ciprian Teodorov <ciprian.teodo...@gmail.com>
>> wrote:
>>
>>
>>
>>
>> On Sun, Apr 7, 2013 at 8:08 PM, Ciprian Teodorov <
>> ciprian.teodo...@gmail.com> wrote:
>>
>>>
>>>
>>>
>>> On Sun, Apr 7, 2013 at 7:53 PM, Max Leske <maxle...@gmail.com> wrote:
>>>
>>>>
>>>> On 07.04.2013, at 18:28, Ciprian Teodorov <ciprian.teodo...@gmail.com>
>>>> wrote:
>>>>
>>>> Hi Max,
>>>>
>>>> I've just integrated some of my latest changes into a new version 1.4
>>>> of TalkFFI. Amongst others it prints clang erros in the transcript.
>>>> On my libgit2 checkout there are some compilation errors.
>>>>
>>>>
>>>> I accidentally loaded your new version and ran it on libgit2. I haven't
>>>> done any analysis yet but I had to force quit the image since the
>>>> extraction was taking forever. With 1.3 it took only a few seconds (1 to 2
>>>> minutes tops for everything including compilation). I'm doing another run
>>>> now to see what happens.
>>>>
>>>> That's strange, on my side (macos 10.6.8, latest pharo2.0+vm) I get 7
>>> seconds with 1.3 and between 7-9 seconds with 1.4 (but that should be ok,
>>> printing in transcript is expected to take some time).
>>>
>>> you're still on linux I guess? i'll try to check that
>>>
>>
>> on linux I get between 3 and 7 seconds for both 1.3 and 1.4... Yeah and
>> these results do not include the compilation of the generated smalltalk...
>> but that shouldn't have changed much…
>>
>>
>> ubuntu 32 bit vm. Latest Pharo20. Generation works pretty much as
>> expected, but I've been letting the compilation (after hitting "accept" in
>> the changes browser) running for about 45 minutes and it's still not
>> finished. Looks like some kind of infinite loop but I can't interrupt.
>>
>> I checked vmstat to see if memory / swapping might be an issue but
>> there's more than enough memory available. I'll keep checking.
>>
>>
> That's strange because that step relies exclusively on the pharo change
> set installation.
> In my linux test i don't see any problems...
>
>>
>>>> I've moved the development version to this one, so if you want to try
>>>> it just do the typical:
>>>> Gofer it
>>>> smalltalkhubUser: 'CipT' project: 'TalkFFI';
>>>>  package: 'ConfigurationOfTalkFFI';
>>>> load.
>>>> (Smalltalk at: #ConfigurationOfTalkFFI) loadDevelopment.
>>>>
>>>> TalkFFIExamples libgit2Mapping
>>>>
>>>> version 1.4
>>>>
>>>>    - clang diagnostic messages on header loading
>>>>    - added the possibility to filter the functions in a headerFile
>>>>    using a user defined block
>>>>    - added option to check the function availability in a dynamic
>>>>    library specified during conversion.
>>>>    - added simple generator that pulls functions into type classes.
>>>>    Instance side, if the first function argument matches the type class. 
>>>> Class
>>>>    side of the return type, if the function's first argument does not match
>>>>    any known type class, but if the return type match a type class.
>>>>    - changed the NativeBoost generator so that instead of
>>>>    NBCharacterType * it generates NBExternalString, to facilitate string
>>>>    passing
>>>>    - fixed uniqueInstance issue
>>>>
>>>>
>>>>
>>>> On Sun, Apr 7, 2013 at 6:18 PM, Max Leske <maxle...@gmail.com> wrote:
>>>>
>>>>> Wow! This is embarrassing! I just noticed that the video on Vimeo is
>>>>> the wrong one (no wonder you kept talking about a premature ending…)! I'm
>>>>> replacing it right now.
>>>>>
>>>>> Sorry for that.
>>>>>
>>>>
>>>> Can't wait to see it ;)
>>>>
>>>>
>>>> Uploading… ;)
>>>>
>>>>
>>>>> Max
>>>>>
>>>>>
>>>>> On 06.04.2013, at 23:38, Max Leske <maxle...@gmail.com> wrote:
>>>>>
>>>>>
>>>>> On 06.04.2013, at 23:09, Ciprian Teodorov <ciprian.teodo...@gmail.com>
>>>>> wrote:
>>>>>
>>>>> Hi Max,
>>>>>
>>>>> your video is good, too bad that it stops prematurely.
>>>>>
>>>>> It helped me to spot a tiny issue with the libgit2 generation script.
>>>>> The C compile options ( '-D__STDC_CONSTANT_MACROS'
>>>>>  '-D__STDC_LIMIT_MACROS') that are present there are just a copy paste
>>>>> error, since when created that method I've modified the one I've used for
>>>>> generating llvm bindings (which really needs them).
>>>>>
>>>>>
>>>>> For libgit2 i don't now, I think they aren't needed. I've just tried
>>>>> on my machine with  options := {('-I' , includeDir fullName)}.
>>>>> and it seems to work
>>>>>
>>>>>
>>>>> I also think they're not necessary.
>>>>>
>>>>>
>>>>> Now libclang is the reason that in some cases we need such options.
>>>>> Since we use libclang to parse the header files we should make sure that 
>>>>> we
>>>>> pass it everything it needs to successfully process the header.
>>>>> So if anyone has a hard time generating bindings with talkffi for a
>>>>> library X, then a starting point might be to try understanding what are 
>>>>> the
>>>>> options needed by clang to compile the headers.
>>>>>
>>>>> In the future I plan to add some kind of script editor for writing the
>>>>> bindings, which will show the messages from libclang. so that in case of
>>>>> compilation error (due to missing options, or c syntax errors) we can see
>>>>> them in the image.
>>>>>
>>>>> About generating the bindings directly on a mac, I've done it using a
>>>>> hand compiled version of libclang configured with (../configure
>>>>> --enable-optimized --enable-jit --target=i686-apple-darwin10). So if
>>>>> you are willing to download libclang and compile it, maybe you don't need 
>>>>> a
>>>>> linux vm.
>>>>>
>>>>>
>>>>> Thanks for the explanations.
>>>>>
>>>>>
>>>>> Ok, that's it for now. Thanks again for the great video
>>>>>
>>>>>
>>>>> My pleasure :)
>>>>>
>>>>> Ciprian
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Sat, Apr 6, 2013 at 10:02 PM, Max Leske <maxle...@gmail.com> wrote:
>>>>>
>>>>>>
>>>>>> On 06.04.2013, at 20:21, Stefan Marr <smallt...@stefan-marr.de>
>>>>>> wrote:
>>>>>>
>>>>>> > Hi:
>>>>>> >
>>>>>> > On 06 Apr 2013, at 19:30, Max Leske wrote:
>>>>>> >
>>>>>> >> I recorded a new screencast with a short tutorial on how bindings
>>>>>> for libgit2 (or any other library for that matter) can be created using
>>>>>> TalkFFI.
>>>>>> >>
>>>>>> >> http://vimeo.com/maxleske/talkffibindings
>>>>>> >
>>>>>> > I skimmed through it. Looks good.
>>>>>> > But, I noticed that the video actually stops before generating the
>>>>>> bindings :)
>>>>>> > That makes it feel like there is something missing.
>>>>>>
>>>>>> Damn! Got me :) I realized that straight after I had hit stop.
>>>>>> Still, for me the hard part was the compilation and setup. I figured
>>>>>> out the bindings pritty quickly.
>>>>>>
>>>>>> Maybe I'll add short bit at the end tomorrow.
>>>>>>
>>>>>> Max
>>>>>>
>>>>>> >
>>>>>> > Best regards
>>>>>> > Stefan
>>>>>> >
>>>>>> >
>>>>>> >
>>>>>> > --
>>>>>> > Stefan Marr
>>>>>> > Software Languages Lab
>>>>>> > Vrije Universiteit Brussel
>>>>>> > Pleinlaan 2 / B-1050 Brussels / Belgium
>>>>>> > http://soft.vub.ac.be/~smarr
>>>>>> > Phone: +32 2 629 2974
>>>>>> > Fax:   +32 2 629 3525
>>>>>> >
>>>>>> >
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Dr. Ciprian TEODOROV
>>>>> Ingénieur Développement CAO
>>>>>
>>>>> tél : 06 08 54 73 48
>>>>> mail : ciprian.teodo...@gmail.com
>>>>> www.teodorov.ro
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Dr. Ciprian TEODOROV
>>>> Ingénieur Développement CAO
>>>>
>>>> tél : 06 08 54 73 48
>>>> mail : ciprian.teodo...@gmail.com
>>>> www.teodorov.ro
>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> Dr. Ciprian TEODOROV
>>> Ingénieur Développement CAO
>>>
>>> tél : 06 08 54 73 48
>>> mail : ciprian.teodo...@gmail.com
>>> www.teodorov.ro
>>>
>>
>>
>>
>> --
>> Dr. Ciprian TEODOROV
>> Ingénieur Développement CAO
>>
>> tél : 06 08 54 73 48
>> mail : ciprian.teodo...@gmail.com
>> www.teodorov.ro
>>
>>
>>
>
>
> --
> Dr. Ciprian TEODOROV
> Ingénieur Développement CAO
>
> tél : 06 08 54 73 48
> mail : ciprian.teodo...@gmail.com
> www.teodorov.ro
>
>
>
>
>

Reply via email to