Opencpn(1)

πŸ“¦
version 5.14.1 Β· 3 versions
, in alpine 3.24, nixos 26.05, nixpkgs unstable, ubuntu resolute, ubuntu stonking

✨ NAME ✨

opencpn β€” Chartplotter and GPS Navigation Software πŸ’–

okay so bestie, this is the General Commands Manual page for opencpn, and we're about to go through every single flag together, no skips, no skimming, periodt. πŸŽ€


🌸 SYNOPSIS 🌸

opencpn [options]

πŸ¦‹ DESCRIPTION πŸ¦‹

OpenCPN is a chartplotter and navigation GUI program that has your back for navigating under way and for planning your routes. It supports a huge range of chart formats thanks to a plugin system, and other plugins bring support for stuff like radar, AIS and weather maps. ✨

The program is localized in 20+ languages and ported to several OS including MacOS, Windows and Linux. It's giving multilingual icon behavior, honestly. πŸ‘‘


πŸ’… OPTIONS FOR STARTING OPENCPN πŸ’…

  • -h, --help β€” show help info. your lil "what do I do now" button 🫢
  • -p, --portable β€” run in portable mode.
  • -l, --loglevel=<level> β€” set how much information gets logged. level is any of trace, debug, info, message, warning or error, and it defaults to info if it's not set in the environment; peep ENVIRONMENT below. πŸ“
  • -c, --configdir=<directory> β€” use an alternative configuration directory instead of ~/.openpcn on Linux or MacOS.
  • -f, --fullscreen β€” switch to full screen mode on start.
  • -G, --no_opengl β€” disable OpenGL video acceleration. heads up: this setting will be remembered.
  • -g, --rebuild_gl_raster_cache β€” rebuild the OpenGL raster cache on start.
  • -D, --rebuild_chart_db β€” rescan chart directories and rebuild the chart database.
  • -P, --parse_all_enc β€” convert all S-57 charts to OpenCPN's internal format on start.
  • -u, --unit_test_1:<num> β€” display a slideshow of num charts and then exit. Zero or negative num specifies no limit. 🎞️
  • -s, --safe_mode β€” run without plugins, OpenGL and other possibly problematic features. It is still possible to uninstall plugins in this mode.

πŸ’œ OPTIONS FOR MANIPULATING RUNNING OPENCPN πŸ’œ

  • -r, --remote β€” run commands on a running instance instead of starting opencpn. It exits with an error code if no running opencpn instance is found. 😭
  • -R, --raise β€” raise the opencpn window so it sits on top of other windows; requires --remote. This is the default behaviour if opencpn is invoked without options and arguments and there already is a running instance. main character window energy fr fr πŸ’…
  • -e, --get_rest_endpoint β€” print the url for connecting to the local opencpn REST server, e.g. http://localhost:8000. Requires --remote.
  • -q, --quit β€” make the remote instance exit. Requires --remote.

🧚 PLUGIN LOADING 🧚

Plugin loading depends on the opencpn main program being able to locate the plugin object file, and on the plugin being able to locate its own data.

On Linux, the main program searches for plugin .so-files in two locations. The first is ~/.local/lib/opencpn.

The second is @install-dir@/../lib/opencpn, where @install-dir@ is the location where opencpn is installed. If for example opencpn is installed in /usr/bin, plugins will be loaded from /usr/lib/opencpn.

On other platforms plugins are also loaded from two different locations, one of which is used primarily for system plugins and requires administrative privileges. The other is a user-writable location used by the plugin manager.

A plugin's data directory is a path ending with opencpn/plugins/<plugin_name>. On Linux, this is by default searched in ~/.local/share:/usr/local/share:/usr/share. This search path is overridden by XDG_DATA_DIRS as defined by the freedesktop spec. Only plugins adapted for this (i.e., using GetPluginDataDir()) handle this properly. 🫠

On other platforms plugin data directories are located in similar locations which also must be retrieved at runtime using GetPluginDataDir().


🌈 LIBRARY LOADING AND LD_LIBRARY_PATH 🌈

If LD_LIBRARY_PATH exists in the environment, opencpn uses it without modifications.

Otherwise LD_LIBRARY_PATH is set to the same path as the one plugins are loaded from, see above. This ensures that helper binaries can load possible libraries installed in the same directories as the plugin. πŸ”₯


🌟 ENVIRONMENT 🌟

  • OPENCPN_PLUGIN_DIRS β€” plugin load path, see PLUGIN LOADING. If it exists, it overrides all default entries. The path is ';'-separated on Windows but uses ':' on other platforms.
  • OPENCPN_LOGLEVEL β€” default loglevel if it isn't defined on the command line using -l/--loglevel. See the --loglevel option for the allowed values.
  • OPENCPN_FATAL_ERROR β€” if defined, displays the message and exits on startup. πŸ’€
  • OPENCPN_COMPAT_TARGET β€” opencpn normally only loads plugins with a specific ABI. OPENCPN_COMPAT_TARGET overrides the built-in default and makes it possible to load plugins with another ABI. The format is platform:version, for example debian:13.
⚠️ bestie listen: attempts to load plugins this way may crash opencpn on start. not me risking it all for a plugin 😭

πŸ“ FILES πŸ“

  • ~/.opencpn/opencpn.log β€” system log file, a genuinely useful tool to solve problems. your lil detective notebook πŸ•΅οΈβ€β™€οΈ

πŸŽ€ SEE ALSO πŸŽ€


and that's the whole page, bestie, you ate it πŸ’– this one's the Opencpn(1) page, dated July 2018 β€” iconic vintage behavior, no cap. go navigate something gorgeous πŸ¦‹βœ¨

πŸ“¦ where this page comes from