how to setup the kaa platform develop environment? - kaa

We download the Kaa platform source code from git.
We can build it successfully under linux OS.
And we also try to import it by Eclipse.
But, it will show a lot of error after import Kaa project into Eclipse.
Does the develop environment need under linux and need to use other develop tool??
Have anyone can share the guide instruction to help setup the Kaa platform develop environment??
Thank you!!

We try to use IntelliJ IDEA (community version) to import all source from git.
And then, use the "Generates Sources and Updates Folders" function of Maven to generate some source that it need.
After generating the source that lack before and the project can be built successfully.
Finally, we use the package command to generate the rpm and deb file.
Above all operation is on Linux OS.
The Eclipse should also support above operation, but it should be more setting need to set. And it seems more convenient by IntelliJ IDEA.

Related

How to make CC3200 project with Kaa SDK?

I'm using Ubuntu 16.10. Installed Kaa Sandbox and tested with notification demo in terminal. I'm using CCSv7 to program on CC3200. I confused what is correct way to create project in CCS with Kaa SDK generate from Kaa Sandbox. Here is how I do but I can't build project:
Generate SDK and run build by cmake with target platform is cc32xx, I use notification example
Create new project then include Kaa SDK path
Include Kaa file library (*.a): libkaac.a, libextension_user.a, libextension_event.a, libextension_logging.a, libextension_profile.a, libextension_bootstrap.a, libextension_notification.a, libextension_configuration.a, libmbedtls.a, librsa_keygen.a. I'm not sure that need all of them but just include all to prevent error.
Copy some code from kaa_demo.c and blinky demo project to my main.c.
Hit build. Error occur that libmbedtls.a not build for ARM so I go to folder thirdparty and build it. Solved.
Occur another error: Description Resource Path Location Type
#10099-D program will not fit into available memory. placement with alignment fails for section ".cinit" size 0xc41 . Available memory ranges: cc3200v1p32.cmd /demo1 line 75 C/C++ Problem. I try to increase or decrease stack size but not work.
More error: Description Resource Path Location Type
unresolved symbol __assert_func, first referenced in /opt/ti/kaa-sdk/build/libkaac.a demo1 C/C++ Problem. This error occur when missing include library file but it occur in another library file so I dont know how to fix.
Anyone can help me or suggest how to make a project for CC3200 with Kaa SDK, in any IDE. Its take me 2 weeks.
At the moment of Kaa 0.10.0 release the CC32xx sample applications were broken due to the same issue you mentioned in 7). The binary build did not fit into the CC32xx program memory. That is why whole the CC32xx platform was disabled in the Kaa 0.10.0 Sandbox release.
Now, the issue on the GitHub repository is fixed and the CC32xx platform will be re-enabled in the Kaa 0.10.1 Sandbox release (comming soon). So, you can either wait for the Kaa 0.10.1 release or try building the CC32xx application with the CMake from GitHub.
Regarding your question for build from CCSv7 IDE directly you should search for integration of CMake builds into the CCSv7 IDE. Kaa team does not provide such integration for now considering you should use any IDE you prefer for development and build by CMake (manually or from IDE).

Deploying pyqt application to Windows using pyqtdeploy

I would like to deploy for the first time my first app made with PyQt5. I found pyqtdeploy (link) to be probably what I need to do this for Windows and other platforms.
Anyway, I am following this tutorial, but, as I am completely new to deploying applications, I am not sure on one thing: do I need to download Qt for the target specific platform I need to deploy my app to? If so, am I supposed to use qmake from that Qt installation against the result of pyqtdeploy? For example: if I want to deploy to Windows, do I have to download Qt from here (and which version???)?
From the same tutorial page, this is not so clear, maybe it's obvious, but as I am a newbie in this, not for me.
No you don't need to download Qt.
When building your 'sysroot.toml' file, pyqtdeploy will download qt-everywhere-src and builds it from source.
In the built sysroot directory you can find qmake executable in "...\Qt\bin" (qmake.exe) depends on where your project files (sysroot.toml file) are.
For example if your host machine is Windows and C:\Users\username\Desktop\My_PyQtDeploy_Proj is your project folder which contains sysroot.toml, after building sysroot you can find qmake in "C:\Users\username\Desktop\My_PyQtDeploy_Proj\sysroot-win-64\Qt\bin\qmake.exe"

Java Compiler multi-platform

How could I compile a Main.Java program to something that I could run with OpenJDK Java 6 or 7 . The program doesn't contain anything besides displaying the message "Hello World"
I would like to compiler to .JAR
Also if I compile the program will it run in Windows or do I got to cross compile like C++ if I'm using Linux as the native developer.
I'm using the Linux Ubuntu OpenJDK Development Kit (JDK)
This is how you compile.
cristian#ubuntu:~/Java$ javac Main.java
but how would you compile to a .JAR file so I can run it in my Windows.
Any guides to learning Java are welcome and thanks for the help.
I'm using Linux Ubuntu.
You must specify your main class in the JARs manifest in order for it to be runnable. You can then invoke your application from it's jar as follows
java -jar application.jar
Current versions of the JDK for Windows will create a file association for .jar files so if you click on them they will execute.
For further details, take a look at Oracle's Jar Tutorial, specifically the section on Setting an Application's Entry Point
Edit
Regarding the need for cross compilation... Since Java compiler targets a virtual machine, you do not need to cross compile for different operating systems. (One of the early taglines for Java was "Write Once Run Anywhere".)
Here is a decent article on the basics of how the JVM does its magic: What Is The Java Virtual Machine & How Does It Work?
The Oracle Java Tutorials are an solid starting point for many things java related and I recommend reading through them if you are new to Java.
Java's JAR files are platform independent and only require an installed JRE/JDK.
OpenJDK does almost the same thing as Oracle JDK however you can also get the Oracle JDK on Linux Ubuntu by using third-party repositories such as ppa:webupd8team/java(details on how to use the repository are provided on the webupd8 website) i found i needed to switch to oracle java for performance issues.
Most common IDE's for java provide support for compiling and packaging to JAR/Runnable JAR.
A popular java IDE is Eclipse(http://eclipse.org) other popular IDE's include NetBeans and JetBrains IntelliJ IDEA.
Most programmers use IDE's for ease of use and other functionality such as IntelliSense(Autocomplete), error checking, Syntax highlighting and debugging.
A good guide to learning java is http://www.youtube.com/playlist?list=PLFE2CE09D83EE3E28. Other guides such as java game development can also be found on Thenewboston's channel or thenewboston website.

Qt Creator: distribute an app

I'm new to Qt - please, can someone tell me how to build an app so I can run in on other computer without Qt?
I downloaded Qt for Mac, I can run the provided examples. Now I would like to distribute the resulting application in a self-contained package so that users don't have to install or do anything. What do I have to do?
I have the very latest 5.0.1 version.
This is documented in Qt's documentation:
http://qt-project.org/doc/qt-5.0/qtdoc/deployment.html
Note that currently, a static build of Qt 5.0 does not work. (4.8 works.)

How to install a Qt application on a customers system?

I've got a Qt app that I need installed on a customers computer, which I can't assume has Qt installed on it. I'm on a Mac OSX and the computer I will be installing it on some Unix based system. I will be installing it myself so I don't need a GUI installation wizard or anything like that. Ideally I'd like to end up with a script or makefile, along with a folder of all the sources and necessary libraries, I just don't know where to start. References would be much appreciated, I haven't found anything useful after many google searches.
My question lies somewhere between these two:
Can you create a setup.exe in qt to install your app on a client computer?
Create Linux install for Qt application?
I don't need a full-blown install wizard (question 1), but I also won't have my machine at the installation site to just keep copying libraries until all dependencies are met (question 2). Basically I need to have everything on a CD ready to install when I get there. Thanks in advance.
There are two ways to install a Qt application on a system:
1 - You can compile Qt statically. This will allow you to deploy you app without any qt dependencies.
2 - You need to deploy your app with Qt librairy files you need (like qtcore.dll on Windows)
You will find all explications for each platform in the Qt documentation : http://qt-project.org/doc/qt-4.8/deployment.html.
To create installer you can use InstallJammer for Windows and Unix.
For MacOSX you need to create a dmg image. This is very simple. Read the following web page for help : http://www.wikihow.com/Make-a-DMG-File-on-a-Mac. By using apple script you can customize dmg (like an Application folder link into the dmg).
My preference for Win32 installer is NSIS.
Hope that helps!
Not sure why you want to avoid the install wizard. It can also help you create Uninstaller, desktop and start menu shortcuts, etc. As mentioned in the posts you refer to, you could use BitRock InstallBuilder (Nokia uses it for Qt Creator)
If you do not want to use a wizard and don't want to compile statically, then you can bundle Qt libraries in the same folder as the app and setup a shell script that sets the LD_LIBRARY_PATH to that directory

Resources