by Free CSS Templates
and jQueryui
I put results of my works and experience associated with the QNX operating system on this site. I work as a rule on an updated version of the system which at present the version 6.5.0 is. Practically this software is associated with moving the software from the LINUX/GNU system. Software which here is found isn't unfortunately available in official distributions of the QNX producer of the company QNX Software LTD. are these are results of my interests and works which I led.
Particularly I would like to pay attention to the misprision through QNX of a programming language ada and Objective-C. I put compilers of these languages. I also put the prolog and the quite new Vala language. Vala is closely associated with the Gnome project of which I try to put main elements.
Providing software on account of restrictions is as a rule in the form of ready binary packages. I try also to put instructions how to compile the software. With pleasure I will answer questions if so will appear.
As the compiler of ada language in
QNX I use the
GPL2011
compiler based on
gcc4.5.3.
On the https://libre.adacore.com/libre/ are sources GPL2011.
A good source of examples is gnat-examples.tar.bz2. It is possible there to find a lot of examples of programming in Ada 2005.
An interesting example of the technique of dynamic loading libraries is in an examples/plugins catalogue.
gcc4.6.1-x86-qnx6.5.0-bld1.tar.bz2
=== objc tests ===gcc-g++4.5.3-gnatGPL2011-x86-qnx6.5.0-bld1.tar.bz2
# ldd cc1
./cc1:
libppl_c.so.4 => /usr/local/lib/libppl_c.so.4 (0xb8200000)
libppl.so.9 => /usr/local/lib/libppl.so.9 (0xb8502000)
libpwl.so.5 => /usr/local/lib/libpwl.so.5 (0xb85f4000)
libgmpxx.so.4 => /usr/pkg/lib/libgmpxx.so.4.2.2 (0xb85f8000)
libmpc.so.2 => /usr/pkg/lib/libmpc.so.2.0.0 (0xb85fc000)
libmpfr.so.4 => /usr/pkg/lib/libmpfr.so.4.0.1 (0xb8611000)
libgmp.so.10 => /usr/pkg/lib/libgmp.so.10.0.2 (0xb865e000)
libz.so.1 => /usr/lib/libz.so.1 (0xb037f000)
libc.so.3 => /usr/lib/ldqnx.so.2 (0xb0300000)
libstdc++.so.6 => /usr/qnx650/host/qnx6/x86/usr/lib/gcc/i486-pc-nto-qnx6.5.0/4.5.3/libstdc++.so.6.0.14 (0xb86d1000)
libm.so.2 => /lib/libm.so.2 (0xb87c2000)
libc.so.1 => /lib/libc.so.1 (0xb038c000)
using GLib;
public class Test.HelloObject : Object {
public static int main(string[] args) {
stdout.printf("Hello, World\n");
return 0;
}
}
or BasicSample.vala:/* class derived from GObject */
public class BasicSample : Object {
/* public instance method */
public void run () {
stdout.printf ("Hello World\n");
}
/* application entry point */
public static int main (string[] args) {
// instantiate this class, assigning the instance to
// a type-inferred variable
var sample = new BasicSample ();
// call the run method
sample.run ();
// return from this main method
return 0;
}
}
Compile and Run$ valac -o basicsample BasicSample.vala$ ./basicsample
Since in QNX we have two Objective-C compilers at our disposal (objc and clang) it it is possible to move GNUstep to QNX.
Objective-C is very interesting expanding the C language by object mechanisms. Unfortunately he isn't too popular compared with C++ but I think that he is worth it in order to at least to watch him.
ObjC2 FAQ
The Low Level Virtual Machine (LLVM)
is a compiler infrastructure, written in C++, which is designed for compile-time, link-time,
run-time, and "idle-time" optimization of programs written in arbitrary programming languages. LLVM was
originally developed as a research infrastructure at the University of
Illinois at Urbana-Champaign to investigate dynamic compilation
techniques for static and dynamic programming languages.