<div dir="ltr"><div>I'm not sure but I think -lhdi should be -lhid, since it's a human interface device library.</div><div>See <a href="https://docs.microsoft.com/en-us/windows-hardware/drivers/hid/introduction-to-hid-concepts">https://docs.microsoft.com/en-us/windows-hardware/drivers/hid/introduction-to-hid-concepts</a></div><div><br></div><div>Martin<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Feb 2, 2020 at 12:04 PM ffdd cchh <<a href="mailto:camarafede@gmail.com">camarafede@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi Martin, Christof,<div><br></div><div>thanks both. Still no luck.</div><div><br></div><div>I managed through steps a) b) and d), with the exception that I could not add "-lhdi", as it appears to not be installed here. Is that pointing to this: <a href="https://cran.r-project.org/web/packages/hdi/index.html" target="_blank">https://cran.r-project.org/web/packages/hdi/index.html</a> ? </div><div><br></div><div>The log now points to *many* undefined references on mostly hidio_windows.c and on hidio.c (which I suspect is my missing step c), for which I did not have time)</div><div><br></div><div>I attach the log here again.</div><div><br></div><div>I have hit a brick wall here so I will not pursue this further unless there are other instructions I can follow.</div><div><br></div><div>Thanks for you help,</div><div><br></div><div>Best,</div><div><br></div><div>fd</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jan 31, 2020 at 10:52 PM Christof Ressi <<a href="mailto:info@christofressi.com" target="_blank">info@christofressi.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  
    
  
  <div>
    <p>The order of .o files doesn't matter. It's shared and static
      libraries which sometimes have to be specified in a certain order.</p>
    <p>The actual problem was that</p>
    <p>a) hidio_windows.c used _WINDOWS instead of _WIN32 as a guard
      around the whole code, so hidio_windows.o was empty.</p>
    <p>b) then there was a wrong header (<ddk/hidsdi.h>  instead
      of <hidsdi.h>)</p>
    <p>c) some methods are not implemented, so I copied the dummy
      implementation from hidio_linux.c. It seems like those methods are
      only relevant for OSX.</p>
    <p>d) there were missing linker flags "-lhdi -lSetupAPI".</p>
    <p>Also, I couldn't get the autotools makefile to work, so I just
      compiled manually on the command line. Finally I got a binary :-)</p>
    <p>To be honest, I don't think that anyone ever compiled this code
      on Windows, so it is probably untested. Anyway, when I have time I
      can clean this up and make a PR (or just fork it). Then we
      probably need some testing before we upload it to Deken...<br>
    </p>
    <p>Christof<br>
    </p>
    <div>On 01.02.2020 02:50, Martin Peach
      wrote:<br>
    </div>
    <blockquote type="cite">
      
      <div dir="ltr">
        <div>Line 76 of the log:<br>
        </div>
        <div>gcc  -DPD -g -O2 -I/z/Desktop/pure-data/src  
          -mms-bitfields  -L/z/Desktop/pure-data/src
          -L/z/Desktop/pure-data/bin -L/z/Desktop/pure-data/obj   -s
          -shared -o hidio.dll hidio.o hidio_types.o   hidio_windows.o
           -L/src -L/bin -L/obj -lpd</div>
        hidio.o: In function `hidio_tick':<br>
        <div>Z:\Desktop\hidio/hidio.c:513: undefined reference to
          `hidio_get_events'</div>
        <div><br>
        </div>
        <div>hidio_tick is in hidio.o, which has compiled successfully.</div>
        <div>hidio_get_events is in hidio_windows.o, which also exists;
          but the linker is linking three .o files, and hidio_windows.o
          is the last one. <br>
        </div>
        <div>Perhaps switching hidio.o and hidio_windows.o in that gcc
          command will let the linker find the symbols before they are
          needed.</div>
        <div><br>
        </div>
        <div>Martin<br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
      </div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr" class="gmail_attr">On Fri, Jan 31, 2020 at 5:29
          PM ffdd cchh <<a href="mailto:camarafede@gmail.com" target="_blank">camarafede@gmail.com</a>> wrote:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
          <div dir="ltr">Hi Christof,
            <div><br>
            </div>
            <div>Thanks! Yes, I found these threads on the list:</div>
            <div><br>
            </div>
            <div><a href="https://lists.puredata.info/pipermail/pd-list/2019-11/126348.html" target="_blank">https://lists.puredata.info/pipermail/pd-list/2019-11/126348.html</a><br>
            </div>
            <div><a href="https://lists.puredata.info/pipermail/pd-list/2019-10/126096.html" target="_blank">https://lists.puredata.info/pipermail/pd-list/2019-10/126096.html</a><br>
            </div>
            <div><br>
            </div>
            <div>But, there are still no Windows version of this
              external... </div>
            <div><br>
            </div>
            <div>Github issue is up: <a href="https://github.com/Benitoite/hidio/issues/2" target="_blank">https://github.com/Benitoite/hidio/issues/2</a></div>
            <div><br>
            </div>
            <div>Hope something comes out of this thread! I am sure
              there are enough Windows users out there in need of some
              hid external.</div>
            <div><br>
            </div>
            <div>Best,</div>
            <div><br>
            </div>
            <div>f</div>
            <div><br>
            </div>
          </div>
          <br>
          <div class="gmail_quote">
            <div dir="ltr" class="gmail_attr">On Fri, Jan 31, 2020 at
              4:57 PM Christof Ressi <<a href="mailto:info@christofressi.com" target="_blank">info@christofressi.com</a>>
              wrote:<br>
            </div>
            <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
              <div>
                <p>I remember a similar thread on the list a few months
                  ago. I tried to compile it and gave up. The build
                  system for Windows seems to be broken and needs to be
                  fixed (and probably switched from automake to
                  pd-lib-builder). Unfortunately, I don't have time
                  right now to work on this, but you could file a bug
                  report on the GitHub repo, so maybe the maintainer
                  will do it.<br>
                </p>
                <p>Christof<br>
                </p>
                <div>On 31.01.2020 21:05, ffdd cchh wrote:<br>
                </div>
                <blockquote type="cite">
                  <div dir="ltr">Dear list, 
                    <div><br>
                    </div>
                    <div>I need to use external controllers via USB with
                      vanilla (say, a PS4 controller), and I have not
                      found a compiled version of [hidio] for Windows.
                      Please, let me know if there are ready-made
                      options out there (feel free to change subject
                      line if that thread goes wild).</div>
                    <div><br>
                    </div>
                    <div>In the meantime, I am trying to compile [hidio]
                      for Windows. I'm on Windows 10.0.18362, x64-based
                      PC. I am using a MSYS terminal with MINGw64. I
                      took the latest code from Benitoite's repository (<a href="https://github.com/Benitoite/hidio" target="_blank">https://github.com/Benitoite/hidio</a>)
                      and I am stuck with "undefined reference"s all
                      over. I attach here the console log. </div>
                    <div><br>
                    </div>
                    <div>I would very much welcome any idea on how to
                      approach this so I can use vanilla with my
                      students :)</div>
                    <div><br>
                    </div>
                    <div>Best,</div>
                    <div><br>
                    </div>
                    <div>f</div>
                    <div><br>
                    </div>
                  </div>
                  <br>
                  <fieldset></fieldset>
                  <pre>_______________________________________________
<a href="mailto:Pd-list@lists.iem.at" target="_blank">Pd-list@lists.iem.at</a> mailing list
UNSUBSCRIBE and account-management -> <a href="https://lists.puredata.info/listinfo/pd-list" target="_blank">https://lists.puredata.info/listinfo/pd-list</a>
</pre>
                </blockquote>
              </div>
              _______________________________________________<br>
              <a href="mailto:Pd-list@lists.iem.at" target="_blank">Pd-list@lists.iem.at</a> mailing
              list<br>
              UNSUBSCRIBE and account-management -> <a href="https://lists.puredata.info/listinfo/pd-list" rel="noreferrer" target="_blank">https://lists.puredata.info/listinfo/pd-list</a><br>
            </blockquote>
          </div>
          <br clear="all">
          <div><br>
          </div>
          -- <br>
          <div dir="ltr">
            <div dir="ltr">
              <div>
                <div dir="ltr"><a href="http://fdch.github.io" target="_blank">fdch.github.io</a></div>
              </div>
            </div>
          </div>
          _______________________________________________<br>
          <a href="mailto:Pd-list@lists.iem.at" target="_blank">Pd-list@lists.iem.at</a> mailing list<br>
          UNSUBSCRIBE and account-management -> <a href="https://lists.puredata.info/listinfo/pd-list" rel="noreferrer" target="_blank">https://lists.puredata.info/listinfo/pd-list</a><br>
        </blockquote>
      </div>
      <br>
      <fieldset></fieldset>
      <pre>_______________________________________________
<a href="mailto:Pd-list@lists.iem.at" target="_blank">Pd-list@lists.iem.at</a> mailing list
UNSUBSCRIBE and account-management -> <a href="https://lists.puredata.info/listinfo/pd-list" target="_blank">https://lists.puredata.info/listinfo/pd-list</a>
</pre>
    </blockquote>
  </div>

_______________________________________________<br>
<a href="mailto:Pd-list@lists.iem.at" target="_blank">Pd-list@lists.iem.at</a> mailing list<br>
UNSUBSCRIBE and account-management -> <a href="https://lists.puredata.info/listinfo/pd-list" rel="noreferrer" target="_blank">https://lists.puredata.info/listinfo/pd-list</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><div><div dir="ltr"><a href="http://fdch.github.io" target="_blank">fdch.github.io</a></div></div></div></div>
_______________________________________________<br>
<a href="mailto:Pd-list@lists.iem.at" target="_blank">Pd-list@lists.iem.at</a> mailing list<br>
UNSUBSCRIBE and account-management -> <a href="https://lists.puredata.info/listinfo/pd-list" rel="noreferrer" target="_blank">https://lists.puredata.info/listinfo/pd-list</a><br>
</blockquote></div>