Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
abraha2d's OpenAuto fork compilation
Starting point is release "NG Alpha-5 2019-06-08" of Crankshaft (https://github.com/opencardev/crankshaft/releases/tag/csng-alpha5). Tested on Raspberry Pi3 Model B and Model B+.
1. Activate DEV mode in Crankshaft. See this guide: https://github.com/opencardev/crankshaft/wiki/Dev-Mode-and-Debug-Mode
I used first method changing DEV_MODE=1 in /boot/crankshaft/crankshaft_env.sh mounting the microSD in my computer.
2. Attach Ethernet cable to Raspberry/Crankshaft, boot, find out IP and login through SSH (user: pi; pwd: raspberry).
3. Update distribution and install some packages:
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install -y libboost-all-dev libusb-1.0.0-dev cmake libprotobuf-dev protobuf-c-compiler protobuf-compiler librtaudio-dev
4. Download 'development' branch of abraha2d's aasdk fork:
$ cd ~
$ git clone -b development https://github.com/abraha2d/aasdk.git
5. (OPTIONAL) I compiled commit 361380e7d74ddeaf17afd8cd89882001bb62c77e. If there are problems with new commits, do the following checkout:
$ cd aasdk
$ git checkout 361380e7d74ddeaf17afd8cd89882001bb62c77e
6. Compile aasdk:
$ cd ~
$ mkdir aasdk_build
$ cd aasdk_build
$ cmake -DCMAKE_BUILD_TYPE=Release ../aasdk
$ make
7. Install some packages to compile ilclient:
$ sudo apt-get install -y libraspberrypi-doc libraspberrypi-dev
$ cd /opt/vc/src/hello_pi/libs/ilclient
$ make
8. Download 'crankshaft-ng' branch of abraha2d's openauto fork:
$ cd ~
$ git clone -b crankshaft-ng https://github.com/abraha2d/openauto.git
9. (OPTIONAL) I compiled commit d56417bfd6b2af9beacb104f8659aea8bff94a72. If there are problems with new commits, do the following checkout:
$ cd openauto
$ git checkout d56417bfd6b2af9beacb104f8659aea8bff94a72
10. Compile openauto:
$ cd ~
$ mkdir openauto_build
$ cd openauto_build
$ sudo apt-get install -y libtag1-dev libblkid-dev
$ cmake -DCMAKE_BUILD_TYPE=Release -DRPI3_BUILD=TRUE -DAASDK_INCLUDE_DIRS="/home/pi/aasdk/include" -DAASDK_LIBRARIES="/home/pi/aasdk/lib/libaasdk.so" -DAASDK_PROTO_INCLUDE_DIRS="/home/pi/aasdk_build" -DAASDK_PROTO_LIBRARIES="/home/pi/aasdk/lib/libaasdk_proto.so" ../openauto
$ make
11. Replace binary in Crankshaft:
$ sudo cp /home/pi/openauto/bin/autoapp /usr/local/bin/autoapp
12. Revert DEV mode change from step 1 and boot normally.
@Bishamon1987

This comment has been minimized.

Copy link

@Bishamon1987 Bishamon1987 commented Jul 8, 2019

Thanks for this information!

@Freezernator

This comment has been minimized.

Copy link

@Freezernator Freezernator commented Jul 10, 2019

Cool stuff but something creates errors and when i plug in my android device the system crashes and creates a boot loop so i have to reinstall everything again.
Any ideas?

@eduardofilo

This comment has been minimized.

Copy link
Owner Author

@eduardofilo eduardofilo commented Jul 11, 2019

Cool stuff but something creates errors and when i plug in my android device the system crashes and creates a boot loop so i have to reinstall everything again.
Any ideas?

There are people here reporting similar issues. I don't know the cause, but it seems the problem is related to certain incompatibility in specific phones of the fixes made to openauto's source code to overcome issue 352. I mean that many people are not suffering that problem, and many others are.

I'm sorry I can not help you, but the problem only can be analyzed by someone focused in openauto project. Or by someone skillful.

@dhempstead

This comment has been minimized.

Copy link

@dhempstead dhempstead commented Jul 12, 2019

Thanks @eduardofilo, worked perfectly. The only problem I had was at step 7, when I went to copy autoapp, the destionation file was busy.

I therefore had to do the following:

$ ps ax | grep autoapp
$ kill [PID FROM ABOVE]

@eduardofilo

This comment has been minimized.

Copy link
Owner Author

@eduardofilo eduardofilo commented Jul 12, 2019

Thanks @eduardofilo, worked perfectly. The only problem I had was at step 7, when I went to copy autoapp, the destionation file was busy.

I therefore had to do the following:

$ ps ax | grep autoapp
$ kill [PID FROM ABOVE]

Did you activate dev mode? In theory in dev mode, autoapp doesn't start.

@ulido

This comment has been minimized.

Copy link

@ulido ulido commented Jul 23, 2019

Thanks for this! Note that if you follow the instructions to compile aasdk and autoapp on an RPi 3 A+ you'll need to have some swap space enabled otherwise the compiler stalls forever. A sacrificial USB stick works fine (mkswap + swapon).

@aftjah

This comment has been minimized.

Copy link

@aftjah aftjah commented Jul 24, 2019

Worked great as is on my RPi 3 B. Thanks!

@scotty86

This comment has been minimized.

Copy link

@scotty86 scotty86 commented Jul 27, 2019

Updated my RPi 3b+ with this foolproof step by step tutorial. Now the touchscreen works using Android Auto and my OnePlus 3T (Lineage 16.1).
Thanks to all the devs and @eduardofilo.

@AwsmOli

This comment has been minimized.

Copy link

@AwsmOli AwsmOli commented Jul 28, 2019

hm trying this right now - but the compilation of abraha2d's openauto fork fails for me:

In file included from /home/pi/openauto/src/autoapp/UI/MainWindow.cpp:23:0:
/home/pi/openauto_build/ui_mainwindow.h: In member function 'void Ui_MainWindow::setupUi(QMainWindow*)':
/home/pi/openauto_build/ui_mainwindow.h:2107:29: error: 'class QListView' has no member named 'setItemAlignment'; did you mean 'setItemDelegate'?
        AlbumCoverListView->setItemAlignment(Qt::AlignCenter);
                            ^~~~~~~~~~~~~~~~
/home/pi/openauto_build/ui_mainwindow.h:2161:18: error: 'class QListWidget' has no member named 'setItemAlignment'; did you mean 'setItemWidget'?
        mp3List->setItemAlignment(Qt::AlignCenter);
                 ^~~~~~~~~~~~~~~~
/home/pi/openauto/src/autoapp/UI/MainWindow.cpp: In member function 'void f1x::openauto::autoapp::ui::MainWindow::on_horizontalSliderVolume_valueChanged(int)':
/home/pi/openauto/src/autoapp/UI/MainWindow.cpp:767:9: warning: unused variable 'n' [-Wunused-variable]
    int n = snprintf(this->volume_str, 5, "%d", value);
        ^
CMakeFiles/autoapp.dir/build.make:734: recipe for target 'CMakeFiles/autoapp.dir/src/autoapp/UI/MainWindow.cpp.o' failed
make[2]: *** [CMakeFiles/autoapp.dir/src/autoapp/UI/MainWindow.cpp.o] Error 1
CMakeFiles/Makefile2:104: recipe for target 'CMakeFiles/autoapp.dir/all' failed
make[1]: *** [CMakeFiles/autoapp.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

🤔 what could be wrong

@ugifractal

This comment has been minimized.

Copy link

@ugifractal ugifractal commented Jul 30, 2019

@AwsmOli , I got similar issue. I tested on Raspbian Buster. Still don't know how to fix.

@Stargazzer

This comment has been minimized.

Copy link

@Stargazzer Stargazzer commented Jul 30, 2019

Hello All,
I can follow the directions up until Step 4, I dont know how or what that means to compile. Noob in linux. Are there any instructions listed on how to do Step 4,5 and 6?
I know someone has a downloadable image but it is 29.7GB and that size just doesn't make sense to me as well as I only have a 16GB sdcard.

Thanks for any help provided.

@AwsmOli

This comment has been minimized.

Copy link

@AwsmOli AwsmOli commented Jul 30, 2019

@Stargazzer The steps are actually just headlines and the commands below are how to do them

@eduardofilo

This comment has been minimized.

Copy link
Owner Author

@eduardofilo eduardofilo commented Jul 31, 2019

hm trying this right now - but the compilation of abraha2d's openauto fork fails for me:

In file included from /home/pi/openauto/src/autoapp/UI/MainWindow.cpp:23:0:
/home/pi/openauto_build/ui_mainwindow.h: In member function 'void Ui_MainWindow::setupUi(QMainWindow*)':
/home/pi/openauto_build/ui_mainwindow.h:2107:29: error: 'class QListView' has no member named 'setItemAlignment'; did you mean 'setItemDelegate'?
        AlbumCoverListView->setItemAlignment(Qt::AlignCenter);
                            ^~~~~~~~~~~~~~~~
/home/pi/openauto_build/ui_mainwindow.h:2161:18: error: 'class QListWidget' has no member named 'setItemAlignment'; did you mean 'setItemWidget'?
        mp3List->setItemAlignment(Qt::AlignCenter);
                 ^~~~~~~~~~~~~~~~
/home/pi/openauto/src/autoapp/UI/MainWindow.cpp: In member function 'void f1x::openauto::autoapp::ui::MainWindow::on_horizontalSliderVolume_valueChanged(int)':
/home/pi/openauto/src/autoapp/UI/MainWindow.cpp:767:9: warning: unused variable 'n' [-Wunused-variable]
    int n = snprintf(this->volume_str, 5, "%d", value);
        ^
CMakeFiles/autoapp.dir/build.make:734: recipe for target 'CMakeFiles/autoapp.dir/src/autoapp/UI/MainWindow.cpp.o' failed
make[2]: *** [CMakeFiles/autoapp.dir/src/autoapp/UI/MainWindow.cpp.o] Error 1
CMakeFiles/Makefile2:104: recipe for target 'CMakeFiles/autoapp.dir/all' failed
make[1]: *** [CMakeFiles/autoapp.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

what could be wrong

I have triple checked the procedure and I don't get that errors. I can only assure that it works in the following conditions:

  • Distribution base: release "NG Alpha-5 2019-06-08" of Crankshaft (based in Raspbian Stretch)
  • Raspberry Pi3 Model B and Model B+

Is it possible that you are using another distribution?

@eduardofilo

This comment has been minimized.

Copy link
Owner Author

@eduardofilo eduardofilo commented Jul 31, 2019

Hello All,
I can follow the directions up until Step 4, I dont know how or what that means to compile. Noob in linux. Are there any instructions listed on how to do Step 4,5 and 6?
I know someone has a downloadable image but it is 29.7GB and that size just doesn't make sense to me as well as I only have a 16GB sdcard.

Thanks for any help provided.

If you have reached step 4, you have overcome the most difficult steps for a noob in Linux :-)
From there you only have to type the commands in terminal one by one (don't type the leading "$" that only marks the command prompt).
I just changed the gist several minutes ago. Don't do the steps 5 and 9 that are optionals.

Cheer up, and good luck.

@Stargazzer

This comment has been minimized.

Copy link

@Stargazzer Stargazzer commented Jul 31, 2019

eduardofilo thanks for the reply. I am getting a File is read only error.
I have it in dev mod, which is supposed to make everything read/write I believe but when I do sudo apt-get upgrade it gives me this:

pi@CRANKSHAFT-NG:~ $ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
W: Not using locking for read only lock file /var/lib/dpkg/lock
W: chown to _apt:root of directory /var/cache/apt/archives/partial failed - SetupAPTPartialDirectory (30: Read-only file system)
W: chmod 0700 of directory /var/cache/apt/archives/partial failed - SetupAPTPartialDirectory (30: Read-only file system)
W: Not using locking for read only lock file /var/cache/apt/archives/lock

I am using Putty to ssh into the pi. I am starting off with the NG Alpha-5 2019-06-08 version.
I do a grep and kill any PID with crankshaft and autoapp just to make sure everything is not running but still get the Read only error.

Am I missing something?

Thanks for any help.

@ugifractal

This comment has been minimized.

Copy link

@ugifractal ugifractal commented Aug 1, 2019

I have triple checked the procedure and I don't get that errors. I can only assure that it works in the following conditions:

Distribution base: release "NG Alpha-5 2019-06-08" of Crankshaft (based in Raspbian Stretch)
Raspberry Pi3 Model B and Model B+
Is it possible that you are using another distribution?

I got similar error with @AwsmOli. but I don't try on crankshaft. I test and compile directly openauto under raspbian stretch. the path seem similar also with mine, /home/pi/autoapp

@mikemorain

This comment has been minimized.

Copy link

@mikemorain mikemorain commented Aug 1, 2019

I have triple checked the procedure and I don't get that errors. I can only assure that it works in the following conditions:

Distribution base: release "NG Alpha-5 2019-06-08" of Crankshaft (based in Raspbian Stretch)
Raspberry Pi3 Model B and Model B+
Is it possible that you are using another distribution?

I got similar error with @AwsmOli. but I don't try on crankshaft. I test and compile directly openauto under raspbian stretch. the path seem similar also with mine, /home/pi/autoapp

I'm also getting this error on the latest Raspian. aasdk builds fine, but the build of openauto fails with the same error.

@eduardofilo

This comment has been minimized.

Copy link
Owner Author

@eduardofilo eduardofilo commented Aug 1, 2019

eduardofilo thanks for the reply. I am getting a File is read only error.
I have it in dev mod, which is supposed to make everything read/write I believe but when I do sudo apt-get upgrade it gives me this:

pi@CRANKSHAFT-NG:~ $ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
W: Not using locking for read only lock file /var/lib/dpkg/lock
W: chown to _apt:root of directory /var/cache/apt/archives/partial failed - SetupAPTPartialDirectory (30: Read-only file system)
W: chmod 0700 of directory /var/cache/apt/archives/partial failed - SetupAPTPartialDirectory (30: Read-only file system)
W: Not using locking for read only lock file /var/cache/apt/archives/lock

I am using Putty to ssh into the pi. I am starting off with the NG Alpha-5 2019-06-08 version.
I do a grep and kill any PID with crankshaft and autoapp just to make sure everything is not running but still get the Read only error.

Am I missing something?

Thanks for any help.

What method did you use to activate DEV mode?
I think that second one (creating a file named ENABLE_DEVMODE) doesn't work.

@eduardofilo

This comment has been minimized.

Copy link
Owner Author

@eduardofilo eduardofilo commented Aug 1, 2019

I have triple checked the procedure and I don't get that errors. I can only assure that it works in the following conditions:

Distribution base: release "NG Alpha-5 2019-06-08" of Crankshaft (based in Raspbian Stretch)
Raspberry Pi3 Model B and Model B+
Is it possible that you are using another distribution?

I got similar error with @AwsmOli. but I don't try on crankshaft. I test and compile directly openauto under raspbian stretch. the path seem similar also with mine, /home/pi/autoapp

I'm also getting this error on the latest Raspian. aasdk builds fine, but the build of openauto fails with the same error.

@mikemorain, @AwsmOli and @ugifractal, I have been researching and the problem seem related with QT5 libraries version. My procedure include commands for installing several QT5 packages. In Raspbian Stretch the version of QT5 included is 5.7.1. For example the classes that fail (QListWidget and QListView) are inside this library:

pi@raspberrypi:/usr/lib/arm-linux-gnueabihf $ ls -l libQt5Widgets*
-rw-r--r-- 1 root root    1039 Jan 30  2019 libQt5Widgets.prl
lrwxrwxrwx 1 root root      22 Jan 30  2019 libQt5Widgets.so -> libQt5Widgets.so.5.7.1
lrwxrwxrwx 1 root root      22 Jan 30  2019 libQt5Widgets.so.5 -> libQt5Widgets.so.5.7.1
lrwxrwxrwx 1 root root      22 Jan 30  2019 libQt5Widgets.so.5.7 -> libQt5Widgets.so.5.7.1
-rw-r--r-- 1 root root 5558708 Jan 30  2019 libQt5Widgets.so.5.7.1

But I have seen that the Crankshaft distribution include QT5 even before of installing those packages. This installation is in directory /usr/local/qt5 and is a later version:

pi@CRANKSHAFT-NG:/usr/local/qt5/lib $ ls -l libQt5Widgets*
-rw-r--r-- 1 root staff     712 May 18 00:38 libQt5Widgets.la
-rw-r--r-- 1 root staff    1028 May 18 00:38 libQt5Widgets.prl
lrwxrwxrwx 1 root staff      23 May 18 00:38 libQt5Widgets.so -> libQt5Widgets.so.5.12.3
lrwxrwxrwx 1 root staff      23 May 18 00:38 libQt5Widgets.so.5 -> libQt5Widgets.so.5.12.3
lrwxrwxrwx 1 root staff      23 May 18 00:38 libQt5Widgets.so.5.12 -> libQt5Widgets.so.5.12.3
-rwxr-xr-x 1 root staff 5399908 May 18 00:38 libQt5Widgets.so.5.12.3

This version include the setItemAlignment method that fails in your compilation.

pi@CRANKSHAFT-NG:/usr/local/qt5 $ fgrep -rl setItemAlignment
lib/libQt5Widgets.so.5.12.3
include/QtWidgets/qlistview.h

So the solution seems to be downloading and compiling manually version 5.12.3 of QT5 in your system.

@Stargazzer

This comment has been minimized.

Copy link

@Stargazzer Stargazzer commented Aug 1, 2019

eduardofilo thanks for the reply. I am getting a File is read only error.
I have it in dev mod, which is supposed to make everything read/write I believe but when I do sudo apt-get upgrade it gives me this:
pi@CRANKSHAFT-NG:~ $ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
W: Not using locking for read only lock file /var/lib/dpkg/lock
W: chown to _apt:root of directory /var/cache/apt/archives/partial failed - SetupAPTPartialDirectory (30: Read-only file system)
W: chmod 0700 of directory /var/cache/apt/archives/partial failed - SetupAPTPartialDirectory (30: Read-only file system)
W: Not using locking for read only lock file /var/cache/apt/archives/lock
I am using Putty to ssh into the pi. I am starting off with the NG Alpha-5 2019-06-08 version.
I do a grep and kill any PID with crankshaft and autoapp just to make sure everything is not running but still get the Read only error.
Am I missing something?
Thanks for any help.

What method did you use to activate DEV mode?
I think that second one (creating a file named ENABLE_DEVMODE) doesn't work.

I used both steps 1 and 3.

  1. Via /boot/crankshaft/crankshaft_env.sh -> DEV_MODE=1
  2. Within the Crankshaft settings app, CS Env tab, Enable GPIO, Dev Mode select GPIO which must be set to low to trigger Dev Mode.
@eduardofilo

This comment has been minimized.

Copy link
Owner Author

@eduardofilo eduardofilo commented Aug 1, 2019

I used both steps 1 and 3.

1. Via /boot/crankshaft/crankshaft_env.sh -> DEV_MODE=1

2. Within the Crankshaft settings app, CS Env tab, Enable GPIO, Dev Mode select GPIO which must be set to low to trigger Dev Mode.

First method should work, but that file must be edited mounting the microSD in another computer, not directly over Crankshaft running, since /boot partition is mounted in read-only mode even in DEV MODE. Although you can change that, as explained in the note of Crankshaft WiFi setup.

@Stargazzer

This comment has been minimized.

Copy link

@Stargazzer Stargazzer commented Aug 1, 2019

Yes, I put the sdcard in a USB adapter and then open it in my Windows pc and use Notepad++ to edit the file.
OK let me try the steps in the Crankshaft Wifi set up.

@Stargazzer

This comment has been minimized.

Copy link

@Stargazzer Stargazzer commented Aug 1, 2019

Hmm no luck same read only error.

Crankshaft Management Tool v2.4.0 is executing command...

Reqeust: unlock boot
Before: read-only
After : read-write

Done.
pi@CRANKSHAFT-NG:~ $ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
W: Not using locking for read only lock file /var/lib/dpkg/lock
W: chown to _apt:root of directory /var/cache/apt/archives/partial failed - SetupAPTPartialDirectory (30: Read-only file system)
W: chmod 0700 of directory /var/cache/apt/archives/partial failed - SetupAPTPartialDirectory (30: Read-only file system)
W: Not using locking for read only lock file /var/cache/apt/archives/lock

@eduardofilo

This comment has been minimized.

Copy link
Owner Author

@eduardofilo eduardofilo commented Aug 1, 2019

Hmm no luck same read only error.

Crankshaft Management Tool v2.4.0 is executing command...

Reqeust: unlock boot
Before: read-only
After : read-write

Done.
pi@CRANKSHAFT-NG:~ $ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
W: Not using locking for read only lock file /var/lib/dpkg/lock
W: chown to _apt:root of directory /var/cache/apt/archives/partial failed - SetupAPTPartialDirectory (30: Read-only file system)
W: chmod 0700 of directory /var/cache/apt/archives/partial failed - SetupAPTPartialDirectory (30: Read-only file system)
W: Not using locking for read only lock file /var/cache/apt/archives/lock

Very strange.

Try using the same csmt tool to unlock the main partition. In wiki page don't show the command but it says that executing the command without arguments it will show the full list of commands (although it says that the command is crankshaft I would try with csmt).

Also, maybe you could try with another card.

@mikemorain

This comment has been minimized.

Copy link

@mikemorain mikemorain commented Aug 1, 2019

I have triple checked the procedure and I don't get that errors. I can only assure that it works in the following conditions:

Distribution base: release "NG Alpha-5 2019-06-08" of Crankshaft (based in Raspbian Stretch)
Raspberry Pi3 Model B and Model B+
Is it possible that you are using another distribution?

I got similar error with @AwsmOli. but I don't try on crankshaft. I test and compile directly openauto under raspbian stretch. the path seem similar also with mine, /home/pi/autoapp

I'm also getting this error on the latest Raspian. aasdk builds fine, but the build of openauto fails with the same error.

@mikemorain, @AwsmOli and @ugifractal, I have been researching and the problem seem related with QT5 libraries version. My procedure include commands for installing several QT5 packages. In Raspbian Stretch the version of QT5 included is 5.7.1. For example the classes that fails (QListWidget and QListView) are inside this library:

pi@raspberrypi:/usr/lib/arm-linux-gnueabihf $ ls -l libQt5Widgets*
-rw-r--r-- 1 root root    1039 Jan 30  2019 libQt5Widgets.prl
lrwxrwxrwx 1 root root      22 Jan 30  2019 libQt5Widgets.so -> libQt5Widgets.so.5.7.1
lrwxrwxrwx 1 root root      22 Jan 30  2019 libQt5Widgets.so.5 -> libQt5Widgets.so.5.7.1
lrwxrwxrwx 1 root root      22 Jan 30  2019 libQt5Widgets.so.5.7 -> libQt5Widgets.so.5.7.1
-rw-r--r-- 1 root root 5558708 Jan 30  2019 libQt5Widgets.so.5.7.1

But I have see that the Crankshaft distribution include QT5 even before of installing those packages. This installation is in directory /usr/local/qt5 and is a later version:

pi@CRANKSHAFT-NG:/usr/local/qt5/lib $ ls -l libQt5Widgets*
-rw-r--r-- 1 root staff     712 May 18 00:38 libQt5Widgets.la
-rw-r--r-- 1 root staff    1028 May 18 00:38 libQt5Widgets.prl
lrwxrwxrwx 1 root staff      23 May 18 00:38 libQt5Widgets.so -> libQt5Widgets.so.5.12.3
lrwxrwxrwx 1 root staff      23 May 18 00:38 libQt5Widgets.so.5 -> libQt5Widgets.so.5.12.3
lrwxrwxrwx 1 root staff      23 May 18 00:38 libQt5Widgets.so.5.12 -> libQt5Widgets.so.5.12.3
-rwxr-xr-x 1 root staff 5399908 May 18 00:38 libQt5Widgets.so.5.12.3

This version include the setItemAlignment method that fails in your compilation.

pi@CRANKSHAFT-NG:/usr/local/qt5 $ fgrep -rl setItemAlignment
lib/libQt5Widgets.so.5.12.3
include/QtWidgets/qlistview.h

So the solution seems to be downloading and compiling manually version 5.12.3 of QT5 in your system.

Nice find! I'm building the QT5 build as we speak; will let you know how it goes.

@Stargazzer

This comment has been minimized.

Copy link

@Stargazzer Stargazzer commented Aug 2, 2019

eduardofilo

Finally got it to work. I didn't have another sdcard so I formatted it and reflashed it. Then followed your version of the instructions skipping 5 and 9. I didn't need to use csmt or unlock anything, it just worked in dev mode.
I had to install cmake which wasn't in the instructions but got past that and everything installed correctly and tested it in my car.

Thanks again for all your help.

@LaabNavNoyd

This comment has been minimized.

Copy link

@LaabNavNoyd LaabNavNoyd commented Aug 4, 2019

Can somebody help yet another noob out?

I got to step three. Really long line to type, but that worked. Then step 4

  1. Download 'development' branch of abraha2d's aasdk fork:

$ cd ~
$ git clone -b development https://github.com/abraha2d/aasdk.git

When I type this en press enter I get a message git command not found. Am I doing something wrong?

@Stargazzer

This comment has been minimized.

Copy link

@Stargazzer Stargazzer commented Aug 5, 2019

Can somebody help yet another noob out?

I got to step three. Really long line to type, but that worked. Then step 4

  1. Download 'development' branch of abraha2d's aasdk fork:

$ cd ~
$ git clone -b development https://github.com/abraha2d/aasdk.git

When I type this en press enter I get a message git command not found. Am I doing something wrong?

Hello LaabNavNoyd,

I was getting a Read Only error even after following the directions. For me I reformatted my SD card, re-flashed the latest image and then followed these instructions which Eduardofilo created. The following instructions are just the edited short version with no optional steps like in the original. This is what worked for me:

Trimed down, showing only the corrections, skipping 5 and 9.

Starting point is release "NG Alpha-5 2019-06-08" of Crankshaft (https://github.com/opencardev/crankshaft/releases/tag/csng-alpha5). Tested on Raspberry Pi3 Model B and Model B+.

I used first method changing DEV_MODE=1 in /boot/crankshaft/crankshaft_env.sh mounting the microSD in my computer.

Update distribution and install some packages:

sudo apt-get upgrade
sudo apt-get install -y libboost-all-dev libusb-1.0.0-dev libssl-dev cmake libprotobuf-dev protobuf-c-compiler protobuf-compiler libqt5multimedia5 libqt5multimedia5-plugins libqt5multimediawidgets5 qtmultimedia5-dev libqt5bluetooth5 libqt5bluetooth5-bin qtconnectivity5-dev pulseaudio librtaudio-dev librtaudio5a

  1. Download 'development' branch of abraha2d's aasdk fork:

cd ~
git clone -b development https://github.com/abraha2d/aasdk.git

  1. Compile aasdk:

cd ~
mkdir aasdk_build
cd aasdk_build
cmake -DCMAKE_BUILD_TYPE=Release ../aasdk
make

  1. Install some packages to compile ilclient:

sudo apt-get install -y libraspberrypi-doc libraspberrypi-dev
cd /opt/vc/src/hello_pi/libs/ilclient
make

  1. Download 'crankshaft-ng' branch of abraha2d's openauto fork:

cd ~
git clone -b crankshaft-ng https://github.com/abraha2d/openauto.git

  1. Compile openauto:

cd ~
mkdir openauto_build
cd openauto_build
sudo apt-get install -y libtag1-dev libblkid-dev
cmake -DCMAKE_BUILD_TYPE=Release -DRPI3_BUILD=TRUE -DAASDK_INCLUDE_DIRS="/home/pi/aasdk/include" -DAASDK_LIBRARIES="/home/pi/aasdk/lib/libaasdk.so" -DAASDK_PROTO_INCLUDE_DIRS="/home/pi/aasdk_build" -DAASDK_PROTO_LIBRARIES="/home/pi/aasdk/lib/libaasdk_proto.so" ../openauto
make

  1. Replace binary in Crankshaft:

sudo cp /home/pi/openauto/bin/autoapp /usr/local/bin/autoapp

  1. Revert DEV mode change from step 1 and boot normally.
@eduardofilo

This comment has been minimized.

Copy link
Owner Author

@eduardofilo eduardofilo commented Aug 5, 2019

Can somebody help yet another noob out?

I got to step three. Really long line to type, but that worked. Then step 4

1. Download 'development' branch of abraha2d's aasdk fork:

$ cd ~
$ git clone -b development https://github.com/abraha2d/aasdk.git

When I type this en press enter I get a message git command not found. Am I doing something wrong?

Hi @LaabNavNoyd

The problem is that your system doesn't have installed the git package. The solution is to execute the command:

$ sudo apt-get install git

But the git package is installed by default in "NG Alpha-5 2019-06-08" of Crankshaft, that it is the first requirement for this guide to work. So I fear that you are using another distribution and will have other problems once git is installed (like compiling openauto in former comments).

Regards...

@LaabNavNoyd

This comment has been minimized.

Copy link

@LaabNavNoyd LaabNavNoyd commented Aug 7, 2019

Can somebody help yet another noob out?
I got to step three. Really long line to type, but that worked. Then step 4

1. Download 'development' branch of abraha2d's aasdk fork:

$ cd ~
$ git clone -b development https://github.com/abraha2d/aasdk.git
When I type this en press enter I get a message git command not found. Am I doing something wrong?

Hi @LaabNavNoyd

The problem is that your system doesn't have installed the git package. The solution is to execute the command:

$ sudo apt-get install git

But the git package is installed by default in "NG Alpha-5 2019-06-08" of Crankshaft, that it is the first requirement for this guide to work. So I fear that you are using another distribution and will have other problems once git is installed (like compiling openauto in former comments).

Regards...

Thank you! Stargazzer you as well. But after reading I had a older version I restarted and now it works. Thank you

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment