Cruisers Forum
 


Reply
  This discussion is proudly sponsored by:
Please support our sponsors and let them know you heard about their products on Cruisers Forums. Advertise Here
 
Thread Tools Search this Thread Rate Thread Display Modes
Old 26-08-2020, 18:09   #2626
Marine Service Provider
 
bdbcat's Avatar

Join Date: Mar 2008
Posts: 7,401
Re: Beta Test / Technical

Rick...
I show no blocks on that IP.
You really should fix your email system. Sometimes we need to speak privately, and this forum and github issues tracker are not the way....


Dave
bdbcat is offline   Reply With Quote
Old 26-08-2020, 18:23   #2627
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,633
Images: 2
Re: Beta Test / Technical

Hum, you're not getting my email?
I may have to get another email server, that's not a simple process unfortunately, but our current server has gone downhill, I agree.


No blocks on that IP. ...The devil, now it works! This morning it didn't. Thanks.



Quote:
Originally Posted by bdbcat View Post
Rick...
I show no blocks on that IP.
You really should fix your email system. Sometimes we need to speak privately, and this forum and github issues tracker are not the way....


Dave
rgleason is offline   Reply With Quote
Old 26-08-2020, 18:27   #2628
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,633
Images: 2
Re: Beta Test / Technical

Quote:
Originally Posted by stevead View Post
Thanks Rick,

I thought there was an "elegant" solution using one of the CMAKE commands such as
Code:
set(CMAKE_MACOSX_RPATH 1)
set(CMAKE_INSTALL_RPATH "path to the lib")
but they didn't work.

in the end I used a sledgehammer
Code:
ADD_CUSTOM_COMMAND( POST_BUILD
      TARGET ${PACKAGE_NAME} 
      COMMAND install_name_tool -add_rpath "@loader_path/./../SharedSupport/plugins/${PACKAGE_NAME}/data/drivers" "lib${PACKAGE_NAME}.dylib"
       COMMAND install_name_tool -change libTouCAN.0.1.dylib @rpath/libTouCAN.0.1.dylib lib${PACKAGE_NAME}.dylib)
Ugly, but it works.

My skill level is such that I am just happy if it works. I hope someday to get to the point of 'elegant' but that is going to take many years.


Jon has the ci/extras folder https://github.com/rgleason/testplug...ster/ci/extras
supports two types of scripts. You can read the description. Perhaps a script file would work to copy the files and folders into the area where the tarball is built? Might be simpler, more elegant and more familiar to you?
rgleason is offline   Reply With Quote
Old 27-08-2020, 15:56   #2629
opo
Registered User

Join Date: Aug 2020
Posts: 1
Re: Beta Test / Technical

Hello,

I'm new to the forum, OpenCPN and sailing in general. I'm trying to build OpenCPN from source in Fedora 29. But the build fails with:

/home/opo/git/OpenCPN/src/chartsymbols.cpp:617:33: error: cannot convert ‘wxString’ to ‘const char*’
strncpy(attVal, nodeText, 7);

I believe it has to do with some ansi conversion in regards to wx libs. Am I missing some config step?

Sorry in advance if this is not the right place to ask this question.

Cheers
opo is offline   Reply With Quote
Old 31-08-2020, 12:47   #2630
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,633
Images: 2
Re: Beta Test / Technical

Why is it bad practice to use -fPIC to get Ubuntu builds to work?
This is a flag to the compiler to build position independent code.
If we are not supposed to use -fPIC, then what needs to be done to get the Ubuntu builds to complete?


See Watchdog https://github.com/rgleason/watchdog_pi
These ubuntu builds would succeed if -fPIC is used.

(If I don't get a good anwer, I am just going to use it again.)


BTW Inclusive Boundaries now work, when we build Ocpn_draw and Watchdog with JSON Validation turned off.
rgleason is offline   Reply With Quote
Old 01-09-2020, 04:57   #2631
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,633
Images: 2
Re: Beta Test / Technical

No answer, so I am just going to use it again because it works.



Quote:
Originally Posted by rgleason View Post
Why is it bad practice to use -fPIC to get Ubuntu builds to work?
This is a flag to the compiler to build position independent code.
If we are not supposed to use -fPIC, then what needs to be done to get the Ubuntu builds to complete?


See Watchdog https://github.com/rgleason/watchdog_pi
These ubuntu builds would succeed if -fPIC is used.

(If I don't get a good anwer, I am just going to use it again.)


BTW Inclusive Boundaries now work, when we build Ocpn_draw and Watchdog with JSON Validation turned off.
rgleason is offline   Reply With Quote
Old 01-09-2020, 05:28   #2632
Registered User
 
transmitterdan's Avatar

Join Date: Oct 2011
Boat: Valiant 42
Posts: 6,008
Re: Beta Test / Technical

Quote:
Originally Posted by rgleason View Post
Why is it bad practice to use -fPIC to get Ubuntu builds to work?
It is not a “bad” practice and is required for some systems so they can support shared object files. Using PIC code is somewhat less efficient so most projects don’t use it for the main executable if it is not required.
transmitterdan is offline   Reply With Quote
Old 02-09-2020, 09:38   #2633
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,633
Images: 2
Re: Beta Test / Technical

Thank you Transmitter Dan for the clarification. If I could rewrite it to not require -fPIC, I would do that, but right now I am going to reinstate it to get the plugin built and released again.

Note about Cloudsmith Account Changes: Lee gave us all a heads up about these changes some time ago, so they should be no surprise Deprecating User-based Repositories. As a consequence, we are well prepared as an organization OpenCPN and we are using Cloudsmith OpenCPN repositories for the many of the plugins.

If you are a plugin programmer who is using user-repositories for the Opencpn Plugin Master Catalog, you may have to Push new metadata files, because the user-repository path names and slug will likely change with these Cloudsmith changes and deprecation of user-accounts.

The OpenCPN organization repositories will continue to work as expected.

If you are an OpenCPN plugin programmer and not already included in the Plugin Team, and wish to be included:
1. Make your username visible so that we can see it and add it to the Plugin Team.
2. Notify me or one of the managers, that you have done so, and that you wish to be added to the OpenCPN organization Plugin Team.

Thank you.
rgleason is offline   Reply With Quote
Old 03-09-2020, 05:08   #2634
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,633
Images: 2
Re: Beta Test / Technical

Is set(CMAKE_POSITION_INDEPENDENT_CODE ON)the same as using -fpic or the larger scale -fPIC?
Is this some standard trigger or is it just for shipdriver's setup?
Looks like it is a standard cmake call
rgleason is offline   Reply With Quote
Old 27-09-2020, 02:21   #2635
Registered User

Join Date: Aug 2016
Location: Stockholm, Sweden
Posts: 272
Re: Beta Test / Technical

Got an odd problem vith OCPN_API_VERSION_MINOR when trying to implement frontend2.
API_VERSION_MINOR is currently set in both 'CMakeLists.txt' using 'set(OCPN_API_VERSION_MINOR "8")' and in 'api-16/ocpn_plugin.h' using '#define API_VERSION_MINOR 8'. That way the application loads and displays ok.

As I understand it frontend2 requires 'API_VERSION_MINOR' be set to (at least) '16' and setting that value in 'api-16/ocpn_plugin.h' works just fine. Setting it in 'CMakeLists.txt' causes the plugin to fail as it no longer shows in 'toolbox -> Plugins' and the error message in the OpenCPN log says:
/usr/local/lib/opencpn/libgps-odometer_pi.so cannot be loaded
PlugInManager: Unloading invalid PlugIn, API version 116

So: The plugin loads and displays ok if 'API_VERSION_MINOR' is set to either '8' or '16' in 'api-16/ocpn_plugin.h' but must be set to '8' in 'CMakeLists.txt' to be accepted by OpenCPN.

The project can be found at Github/LennartG-Sve for further information.

I'm far from done with the implementation but are following the steps in testplugin -> Frontend2.md and glancing at a few other implementations as well. Note that I'm working on Linux (Ubuntu 20.04) and have not touched a Windows machine in years so this is as far as I got right now.

Thanks in advance for any assistence, and sorry for the extended post.

/LennartG
LennartG is offline   Reply With Quote
Old 27-09-2020, 09:34   #2636
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,633
Images: 2
Re: Beta Test / Technical

LennartG,


I have not touched ocpn_plugins.h except to update it to the most current version when moving to frontend2. This is the way to do it. Don't change the file, OK?
Take a copy of ocpn_plugins.h from most recent OpenCPN.


One other thing that has caused me trouble is not finding all the locations in the files which call out for or set the ocpn_plugin version. What I try to do is search all the likely files for this using "ocpn_plugin" and then if it is a different version than the current one "116" change it.


I will take a look at your repos shortly.
rgleason is offline   Reply With Quote
Old 27-09-2020, 09:52   #2637
Registered User

Join Date: Aug 2016
Location: Stockholm, Sweden
Posts: 272
Re: Beta Test / Technical

Rick,
got a PM from Steven (thank you) that I had omitted some changes in odometer_pi.cpp/h. Fixed that and now it compiles and works ok.
Will continue up to the next brick wall . . . .
Thanks to both opf you.
/LennartG
LennartG is offline   Reply With Quote
Old 27-09-2020, 14:06   #2638
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,633
Images: 2
Re: Beta Test / Technical

Good job Lennart, I was just going to look at your repos. Thanks Steve.
rgleason is offline   Reply With Quote
Old 19-11-2020, 03:51   #2639
Registered User

Join Date: May 2012
Posts: 1,205
Re: Beta Test / Technical

Problem with UKTides for MacOSX.

https://github.com/Rasbats/UKTides_pi

Using ci, with the script in the github repo.

With a bitmap for displaying the tidal stations there is a conflict between the OpenCPN Framework wxWidgets libwx*dylibs and usr/local/lib libwx*dylibs.

Code:
objc[1010]: Class wxTextFieldCell is implemented in both /Applications/OpenCPN.app/Contents/Frameworks/libwx_osx_cocoau_core-3.1.2.0.0.dylib (0x10dab9418) and /usr/local/lib/libwx_osx_cocoau_core-3.1.dylib (0x1164f8c00). One of the two will be used. Which one is undefined.
objc[1010]: Class wxImageTextCell is implemented in both /Applications/OpenCPN.app/Contents/Frameworks/libwx_osx_cocoau_core-3.1.2.0.0.dylib (0x10dab9468) and /usr/local/lib/libwx_osx_cocoau_core-3.1.dylib (0x1164f8c50). One of the two will be used. Which one is undefined.
objc[1010]: Class wxCocoaOutlineView is implemented in both /Applications/OpenCPN.app/Contents/Frameworks/libwx_osx_cocoau_core-3.1.2.0.0.dylib (0x10dab94b8) and /usr/local/lib/libwx_osx_cocoau_core-3.1.dylib (0x1164f8ca0). One of the two will be used. Which one is undefined.
objc[1010]: Class wxNSCustomOpenGLView is implemented in both /Applications/OpenCPN.app/Contents/Frameworks/libwx_osx_cocoau_gl-3.1.2.0.0.dylib (0x10d4a3668) and /usr/local/lib/libwx_osx_cocoau_gl-3.1.dylib (0x1136da618). One of the two will be used. Which one is undefined.
2020-11-19 11:06:58.141 OpenCPN[1010:22286] It does not make sense to draw an image when [NSGraphicsContext currentContext] is nil.  This is a programming error. Break on void _NSWarnForDrawingImageWithNoCurrentContext(void) to debug.  This will be logged only once.  This may break in the future.
z
I want to avoid using waypoints for the locations to stop the user moving the positions.

Is there a way for the plugin to define using libwx* dylibs from the OpenCPN Framework and not usr/local/lib.

Thanks.

Mike
Rasbats is offline   Reply With Quote
Old 20-11-2020, 11:07   #2640
Registered User

Join Date: May 2012
Posts: 1,205
Re: Beta Test / Technical

Problem with MacOSX and dylibs has probably been solved. The script 'fix-macos-libs.sh' did not have execute permission.

Mike
Rasbats is offline   Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Beta Marine Diesel michaelmrc Engines and Propulsion Systems 48 23-03-2016 13:44
Need some technical advice....antennas. Just a Tinch Marine Electronics 15 01-12-2007 15:57
Blue Sea Systems Technical Brief GordMay Electrical: Batteries, Generators & Solar 0 16-03-2007 04:16
technical difficulties witchcraft The Sailor's Confessional 1 30-05-2005 14:09
Dow Corning Technical Manual GordMay The Library 0 12-04-2005 16:25

Advertise Here


All times are GMT -7. The time now is 18:37.


Google+
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Social Knowledge Networks
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc.

ShowCase vBulletin Plugins by Drive Thru Online, Inc.