Matt,

Indeed it's quite puzzling to me as well.

вт, 2 апр. 2019 г. в 11:33, Matt Chelen <[email protected]>:

> Manually including the contrib folder with a -I flag seems to have worked
> (other than the SDL_GetVersion function causing an undefined reference
> error), but I'm still confused as to why it didn't just work. The
> documentation basically states that the way I had it set up is a valid way
> to set up the contrib folder, whereas having to manually include the
> contrib folder says the opposite.
>
>
Could you tell me what the following command evaluates to in your terminal:

$ pkg-config sdl2 --cflags

I picked it up from here:

https://github.com/githwxi/ATS-Postiats-contrib/blob/master/contrib/SDL2/TEST/Makefile

Notice that in this makefile, CFLAGS are added to the C compiler so that it
can find SDL2. Maybe the makefile should also add an -I<directory of
contrib/>.

On Tue, Apr 2, 2019 at 4:23 AM Artyom Shalkhakov <
> [email protected]> wrote:
>
>> вт, 2 апр. 2019 г. в 11:19, Matt Chelen <[email protected]>:
>>
>>> I just realized now that the file referenced in the comment is the SATS
>>> file and that I had misread it, but it should hold that, if it can find the
>>> SATS file, which is simply in a different subdirectory of contrib/SDL2, it
>>> should be able to find the CATS file, unless I am mistaken about how this
>>> is supposed to be set up.
>>>
>>>
>> Well, the #includes in .cats files are resolved by the underlying C
>> compiler, hence I think the issue is somehow in the C compiler (maybe it
>> needs another -I flag or some such?)
>>
>>
>>> On Tue, Apr 2, 2019 at 4:13 AM Matt Chelen <[email protected]> wrote:
>>>
>>>> My contrib folder is in $PATSHOME/contrib. I've tried setting both the
>>>> $PATSCONTRIB environment variable to both $PATSHOME, which I think the
>>>> documentation said to do (it is entirely possible that I misunderstood the
>>>> phrasing), and $PATSHOME/contrib, both with the same result.
>>>>
>>>> The SDL2 folder is in the contrib folder. It's just cloned from the
>>>> GitHub repo and copied in there. The examples that I'm trying to build are
>>>> in $PATSHOME/contrib/SDL2/TEST and the actual bindings are in
>>>> $PATSHOME/contrib/SDL2/CATS/SDL.cats.
>>>>
>>>> Here's the relevant part of the generated C file, showing that it has
>>>> the correct path to the file in question in the comment.
>>>>
>>>> /*
>>>> /usr/local/lib/ats2-postiats-0.3.13/contrib/SDL2/SATS/SDL.sats:
>>>> 899(line=29, offs=1) -- 941(line=33, offs=3)
>>>> */
>>>>
>>>> //
>>>> #include "SDL2/CATS/SDL.cats"
>>>>
>>>> What it looks like (to me) is that it's just not resolving properly.
>>>> None of the prelude ATS files that are included before that point are
>>>> throwing errors. Just that one. Manually changing the location to
>>>> "contrib/SDL2/CATS/SDL.cats" allows patscc to get past the error, but I
>>>> then run into similar errors with the files that it includes. I'm just not
>>>> sure why it's not resolving properly. Adding contrib to the beginning is
>>>> required to get it to resolve even if I set $PATSCONTRIB to
>>>> $PATSHOME/contrib.
>>>>
>>>> Do you think it might work properly if I move $PATSCONTRIB somewhere
>>>> else or is something else going on?
>>>>
>>>> On Tuesday, April 2, 2019 at 3:07:05 AM UTC-4, Artyom Shalkhakov wrote:
>>>>>
>>>>> Hi Matt,
>>>>>
>>>>> On Monday, April 1, 2019 at 6:53:00 PM UTC+3, Matt Chelen wrote:
>>>>>>
>>>>>> I'm trying to get ATS-Contrib set up and I'm concerned that I don't
>>>>>> currently have it configured correctly. As per the documentation, I put 
>>>>>> the
>>>>>> "contrib" folder in $PATSHOME and set $PATSCONTRIB to $PATSHOME.
>>>>>>
>>>>>> The issue is that I tried compiling the SDL sample programs and,
>>>>>> while the ATS compiler compiles them just fine, I get errors like the
>>>>>> following from the resulting C source.
>>>>>>
>>>>>> $ make
>>>>>> "/usr/local/lib/ats2-postiats-0.3.13"/bin/patscc -I
>>>>>> "/usr/local/lib/ats2-postiats-0.3.13" -I
>>>>>> "/usr/local/lib/ats2-postiats-0.3.13"/ccomp/runtime  -D_GNU_SOURCE -I
>>>>>> /usr/include/SDL2 -D_REENTRANT  -o test00 test00.dats -L
>>>>>> "/usr/local/lib/ats2-postiats-0.3.13"/ccomp/atslib/lib -latslib -
>>>>>> lSDL2
>>>>>> test00_dats.c:82:10: fatal error: SDL2/CATS/SDL.cats: No such file or
>>>>>> directory
>>>>>>  #include "SDL2/CATS/SDL.cats"
>>>>>>           ^~~~~~~~~~~~~~~~~~~~
>>>>>> compilation terminated.
>>>>>> make: *** [Makefile:41: test00] Error 1
>>>>>>
>>>>>> The same thing happens if I set $PATSCONTRIB to $PATSHOME/contrib.
>>>>>> Did I set something up incorrectly? Is this a problem with the library? 
>>>>>> Is
>>>>>> this a Cygwin issue?
>>>>>>
>>>>>
>>>>> Could you check what is in those -I directories? In particular, where
>>>>> are the SDL2/CATS/SDL.cats files located, and what is your $PATSCONTRIB,
>>>>> does it have an SDL2 subdirectory?
>>>>>
>>>>>
>>>>>> Thanks in advance.
>>>>>>
>>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "ats-lang-users" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at https://groups.google.com/group/ats-lang-users.
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/ats-lang-users/be4dd68f-82f5-4292-8b62-762a69bfcf9a%40googlegroups.com
>>>> <https://groups.google.com/d/msgid/ats-lang-users/be4dd68f-82f5-4292-8b62-762a69bfcf9a%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>>
>>>
>>> --
>>> Matt Chelen
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "ats-lang-users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To post to this group, send email to [email protected].
>>> Visit this group at https://groups.google.com/group/ats-lang-users.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/ats-lang-users/CAFh2Mmrdax0v18is7_9KVWeWa7wyG3X_k7NmU_3FhjOzKvnd0Q%40mail.gmail.com
>>> <https://groups.google.com/d/msgid/ats-lang-users/CAFh2Mmrdax0v18is7_9KVWeWa7wyG3X_k7NmU_3FhjOzKvnd0Q%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>
>>
>> --
>> Cheers,
>> Artyom Shalkhakov
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "ats-lang-users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at https://groups.google.com/group/ats-lang-users.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/ats-lang-users/CAKO6%3DqiaTnM1KgXLrrftZPQFL5f94T%2BpTcOvQdgSigLA-xq5mg%40mail.gmail.com
>> <https://groups.google.com/d/msgid/ats-lang-users/CAKO6%3DqiaTnM1KgXLrrftZPQFL5f94T%2BpTcOvQdgSigLA-xq5mg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>
>
> --
> Matt Chelen
>
> --
> You received this message because you are subscribed to the Google Groups
> "ats-lang-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/ats-lang-users.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ats-lang-users/CAFh2Mmr-Rxj6N8t%3D0QANDUdXA_qmRhWPV-NrfhpdgHdn4Kt8fA%40mail.gmail.com
> <https://groups.google.com/d/msgid/ats-lang-users/CAFh2Mmr-Rxj6N8t%3D0QANDUdXA_qmRhWPV-NrfhpdgHdn4Kt8fA%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>


-- 
Cheers,
Artyom Shalkhakov

-- 
You received this message because you are subscribed to the Google Groups 
"ats-lang-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/ats-lang-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ats-lang-users/CAKO6%3DqgS9enS4qti_q%3D6KzHjJk41HWo0gC-UReaAXuyQgQxXOA%40mail.gmail.com.

Reply via email to