Skip to content
View in the app

A better way to browse. Learn more.

The AVSIM Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

LMN on Raspberry Pi 4

Featured Replies

Standard question: did you try to find/install Marble before tried to compile them? 🙂

Regards,
Piotr

Never give up ...  - here are details of the whip-round: https://zrzutka.pl/en/pewr2d  -> to help my younger son fights against Acute Lymphoblastic Leukemia (blood cancer).

  • Replies 100
  • Views 9.2k
  • Created
  • Last Reply

Try to get rid of the useless stuff in Marble. I compile it like:
 

cd $APROJECTS/build-marble-release

cmake -DCMAKE_BUILD_TYPE=Release -DSTATIC_BUILD=TRUE -DQTONLY=TRUE -DBUILD_MARBLE_EXAMPLES=NO -DBUILD_INHIBIT_SCREENSAVER_PLUGIN=NO -DBUILD_MARBLE_APPS=NO -DBUILD_MARBLE_EXAMPLES=NO -DBUILD_MARBLE_TESTS=NO -DBUILD_MARBLE_TOOLS=NO -DBUILD_TESTING=NO -DBUILD_WITH_DBUS=NO -DMARBLE_EMPTY_MAPTHEME=YES -DMOBILE=NO -DWITH_DESIGNER_PLUGIN=NO -DWITH_Phonon=NO -DWITH_Qt5Location=NO -DWITH_Qt5Positioning=NO -DWITH_Qt5SerialPort=NO -DWITH_ZLIB=NO -DWITH_libgps=NO -DWITH_libshp=NO -DWITH_libwlocate=NO -DCMAKE_INSTALL_PREFIX=$APROJECTS/Marble-release -DEXEC_INSTALL_PREFIX=$APROJECTS/Marble-release -DCMAKE_PREFIX_PATH=/home/alex/Qt/5.12.8/gcc_64/ ../marble/

No need to pull in code for antique serial port connections.🙂

You can consider yourself happy. The Linux build is the easiest one.🙃 Windows is more difficult and macOS was a nightmare to set up.

Alex

Edit: BTW: What about cross compiling from Linux/Intel to Raspi/Arm? Qt already comes with the Libraries for Android/ARM.

Edited by albar965

  • Author

Thank You albar965

I have have tried Your new suggestion from above. Again it stops with this error:

/home/pi/projects/marble/src/plugins/render/gpsinfo/GpsInfo.cpp:87:24: error: return type ‘class QIcon’ is incomplete
 QIcon GpsInfo::icon () const
                                    ^~~~~

/home/pi/projects/marble/src/plugins/render/gpsinfo/GpsInfo.cpp: In member function ‘virtual void Marble::GpsInfo::icon() const’:
/home/pi/projects/marble/src/plugins/render/gpsinfo/GpsInfo.cpp:89:51: error: invalid use of incomplete type ‘class QIcon’
     return QIcon(QStringLiteral(":/icons/gps.png"));
                                                                            ^

In file included from /usr/include/aarch64-linux-gnu/qt5/QtCore/qobject.h:54,
                 from /usr/include/aarch64-linux-gnu/qt5/QtCore/QObject:1,
                 from /home/pi/projects/marble/src/lib/marble/RenderPlugin.h:17,
                 from /home/pi/projects/marble/src/lib/marble/AbstractFloatItem.h:18,
                 from /home/pi/projects/marble/src/plugins/render/gpsinfo/GpsInfo.h:20,
                 from /home/pi/projects/marble/src/plugins/render/gpsinfo/GpsInfo.cpp:11:
/usr/include/aarch64-linux-gnu/qt5/QtCore/qmetatype.h:1943:1: note: forward declaration of ‘class QIcon’
 QT_FOR_EACH_STATIC_GUI_CLASS(QT_FORWARD_DECLARE_STATIC_TYPES_ITER)
 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [src/plugins/render/gpsinfo/CMakeFiles/GpsInfo.dir/build.make:80: src/plugins/render/gpsinfo/CMakeFiles/GpsInfo.dir/GpsInfo.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:2278: src/plugins/render/gpsinfo/CMakeFiles/GpsInfo.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

 

Later today I will try to install QT for win10

Regards.

Sten

 

 

Hi Sten,

these might be includes missing. Looks like a #include <QIcon> is missing in the file. This can happen across different Qt versions. LNM (and Marble) should compile with Qt 5.9 up to 5.15.

You can simply add the missing include and send me a patch or pull request.

Make sure you use the right repo and branch (https://github.com/albar965/marble/tree/lnm/1.1).

Alex

  • Author

After a couple of day with banging my head at every wall in my house in frustration, I have now Littlenavmap running via QT Creator on the RPI4. And when connecting via network I can see the plane on the right spot!

That is the good news!  The bad news is that it is only X11!

The main window shows Little Navmap 2.6.11 - XP11 (N)

About shows

Version2.6.11 (revision ba337151)

atools Version 3.6.11 (revision e04077c3

openSSL 1.1.1d 10sep 2019 (build and Library)

 

  1. What is wrong?
  2. And how can I get it to recognize MSFS?
  3. I can't start lmn from terminal: ./littlenavmap: /littlenavmap-rel $ ./littlenavmap
    ./littlenavmap: error while loading shared libraries: libmarblewidget-qt5.so.25: cannot open shared object file: No such file or directory
    But it is in projects/Marble-release/src/lib/marble!!

 

I have compiled these versions

/marble $ git branch -a
* lnm/1.1
  remotes/origin/lnm/1.1

and

atools $ git branch -a
* release/3.6
  remotes/origin/release/3.6

/Sten

and

/littlenavmap $ git branch -a
* release/2.6
  remotes/origin/release/2.6

 

 

 

 

 

 

Hi Sten,

I know this head banging far too good.🙃 But it seems you made it. Congatulations! Send me a pull request on Github if any code changes were needed.

The branches are ok. Looks strange but atools is always a major number ahead for historical reasons.

About the XP only thing: This is normal. LNM shows only X-Plane on Linux and macOS since it is the only simulator running on these OS. No way to recognize MSFS there.
You have to create a scenery library database (Sqlite file) on the flying computer and then copy it to the remote.
https://www.littlenavmap.org/manuals/littlenavmap/release/2.6/de/NETWORK.html
Do not copy the MSFS files and do not use a share to load the library. It is not needed.

Ale

  • Author

Thank you  Alex

Sadly, I can not load the databases!

I used the path: pi/projects/little_navmap_db.

The answer from the program is: " Cannot read base path "/home/pi//projects/little_navmap_db".

Reason

Directory "/home/pi/projects/little_navmap_db/Resources/default data" does not exist.

If I create those 2 directories the load command just append the Resources/default data in the error message:

Directory "/home/pi/projects/little_navmap_db/Resources/default data/Resources/default" does not exist.

on my win10 those directories does not exist

/Sten

 

 

 

Edited by smkr

1) ".../Resources/default data" - this name sounds familiar to me 🙂
Similar directory exists under XP11 installation tree and contains all XP11 default navigation data.

2) It seems the path "pi/projects/little_navmap_db" is glued to /home.
Because Raspbian is а  Linux , IMHO you have to create path inside your home directory.
It means if your username you are working under is for example "smkr", then your home directory should be "/home/smkr" .
If you under such account directory create subdirectory "/home/smkr/projects/little_navmap_db" and put databases there, so IMHO you should in such a case give/write path: "smkr/projects/little_navmap_db".


Regards,
Piotr

Never give up ...  - here are details of the whip-round: https://zrzutka.pl/en/pewr2d  -> to help my younger son fights against Acute Lymphoblastic Leukemia (blood cancer).

  • Author

hi Piotr

The path to the projects directory is: home/pi/projects/

I just use default username in RPI.

/Sten

But is it either a "home/pi/projects" or either a "/home/pi/projects"? - because it's a great difference in UNIX like systems if you don't start at root / directory tree (second option is an absolute path).

Regards,
Piotr

Never give up ...  - here are details of the whip-round: https://zrzutka.pl/en/pewr2d  -> to help my younger son fights against Acute Lymphoblastic Leukemia (blood cancer).

  • Author

It is absolute path.

it is /home/pi/projects. 

so the path to the db is /home/pi/projects/little_navmap_db.

So everythings is inside my account with my ownership.

 

/Sten

1 hour ago, smkr said:

The answer from the program is: " Cannot read base path "/home/pi//projects/little_navmap_db".

OK. So, now it's necessary to check a rights to the directory tree.

Please give a command "ls -alZ" for a given directories:
1)  /
2) /home
3) /home/pi
4) /home/pi/projects
5) /home/pi/projects/little_navmap_db

and write the output in another post here**. I suppose the problems with permissions.

Regards,
Piotr

[edit]
ps. and also I have to know what is the default group the user "pi" is belonged to. If I remember well you get this groupname by "id -gn pi"

 

[edit2]
**if the outputs will be long, write them to the file and put on external server but write the link to download here

[edit3]
Have you got a SELinux enabled on Raspbian or not? And if it's enabled - which mode was chosen - enforcing or permissive?
Another option is also FACL lists (if you installed this package) but in default installation this isn't shipped with Raspbian.



 

Edited by ppgas

Never give up ...  - here are details of the whip-round: https://zrzutka.pl/en/pewr2d  -> to help my younger son fights against Acute Lymphoblastic Leukemia (blood cancer).

You do not have to load the databases. See the link I posted above. Simply copy the database from the flying computer to /home/pi/.config/ABarthel/little_navmap_db.
No loading needed since the db is ready to use.

If you run LNM as user "pi" make sure that the db is owned and accessible by pi and not root. Below from Ubuntu on my development system:

$ ls -lh $HOME/.config/ABarthel/little_navmap_db/little_navmap_msfs.sqlite
-rw-r--r-- 1 alex alex 714M Apr 23 13:46 /home/alex/.config/ABarthel/little_navmap_db/little_navmap_msfs.sqlite

Edit: This path is fixed and not related to the projects folder where LNM was built.

Alex

Edited by albar965

Alex - it's also possible that his parent directory (or directories up) have got improper permissions set and that's why there is no access to databases beneath.
That's why I've asked about different things concern directories permissions (at Linux there are usually three kinds permissions possible - system permissions, FACL lists and SELinux properties).

At such a case the access is impossible even when the file itself has got proper permissions -rw-r--r-- (0644/644 in octal).
Directories have to got set bit x  - in Unix like systems it's execute bit only for files, for directories it means it's possible to change/enter into directory.
So ,if the parent directory has got set permissions -rwx-r-xr-x (0755/755 octal) - it's okay.
But if you take the "x" bit from directory permissions to get -rw-r--r-- (similar like database files) you will be unable to get access into the files inside given directory.

The only accounts that bypass system permissions in UNIX systems are root accounts , normal user always has to set "x" bit for directory to get access
(and r/w rights depend on required read/write permissions).
But I suggest don't use root account for daily work ... 😛

Regards,
Piotr

Edited by ppgas

Never give up ...  - here are details of the whip-round: https://zrzutka.pl/en/pewr2d  -> to help my younger son fights against Acute Lymphoblastic Leukemia (blood cancer).

Archived

This topic is now archived and is closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.