This forum is archived, go to the new forum!

This is the old fritzing discussion forum. Search it for valuable information from 2009 to 2015.

Building under Linux

cwr 9 years, 3 months ago

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

Jonathan Cohen 9 years, 3 months ago

I think manhattanLength was added as of Qt 4.6, so you must be building with an earlier version.

- j

Jonathan Cohen 9 years, 3 months ago

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).

cwr 9 years, 3 months ago

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.

Will

Jonathan Cohen 9 years, 3 months ago

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.  

- j

cwr 9 years, 3 months ago

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.

 

Will

 

susurrus 9 years, 3 months ago

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?

Jonathan Cohen 9 years, 3 months ago

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.

- j