QNX C/C++ software [closed] - c++

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
How can I get QNX C/C++ sample code?

Since QNX is proprietary, it can be hard to get a "jump start".
But as Research In Motion (the makers of BlackBerry) acquired it and are heavily investing on it - in the hopes to get as many developers as possible to jump on the new BBX platform, you may benefit from learning QNX via RIM - and maybe even winning a free Playbook tablet.
You can download the Native Development Kit (NDK) from this website: https://bdsc.webapps.blackberry.com/native/
It is a slightly modified version of Eclipse called Momentics. Using the Playbook simulator (which runs under a - hopefully - free version of VMWare) you can write, compile and run your QNX softwares.
I suggest you taking a close look at PPS objects. They are the most outstanding "idiosyncrasy" of QNX and mastering it will pretty much enable you as a QNX developer. Also, try to register for Foundry27 on QNX website and there you will find handful of (unfortunately almost hidden from Google) resources on QNX.
I hope that helps!
EDIT: and with the NDK it comes with a handful of examples. You will find them pretty much similar to POSIX.

QNX Community Resources is always a good source of help and sample code for QNX.
Usually, library reference entries have a small sample code, e.g. MsgDeliverEvent.

If you go to QNX.com, download the QDE/Momentics trial, you'll get an Eclipse-CDT which will have examples available from the start page.

QNX Neutrino is also similar enough to Linux/Unix systems that most software examples (for example socket and terminal io code) will be equally applicable to QNX as they are for their Unix system.

Related

BlueZ D-Bus C or C++ Sample [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I am trying to write an application which searches Bluetooth devices nearby and communicates with them. My application is going to be written in C++, and intended to work under Linux.
4 years ago, I used BlueZ. But now, as I see, the API has been changed a lot and now it's using D-Bus. I was not experienced with D-Bus. I looked at some tutorials related to client/server model. Now, I'm OK with D-Bus.
But I couldn't find any example which explains how to use BlueZ with D-Bus. I need some guidance for using BlueZ and D-Bus together.
Are there any tutorial or sample for working with BlueZ via D-Bus in C or C++?
(note: already googled it)
You might want to check out the main.c file in the client folder of the most recent Bluez source code. It's the source code for the bluetoothctl tool. Run it too. The source code shows exactly how they use GDBus, including proxies, agents, calling methods like described in the API documentation (/doc folder) and all that. It's in C and uses the high level API.
I suggest you step through the code because it took me 2 weeks endlessly trying to understand Bluez in C and the fact that there's no documentation, but when I read that main.c file I was ready in a day. Read up on proper DBus API documentation and more importantly the concepts. Some documents that helped me:
The gdbus tool: https://developer.gnome.org/gio/stable/gdbus.html
These contain all the calls to gdbus and objects in the main.c file and explain them very well. https://developer.gnome.org/gio/stable/gdbus-convenience.html
D-Feet, an invaluable tool to inspecting and learning about Dbus on your system. Try checking out the /bluez bus. https://wiki.gnome.org/action/show/Apps/DFeet?action=show&redirect=DFeet
or
sudo apt-get install d-feet
Not much of a tutorial, but worth a read to understand some concepts, as the bluetoothctl tool fits into what they're trying to say here. http://dbus.freedesktop.org/doc/dbus-tutorial.html
The bluetoothctl creates an interactive shell though, so it might not be wise to waste time trying to fit in your code, but just pick what you need from it.

Reference for Linux API like MSDN? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
Is there any nice to read Linux API reference like the one offered by MSDN or boost? I like the detailed information about the parameters from MSDN and the pre- an post conditions from the boost documentation. But until now I found nothing comparable in the net for Linux.
The man pages are definitely a good start, as others have noted. If you'd like something more formal and rigorous, however, I would recommend reading the POSIX specification. Here is the index of functions in the standard:
http://pubs.opengroup.org/onlinepubs/9699919799/functions/contents.html
Looking at what the standard requires, rather than what the current implementations of these functions on Linux happen to do, will also help you write more portable, robust software.
Read first good books like Advanced Linux Programming (you can download it) and Advanced Unix Programming
Be aware that GNU/Linux is by definition less monolithic than Windows (because many contributors are working on it, and) because it is made of many independent programs.
Therefore, there is no well defined Linux API (except for the kernel syscalls; but GNU/Linux is more than the kernel)
Of course, read the man pages, in particular start with the intro(2) man page about syscalls and other man-pages.
Be aware that Linux is nearly implementing (a superset of) the POSIX standard specification from the OpenGroup.
Read also many good documentations from TLDP.
If you are interested by desktop application development, understand first what
X11 is, (beware, X11 is very complex in the details). Then read documentation from freedesktop. Better yet, learn to use a graphical toolkit like Qt or Gtk
And GNU/Linux is made of free software, you can download and study the source code and improve it. You'll very often use some existing free software library, and you may study its source code (and each of them has its own documentation). Part of your work is finding good free software related to your needs. freecode and sourceforge are good resources (and they are many others).
I have this bookmarked.
The Linux man-pages project

Tutorial on how to host VST plugins using JUCE? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I would like to write some code to host VST plugins in my C++ application. It looks like the JUCE library may be helpful for this. Does anyone know where I can find a tutorial on how to host and connect together VST plugins in JUCE?
I've built the JUCE code and got the 'Plugin Host' sample working. It looks like the library will be able to do just what I want. My problem is that I'm finding the sample code hard to follow (not many comments etc). It also uses a lot of JUCE-specific coding for managing the UI and so on. I'm finding it hard to disentangle what I need to do to manage VST plugins from the other code in the sample.
If anyone knows of a tutorial I would be very grateful!
Most of the sample Juce code is indeed very Juce-specific, and if you're going to use that platform I'd encourage you to stick with it and push through the samples, even though they may not be very pretty.
It might be useful for you to know a bit more about VST hosting outside of Juce, though. Here's a tutorial on hosting VST's by hand in a C++ application.
This tutorial walks through the development of audio applications using JUCE, and in part 2 they cover hosting VST plugins.
(edit: I updated the links, also note they have a part 3 to the series)

C/C++ Libraries for reading from Universal Disk Format devices or files [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
Are there any good free C/C++ libraries that enable reading from common devices with filesystems such as UDF, and ISO9660 and extracting files/metadata etc.?
So far all I've been able to find is GNUs libcdio which is promising, and some "Magic UDF" which has so many hits I'm disgusted, pushes other results in Google, and comes with a pretty extreme looking price tag.
Cross-platform support is preferable (personal preference of course), and Windows compatibility is an unfortunate requirement. The less restrictive the license, the better, I have yet to investigate how compatible libcdio's GPLv3 license is.
Note this question is still open, I'll accept another answer if someone locates such a library.
After extensive investigation, I ended up rolling my own solution to perform the operations on UDF that I required. I'm unable to open the source, in all it was about 800 lines of C++. However here are several links which got me through:
The reference standard on which UDF is built
Universal Disk Format specification 2.60
Brief introduction to UDF
Wikipedia Page
UDF Verifier tool (you must sign up for access to this)
A few words of warning: Previous experience implementing ISO9660/ECMA-119 helped me significantly. Knowledge of how block devices operate and interface with the operating system is helpful. Information surrounding the physical layout and separation of sessions is somewhat mythical and difficult to grok.
See: http://www.thefreecountry.com/sourcecode/cpp.shtml
There are a lot of open source library for this but reliability is question.
On Windows You can use Image Mastering API. It comes with Window SDK , Work on both XP & Vista
http://msdn.microsoft.com/en-us/library/aa364806%28VS.85%29.aspx
7-Zip supports extracting files from UDF and ISO disk images, and is mostly LGPL licensed. Specifically, the UDF implementation code appears to be in CPP/7zip/Archive/Udf/UdfIn.cpp.

Multithreaded Debugger [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
GDB has severe issues when debugging with multiple threads (pthreads).
Are there any other good multi-threaded debuggers for C/C++ on *nix?
I've personally not had any GDB specific issues when debugging a multi-threaded application, so it may helpful for you to elaborate on exactly what "issues" you are having. It will help us answer you better.
There are several aids that I have used in the past when debugging multi-threaded applications in linux, most of which build upon GDB rather than replace it. These include:
DDD http://www.gnu.org/software/ddd/
Eclipse http://www.eclipse.org/
Native POSIX Thread Library (NTPL) Trace Tool http://nptltracetool.sourceforge.net/
Additionally, if you are new to debugging in Linux (and even if you aren't!) I highly recommend the paper titled "Debugging Linux Applications" which you can find here:
http://www.scribd.com/doc/3009706/Debugging-Linux-Applications
Allinea DDT ... graphical debugger for scalar, multi-threaded and large-scale parallel applications that are written in C, C++ and Fortran.
TotalView is what the national labs use for huge clusters. I believe it has some good support for thread parallelism, too. It's probably out of your price range, but you can try it for free.
From my search, I have not found any good multi-thread debuggers for *nix. GDB seems to be getting better, and the last time I had to debug a multi-threaded application on FreeBSD (7.0-RELEASE) it behaved fairly well, letting me find where the error was.
I once looked for a gdb alternative, but unfortunately every one I found was based on gdb. I think this is because gdb is intricately tied to gcc, and it's hard for third-party debuggers to keep up with every gcc change.
The AIX debugger for windows, let's you debug multithread applications.