electronics made easy
This is the old fritzing discussion forum. Search it for valuable information from 2009 to 2015.
Building fritzing 2010.04.16 under Linux fails in sketchwidget.cpp line 2119
with the error message "Class QPointF has no member manhattanLength"
This looks like some confusion between QPoint and QPointF - does anyone
have a patch?
Thanks - Will
I think manhattanLength was added as of Qt 4.6, so you must be building with an earlier version.
Here's the definition: if we have two points, A(X1, Y1) and B(X2, Y2), the Manhattan length between the two points is the sum of the absolute values of (X2-X1) and (Y2-Y1).
No, I'm building with 4.6. The problem is QPoint has a manhattanLength
attribute and QPointF doesn't, so there's something off in the code, which
mixes the two types.
Please check again--is it possible you have multiple versions of Qt installed?
I'm looking both at the Qt documentation and source for 4.6.0 and manhattanLength() is defined for both QPoint and QPointF. I am also building under Linux using QtCreator under Qt 4.6.1 with no issues.
No, I have only one Qt version installled, 4.6.2. I'll see if I can revert to 4.6.1 and try again.
Under Preferences->Qt4->Qt Versions it lists all the versions of Qt on the system and shows which one is used for the current project. Can you double check that the 4.6.2 version you have is being used?
I just bumped into this manhattanLength problem trying to work with Qt 4.6.3 and QtCreator. Which Qt version you build with is also part of the project definition, so in QtCreator, click on the Project icon on the left, and in the Build Settings dialog, set the correct Qt version for both the Debug and Release configuration. In my case, the project was pointing to a Qt 4.5.2 that was still lurking around.