Comments (6)
I am working on this package now, trying to get it ready for an indigo release.
It currently fails some unit tests on Trusty.
from geographic_info.
The failure seems due to g++ language incompatibilities on Trusty.
from geographic_info.
I've reproduced the issue on my Trusty VM. The test context is:
geodesy::UTMPoint pt1(e, n, alt, z, b);
geographic_msgs::GeoPoint ll;
convert(pt1, ll);
geodesy::UTMPoint pt2;
convert(ll, pt2);
Where the troublesome convert
function is templated on both arguments:
template <class From, class To>
void convert(const From &from, To &to)
{
fromMsg(toMsg(from), to);
}
The prototypes for UTMPoint -> GeoPoint are in utm.h. It seems odd to me that the compile insists the prototypes be defined in advance of convert function, or at least that's my interpretation of the "xxxx declared here, later in the translation unit" message. Doubly odd that this is something which has changed between GCC versions.
from geographic_info.
Here it is, under "Name Lookup Changes": https://gcc.gnu.org/gcc-4.7/porting_to.html
I've fooled around with it for a bit, but I'm pretty stumped— short of adding -fpermissive
, it seems like the only way to fix this would be a refactor that moves the convert
functions out to a separate header which has to be included after all the toMsg/fromMsg functions you intend to use it with have already been declared.
I'm certain I'm not really understanding it, though.
from geographic_info.
Both functions (convert
and fromMsg
) are using each other. Do the following to resolve the compiler error:
- change the two templated
convert
functions to be declarations only - move the definition of these to the end of the file (at least behind the definition of
fromMsg
andtoMsg
)
from geographic_info.
Fixed by @mikepurvis with help from you, @dirk-thomas.
Thanks!
from geographic_info.
Related Issues (19)
- geodesy: add Universal Polar Stereographic bands to UTM coordinate implementation
- geographic_info: metapackage deprecation warning is misleading
- Indigo release HOT 7
- Jade release? HOT 2
- geodesy: add support for conversions to and from ECEF HOT 14
- UTM and Euclidean geometry HOT 3
- geodesy: convert C++ interfaces to use the PROJ.4 Cartographic Projections library.
- Bad UTM Transformation
- convert to catkin for Hydro HOT 1
- undefined reference to `geodesy::toMsg(geodesy::UTMPose const&)' HOT 2
- Release geographic_info to Noetic? HOT 2
- geodesy: remove deprecated geodesy.gen_uuid module HOT 6
- [ROS2 Foxy] Cannot use conversion functions from `geodesy` HOT 2
- geodesy: make Python code work with both Python 2.7 and Python 3.3
- Azimuth message type?
- Fix for UTM Conversion to LatLon in southern hemisphere.
- geodesy: remove unnecessary dependencies on roscpp and rospy
- ROS Hydro header file installation bug HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from geographic_info.