Template:PT3 C LNX GCC: Difference between revisions

From Phidgets Support
(Created page with "<div class="phd-slide-deck" data-deck="PT3_C_LNX_GCC"> <div class="phd-slide-deck-header"><h3>Language - C</h3></div> <div class="phd-slides"> <div class="phd-slide"> <h2>Linu...")
 
No edit summary
Line 24: Line 24:
<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 (see Part 1 of this user guide)</p>
<p>● <span>[https://www.phidgets.com/docs/OS_-_Linux Phidgets Drivers for Linux]</span></p>


<p>● gcc</p>
<p>● gcc</p>
Line 33: Line 33:


<div class="phd-command-line"><code>apt-get install gcc</code></div>
<div class="phd-command-line"><code>apt-get install gcc</code></div>
</div>
<div class="phd-slide">
<h2>Setting UDev Rules (1 of 2)</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 ./HelloWorld</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.</p>
</div>
<div class="phd-slide">
<h2>Setting UDev Rules (2 of 2)</h2>
<p>To set the UDev rules, 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>



Revision as of 23:19, 13 December 2024

Linux with GCC

Welcome to using Phidgets with C! By using C, you will have access to the complete Phidget22 API, including events.

GCC is a compiler system for originally written for GNU, and is the standard compiler on unix-like operating systems. It is available on Windows by using tools like MinGW or Cygwin to allow compilation of C programs from the command line.

Requirements

First, make sure you have the following installed:

Phidgets Drivers for Linux

● gcc


You likely have gcc installed on your Linux machine already, but if not, you can easily get it by entering the following command in the terminal:

apt-get install gcc

Setting UDev Rules (1 of 2)

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.

sudo ./HelloWorld

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.

Setting UDev Rules (2 of 2)

To set the UDev rules, create a text file called 99-libphidget22.rules containing the following line:

SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="06c2", ATTRS{idProduct}=="00[3-a][0-f]", MODE="666"

Mode 666 means every user has permission to read and write to the specified devices. Next, move this file to /etc/udev/rules.d. Now you can run code that uses Phidgets as a regular user without sudo.

Finding Code Samples

To find the code sample to use for your Phidget, navigate to the Code Samples page and select your device from the drop-down menu.

Once you select your device, the code sample generator will give you a working code sample, and a selection of options to customize it to your needs.

Using the Code Samples

If it's unclear what any of the options do, click on the nearby '?' for more info.

Once you've made your selections, click the Download Example button under Downloads.

Compile and Run

To compile the program, enter the following command in the terminal, substituting "example" for the name of your C file:

gcc example.c -o example -lphidget22

After compiling, you can run the program by entering the following command in the terminal:

./example

Success! The project is now running with Phidgets.

What's Next?

Now that you've set up Phidgets in your C programming environment, you should read our guide on Phidget Programming Basics to learn the fundamentals of programming with Phidgets.

In particular, you should ensure that you familiarize yourself with how error handling is done in C, because it's not automatically implemented like in other programming languages. Once you've added error handling to your code, you can use the Error Code List to anticipate and handle various errors.

Continue down below for advanced information and troubleshooting for your device.

«
»