Template:PT3 CSHARP LNX MONO: Difference between revisions
From Phidgets Support
(Created page with "<div class="phd-slide-deck" data-deck="PT3_CSHARP_LNX_MONO"> <div class="phd-slide-deck-header"><h3>Language - C#</h3></div> <div class="phd-slides"> <div class="phd-slide"> <...") |
No edit summary |
||
(4 intermediate revisions by the same user not shown) | |||
Line 21: | Line 21: | ||
<p>First, make sure you have the following installed:</p> | <p>First, make sure you have the following installed:</p> | ||
<p>● Phidgets Drivers for Linux | <p>● <span>[https://www.phidgets.com/docs/OS_-_Linux Phidgets Drivers for Linux]</span></p> | ||
<p>● Mono</p> | <p>● Mono</p> | ||
Line 28: | Line 28: | ||
<br /> | <br /> | ||
<p>You need our C development libraries in order to use Mono. You can install them with:</p> | |||
<div class="phd-command-line"><code>apt-get install libphidget22-dev</code></div> | |||
<p>If you don't already have Mono installed, you can get it with:</p> | <p>If you don't already have Mono installed, you can get it with:</p> | ||
<div class="phd-command-line"><code>apt-get install mono-complete</code></div> | <div class="phd-command-line"><code>apt-get install mono-complete</code></div> | ||
</div> | |||
<div class="phd-slide"> | |||
<h2>Setting UDev Rules</h2> | |||
<p> | |||
By default, Linux will not allow regular users to access physical hardware, as a security feature. This means that you must grant yourself root privileges via | |||
sudo to run Phidgets code. | |||
</p> | |||
<div class="phd-command-line"><code>sudo mono program.exe</code></div> | |||
<p> | |||
To avoid having to use sudo every time, you can set up a rules file to allow it automatically using the vendor code for Phidget USB devices. Create a text file | |||
called <b>99-libphidget22.rules</b> containing the following line: | |||
</p> | |||
<div class="phd-command-line"><code>SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="06c2", ATTRS{idProduct}=="00[3-a][0-f]", MODE="666"</code></div> | |||
<p> | |||
Mode 666 means every user has permission to read and write to the specified devices. Next, move this file to <b>/etc/udev/rules.d</b>. Now you can run code that | |||
uses Phidgets as a regular user without sudo. | |||
</p> | |||
</div> | </div> | ||
Line 63: | Line 90: | ||
Whether you are running our examples or adding Phidget functionality to an existing project, you'll need to configure your development environment to properly | Whether you are running our examples or adding Phidget functionality to an existing project, you'll need to configure your development environment to properly | ||
link the Phidget .NET library. | link the Phidget .NET library. | ||
</p> | |||
<p>The easiest way to allow Mono to access the Phidgets .NET library is to place a copy of the <b>Phidget22.NET dll</b> in the same folder as your program.</p> | |||
<p> | |||
First, determine which version of the .NET Framework your version of Mono implements by checking the | |||
<span>[https://www.mono-project.com/docs/about-mono/releases/ Mono Release Documentation]</span>. | |||
</p> | |||
<p> | |||
Next, download the <span>[https://www.phidgets.com/downloads/phidget22/libraries/windows/Phidget22-windevel.zip Phidget22 Development Libraries]</span>, which | |||
contain dlls for each .NET version. | |||
</p> | </p> | ||
<p> | <p> | ||
Navigate in the zip file to <b>/lib/dotnet/netXX</b> where 'XX' is your .NET Framework version (for example, net46 for .NET 4.6), and grab the Phidget22.NET.dll | |||
< | from that folder. | ||
</p> | </p> | ||
</div> | |||
<div class="phd-slide"> | |||
<h2>Setting up a New Project</h2> | |||
<p>Move the <b>Phidget22.NET.dll</b> you extracted into the same folder as your program.</p> | |||
<p>Your project directory should now look like this:</p> | <p>Your project directory should now look like this:</p> |