summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author <philippe colliot>2015-11-05 15:34:29 +0100
committer <philippe colliot>2015-11-05 15:34:29 +0100
commit112742a3bcadd758a0d72f93c1870d0bf6ba3a5a (patch)
tree2fc24d9850594c8c0f516a84162a4bc23b824b0e
parentebacf38a199eca8c2f957f13dd3a48bb13a0136e (diff)
downloadnavigation-112742a3bcadd758a0d72f93c1870d0bf6ba3a5a.tar.gz
FSA is running under Ubuntu 15.10 64bit Qt 5.4
-rw-r--r--src/CMakeLists.txt1
-rw-r--r--src/README16
-rw-r--r--src/fuel-stop-advisor/CMakeLists.txt2
-rw-r--r--src/genivilogreplayer/CMakeLists.txt2
-rw-r--r--src/hmi/qml/Core/resource.js4
-rw-r--r--src/hmi/qml/hmi-launcher/CMakeLists.txt6
-rw-r--r--src/hmi/qml/hmi-launcher/dbusif.cpp20
-rwxr-xr-xtest/script/README8
8 files changed, 49 insertions, 10 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index f3c30db..14fa476 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -17,7 +17,6 @@
###########################################################################
project(fuel-stop-advisor)
cmake_minimum_required(VERSION 2.8)
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11")
option(WITH_DEBUG
"Enable the debug messages" OFF)
diff --git a/src/README b/src/README
index e0218a5..2e82408 100644
--- a/src/README
+++ b/src/README
@@ -1,4 +1,4 @@
-Release date of the file: 08-10-2015
+Release date of the file: 05-11-2015
Status: OK
Project:
@@ -6,7 +6,7 @@ Navigation application based on Navit and compliant with the Navigation APIs sta
This project is one of the navigation projects that implements the GENIVI navigation APIs.
More:
-The GENIVI APIs are implemented into Navit plugins, running on DBus. The HMI is made in Qml (Qt5.2 and QtQuick 2.1)
+The GENIVI APIs are implemented into Navit plugins, running on DBus. The HMI is made in Qml (Qt5.2.1 and QtQuick 2.1)
See also other navigation projects like proof of concepts implemented for poi-service, traffic-info and positioning
What is in:
@@ -22,8 +22,16 @@ Martin Schaller <martin.schaller@it-schaller.de>
License:
See headers and LICENSE file
-Test target:
-Ubuntu 14.04 LTS
+===============================
+Tested target and nota bene
+===============================
+Ubuntu 14.04 LTS 32 bits on Qt 5.2.1 gcc 32bit
+
+Ubuntu 15.10 64 bits on Qt 5.4 gcc 64bit
+For Qt version >= 5.2 with gcc 64 bits, there's an issue that needs to be fixed by compiling your code with -fPIC (-fPIE is not enough)
+You must build your code with position independent code if Qt was built with -reduce-relocations
+For Qt version 5.4, it's needed to fix Qt 5.4 QML -> C++ QVariant issues by unboxing the QVariant-QJSValue
+
===============================
Current versions of additional code
diff --git a/src/fuel-stop-advisor/CMakeLists.txt b/src/fuel-stop-advisor/CMakeLists.txt
index 98a8a17..82b60fc 100644
--- a/src/fuel-stop-advisor/CMakeLists.txt
+++ b/src/fuel-stop-advisor/CMakeLists.txt
@@ -16,6 +16,8 @@
###########################################################################
cmake_minimum_required(VERSION 2.8)
+add_definitions("-std=gnu++11")
+
include(FindPkgConfig)
pkg_search_module(DBUS_CPP_GLIB dbus-c++-glib-1)
diff --git a/src/genivilogreplayer/CMakeLists.txt b/src/genivilogreplayer/CMakeLists.txt
index 41bc3f9..fc871bf 100644
--- a/src/genivilogreplayer/CMakeLists.txt
+++ b/src/genivilogreplayer/CMakeLists.txt
@@ -17,6 +17,8 @@
###########################################################################
cmake_minimum_required(VERSION 2.8)
+add_definitions("-std=gnu++11")
+
include(FindPkgConfig)
pkg_search_module(GLIB glib-2.0)
diff --git a/src/hmi/qml/Core/resource.js b/src/hmi/qml/Core/resource.js
index 56f4342..9fa8a97 100644
--- a/src/hmi/qml/Core/resource.js
+++ b/src/hmi/qml/Core/resource.js
@@ -25,9 +25,9 @@
* @licence end@
*/
-Qt.include("/home/psa/Desktop/genivi/navigation-application-master/src/build/hmi/qml/hmi-launcher/constants.js");
+Qt.include("/home/psa/genivi/navigation-application/src/build/hmi/qml/hmi-launcher/constants.js");
-var IconPath = "/home/psa/Desktop/genivi/navigation-application-master/src/build/navigation/navit/navit/navit/xpm/"
+var IconPath = "/home/psa/genivi/navigation-application/src/build/navigation/navit/navit/navit/xpm/"
var ManeuverTypeIcon = new Object;
ManeuverTypeIcon[NAVIGATIONCORE_INVALID]=IconPath+"unknown_64_64.png";
diff --git a/src/hmi/qml/hmi-launcher/CMakeLists.txt b/src/hmi/qml/hmi-launcher/CMakeLists.txt
index 5a05844..1a1ffa6 100644
--- a/src/hmi/qml/hmi-launcher/CMakeLists.txt
+++ b/src/hmi/qml/hmi-launcher/CMakeLists.txt
@@ -21,6 +21,10 @@
project(hmi-launcher)
cmake_minimum_required(VERSION 2.8.11)
+add_definitions("-std=gnu++11")
+
+add_definitions("-fPIC")
+
message(STATUS "hmi-launcher")
find_program(XSLTPROC xsltproc REQUIRED)
@@ -50,7 +54,7 @@ include_directories(
set(cmake_create_dir cmake -E make_directory)
# settings for Qt
-set(CMAKE_XXX_FLAGS "${CMAKE_XXX_FLAGS} ${QT5_EXECUTABLE_COMPILE_FLAGS}")
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${QT5_EXECUTABLE_COMPILE_FLAGS}")
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
diff --git a/src/hmi/qml/hmi-launcher/dbusif.cpp b/src/hmi/qml/hmi-launcher/dbusif.cpp
index f8be005..c17b2f5 100644
--- a/src/hmi/qml/hmi-launcher/dbusif.cpp
+++ b/src/hmi/qml/hmi-launcher/dbusif.cpp
@@ -53,6 +53,12 @@ void
QVariant v)
{
QDBusMessage msg = QDBusMessage::createSignal(path, interface, method);
+
+ // unbox the QVariant-QJSValue to fix the Qt 5.4 QML -> C++ QVariant issues
+ if (v.userType() == qMetaTypeId<QJSValue>()) {
+ v = v.value<QJSValue>().toVariant();
+ }
+
if (v.type() == QVariant::List) {
QVariantList l = v.value < QVariantList > ();
for (int i = 0; i < l.size(); i++) {
@@ -90,6 +96,11 @@ dbus_from_qml(QVariant v)
static QList<QVariant>
dbus_list_from_qml_list(QVariant v)
{
+ // unbox the QVariant-QJSValue to fix the Qt 5.4 QML -> C++ QVariant issues
+ if (v.userType() == qMetaTypeId<QJSValue>()) {
+ v = v.value<QJSValue>().toVariant();
+ }
+
if (v.type() != QVariant::List) {
qDebug() << "Wrong Variant Type" << v;
throw("wrong variant type");
@@ -523,7 +534,14 @@ dbus_message_from_qml_list(DBusMessage *msg, QVariant v)
{
DBusMessageIter iter;
dbus_message_iter_init_append(msg, &iter);
- if (v.type() != QVariant::List) {
+
+ // unbox the QVariant-QJSValue to fix the Qt 5.4 QML -> C++ QVariant issues
+ if (v.userType() == qMetaTypeId<QJSValue>()) {
+ v = v.value<QJSValue>().toVariant();
+ }
+
+
+ if (v.type() != QVariant::List) {
qDebug() << "Wrong Variant Type" << v;
return false;
}
diff --git a/test/script/README b/test/script/README
index 21e7ffb..31ef24d 100755
--- a/test/script/README
+++ b/test/script/README
@@ -3,7 +3,7 @@ Status: to be completed
This test bench requires Python version >= 3.4 and uses pygame.
-How to get pygame
+How to get pygame (for Ubuntu 14.04 LTS)
It seems you need to build it, so follow this recipe:
(thanks to Sir on http://heritagerobotics.wordpress.com/category/xubuntu-stuff/)
cd
@@ -17,6 +17,7 @@ sudo python3 setup.py install
You need some other packages
sudo apt-get install python3-gobject
+
To test:
Launch the application without the logreplayer:
@@ -24,7 +25,12 @@ Launch the application without the logreplayer:
Launch the test dashboard (keyboard interface)
(the test dashboard calls the logreplayer and uses test log files)
+For Ubuntu 14.04 LTS
python3 simulation-dashboard.py
+
+For Ubuntu 15.10
+python simulation-dashboard.py
+
NB: To launch it remotely, you can set the host address, for instance: python3 simulation-dashboard.py -r 192.168.1.202
Steps: