Eclipse CDT pkg-config addon not detecting gtk3 on fedora - c

I searched a lot, and I cant find anyone on the internet with the problem I have.
I always used Eclipse with pkg-config addon installed. On Ubuntu based distributions, like Xubuntu, Mint, Voyager. Always the thing to do was download Eclipse from www.eclipse.org, install gtk+3.0-dev, then in eclipse download the pkg-config plugin, and everything worked perfect.
Now I had to migrate to Fedora 23, because it had better wifi drivers for my notebook.
Anyway,I downloaded Eclipse Mars.2 for c/c++, installed gtk3-devel package, and then pkg-config from https://raw.githubusercontent.com/TuononenP/pkg-config.p2/master/site.xml
but it is not detected by the plugin in eclipse.
I always enter
Project Properties | C/C++ Build | Settings | Pkg-config
Cairo, glib, pango, etc, everything is listed, except for gtk3 :(
I dont know what else to do, I reinstalled several times the gtk3-devel package with sudo dnf install, no fixing.
I installed eclipse with sudo dnf install eclipse-cdt , same problems.
One curious thing is that if I import to eclipse an old project that I did with gtk+3, it compiles and runs perfectly :/

this is a problem with /usr/lib64/pkgconfig/libgdiplus.pc
that causes ... "pkg-config --list-all" to end premiturely (before listing gtk-3.0 etc)
$ pkg-config --list-all |grep gtk
Variable 'libjpeg_prefix' not defined in '/usr/lib64/pkgconfig/libgdiplus.pc'
As a workaround add
libjpeg_prefix=/usr
to /usr/lib64/pkgconfig/libgdiplus.pc

Related

How to setup a C development environment on Linux for GTK+?

I'm new to programming C in Linux. I like to make GUIs with GTKlibs. The only problem is that im unable - and not only with gtk - to install these packages correctly. I have problem to include the librarys like #include<gtk/gtk.h> if I have installed it with sudo apt-get install gtklib-3-dev.
On compile time it sais everytime that the file is missing and so on. I have read the option to put dpkg configs and cflags to the compiler, but that doesn`t work either. How linux is managing the include folder and why do libs like gtk have an upperfolder with the version on it like gtk3 etc.. This is the problem that leads to missing files.
The exact package name depends on your Linux distribution. If you're using Ubuntu, then the right command is:
sudo apt-get install libgtk-3-dev
You may then check if the development packages are detected with something like:
pkg-config --exists gtk+-3.0 && echo "Installed" || echo "Not installed"
To learn how to build your application, follow the instructions of the official documentation on How to compile GTK+ applications.
Finally, instead of doing the gcc calls manualy, you can automate them by using a build system like the Meson build system. There's a tutorial on how to build a simple GTK+ application with Meson.

Xcode cannot find installed library

I am using Mac OS X 10.8 with Xcode. I have installed the jansson library, with the following commands:
./configure
make
make check
sudo make install
Everything went fine and the library installed correctly. I have created a smple .c file with a text editor and tried to include the <jansson.h> file. I builded everything and it gave no errors, meaning that the library is installed on my system.
Now, Xcode doesn't find the library at all, saying that <jansson.h> is not found. I have tried to restart my Mac, but nothing happens. If anyone knows a possible solution, I will be grateful. Thanks!
I resolved the issue, by going under Build phases, and searching for HEADER_SEARCH_PATH. Then I changed the search path label with /usr/local/include, where the library was installed.

(Mac OSX) Adding libraries to C -specifically gnuplot

I am a begineer trying to get code in C. I am working on a Mac and using xcode. My only past experience has been with java using eclipse and everything was pretty straight forward. I have almost no experience with terminal.
I am required to learn a bit of C for a project I will be working on and the learning of syntax is coming along okay, but I am at a point where I need to include some libraries in my c program. Specifically I am attempting to make plots with gnuplots.
I have downloaded gnuplot-4.6.3 from their repository and I do not even know how to install the files. I have been looking around and have tried using terminal to use the ./configure command when I am in the gnuplot-4.6.3 directory. But I really don't know what I am doing so I don't even know where to go next or what to do next.
Sorry if this is so trivial, I honestly just have never done this before and I cannot find a good tutorial on what to do.
Thanks for any help you can offer.
I would recommend using MacPorts for installing third-party tools and libraries. It knows the dependencies required and will install them as part of the installation.
Download it from macports.org.
Install it, and allow it to modify your ~/.profile so that /opt/local/bin is in your $PATH (any issue then just do export PATH=/opt/local/bin:$PATH from the command line).
sudo port selfupdate
sudo port install gnuplot
Now that will install the library into /opt/local/lib with the include files in /opt/local/include, so now just add that library to your Xcode project. Select the target and in the Build Phases tab open up the Link Binary With Libraries and press the + button and select Add Other. Now find /opt/local/lib/libgnuplot.a (I am assuming that's what it's called; I don't have it installed my self):
Now add /opt/local/include to your Header Search Paths so the compiler can find the gnuplot header files. Select the target and in Build Setting type in "header search" in the search box. Now double-click on the Header Search Path in the target column (or the project column to the right) and add /opt/local/include:
It's fine! You're learning then! Keep up! When I hit this kind of problem you may want to learn about the basis for linux gcc/g++ compilation and linking processes. Then you should learn Cmake and Automake, which are basically packages to configure projects before compiling building.
A typical (good) project in Unix systems build with commands
./configure
make
sudo make install
or
cmake CMakelists.txt
make all
sudo make install
That's what you need to do after downloading a source tarball online to install unix programs.
Now since you are using Mac, there are so-called package installers, one which is macports and homebrew. I personally suggest homebrew than macports here (I've tried both, although macports still outnumber homebrew with the number of repos, homebrew has the newest support, especially when upgrading to a new OS). So to install homebrew you can do
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Execute that in your terminal (see http://brew.sh/) for more information.
Then you could simply install GNUplot by
brew install gnuplot

program g++ not found in path

I am using Eclipse for a C project. I created a new Project by going to New->C project->Executable->Empty Project, Linux gcc toolchain.
When I add a new .c file, I get "program 'g++' not found in path".
How do I get rid of this? I'm not even using C++.
I had similar problem and it is solved by
Installing g++ The GNU C++ complier using ubuntu software centre and
Changing in -
Window -> Preferences -> C/C++ -> Build -> Settings -> Discovery -> CDT GCC Build in Complier Settings [Shared]
From: ${COMMAND} -E -P -v -dD "${INPUTS}"
To : /usr/bin/${COMMAND} -E -P -v -dD "${INPUTS}"
I hope it helps.
For posterity I'm going to post my own solution to this problem. None of the answers above or on related StackOverflow questions helped; most referred to menu entries that didn't exist, and the ones I could try did nothing. I searched other sites as well; there were about 6 different answers repeated many times, and none helped.
Short answer: I blew away the Eclipse install and replaced it. Then it worked. For me at least it wasn't a project or configuration option (at least not one I could get to from the GUI); something in the Eclipse program folder had gotten tweaked and only a new install could repair the problem.
I'm doing Android development using the "ADT" (Android Developer Tools) build of Eclipse. I did something to the configuration that made it start giving the above error (actually two errors, for gcc and g++ both). And I tried plenty of potential solutions (in addition to my own searching for options that might help) with no success.
Thing is, I didn't NEED gcc or g++ in the path. I'm doing Android development, and while both are used in the build process, I'm not using Eclipse to do the builds; I use the Android build system. And the C/C++ Build/Discovery options didn't even give me an option for setting paths for gcc or g++. Other answers I found elsewhere referenced menu entries that don't exist, and most seemed to be about helping people to use the normal C/C++ build within Eclipse, which I didn't need to do.
So I used this opportunity to download the latest ADT package from Google, and then I ran the new one, importing the existing project into a new workspace (just in case the old workspace was corrupted or otherwise part of the problem). No more annoying gcc/g++ error.
I got the same error while I was using "Eclipse IDE for C/C++ Developers."
Install Eclipse from Ubuntu Software Center and then download and install Eclipse CDT.
To install CDT, open Eclipse -> Help -> Install New Software -> Add -> Archieve...
Then give CDT path to there. That's all
I was able to fix the problem by selecting
project(right click in Project Explorer on your project)->properties->Tool Chain Editor
and switching the Current Toolchain: to Android GCC and Current Buolder: to Android Builder
I also had the same problem. I did not have this error running my program but after a adding, including different Api and paths , probably unintentionally some changes happened in my Path that I could not fix it.
I could fix this error by going to Properties and just restore default for all the Tabs.

How to set up libusb on Mac OS X?

I'd like to try to make a user-space device driver using libusb on Mac, but I'm confused where to start. In the SDK installer (which I got from http://www.ellert.se/twain-sane) it said something about examples which I couldn't find anywhere on my computer.
Could anyone please describe how do I set up libusb for development on OS X? May I use Xcode? What should I include in my code?
brew install libusb-compat
Working on OSX Yosemite 10.10
Easiest way to do this:
brew install libusb
Homebrew is amazing and I recommend it for all developers that use Mac.
I tried to install the SDK from the aforementioned website and couldn't find a trace of it once the installer finished. Though I did find some libusb items at /usr/local/Developer/SDKs/MacOSX10.6.sdk/usr/local/ I'm not sure it came from that installer as I couldn't find any examples, just libraries and they were labeled as libusb0.1.4.
On the other hand, since you asked your question with the macports tag, I'd suggest you use that to install libusb as it at least puts everything in a known location:
/opt/local/var/macports/software for install files
/opt/local/lib for libraries
/opt/local/include for header files
If you've never used macports then once you have macports installed then you can install libusb using
sudo port install libusb
to install libusb1.0 or
sudo port install libusb-legacy
to install libusb0.1.12.
Then you can create a project in Xcode and link to the libusb-*.a library contained in /opt/local/lib (in my directory my library file is called libusb-1.0.a since I have libusb1.0 installed).
I don't have much experience using Xcode so I can't help you any further down this path. Personally what I've done so far is use a Python wrapper called pyusb to do some quick experimentation with libusb as I don't have to do IDE setup or library/include file setup with Python.
UPDATE: Poking around the macports install directory for libusb, I didn't find any examples included which was a bummer. If you've gotten this far then I'd suggest going directly to the source for libusb, download and unpack the tar file, and building the code that's in the example directory. Sorry for the roundabout way of getting libusb examples but I've really come to appreciate the organization macports imposes on installations which saves me quite a bit of future pain (like when I want to uninstall).
once libusb is installed using following command:
brew install libusb
or
brew install libusb-compat
link libusb to the build system using
brew link libusb
to be able to configure any project depending on libusb, use pkg-config:
pkg-config --cflags libusb-1.0
and
pkg-config --libs libusb-1.0
before calling any ./configure

Resources