View Issue Details

IDProjectCategoryView StatusLast Update
0016968ScribusBuild Systempublic2023-09-11 20:34
Reporterryandesign Assigned Tojghali  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Product Version1.5.8 
Fixed in Version1.6.0.svn 
Summary0016968: Build error caused by conversion between void pointer and function pointer
DescriptionI updated the MacPorts scribus-devel port to version 1.5.8 today, after verifying that it built on my macOS 12 machine. It also built successfully on the MacPorts automated build machines running macOS 10.14, 10.15, 11, and 12. But it failed to build on the build machines running macOS 13:

    scribus/pluginmanager.cpp:99:19: error: assigning to 'void *' from 'QFunctionPointer' (aka 'void (*)()') converts between void pointer and function pointer
                    symAddr = qlib->resolve(sym);
                              ~~~~~~^~~~~~~~~~~~
    1 error generated.
Steps To ReproduceBuild Scribus 1.5.8 on macOS 13 with the version of Apple Clang installed by Xcode 14.3 or the Xcode 14.3 version of the command line tools
Additional InformationA very similar looking error had been reported to MacPorts 18 months ago against version 1.5.7.svn-20201209 when compiling on macOS 12:

https://trac.macports.org/ticket/64290

At the time, neither knowing Scribus nor understanding the error, I updated the port to the then-current 1.5.8.svn-20211215 version, which seemed to fix the problem, and so I did not report the issue to you then, thinking the matter resolved. But now it has resurfaced with version 1.5.8 on macOS 13. Of course, many other things have changed as well, including the Clang version and the versions of many of Scribus's dependencies.
TagsNo tags attached.
PatchNo

Activities

ryandesign

2023-07-07 18:59

reporter   ~0050262

Thanks. I have to correct myself: the issue did not affect arm64 Macs. I realize now that this error message was hiding the real problem: that the build was being done for i386 instead of x86_64, and that this happens when Scribus is building on an x86_64 Mac on a macOS version it doesn't recognize. This explains why we originally saw it on macOS 12 when we were using a version of Scribus that didn't have macOS 12 support added yet, why the problem went away when we updated to a newer version, and why the problem now resurfaced with macOS 13. This issue deserves a separate ticket: 0016975

Issue History

Date Modified Username Field Change
2023-06-30 12:56 ryandesign New Issue
2023-06-30 21:55 jghali Summary error: assigning to 'void *' from 'QFunctionPointer' (aka 'void (*)()') converts between void pointer and function pointer => Build error caused by conversion between void pointer and function pointer
2023-06-30 21:55 jghali Assigned To => jghali
2023-06-30 21:55 jghali Status new => resolved
2023-06-30 21:55 jghali Resolution open => fixed
2023-06-30 21:55 jghali Fixed in Version => 1.6.0.svn
2023-07-07 18:59 ryandesign Note Added: 0050262
2023-09-11 20:34 cbradney Status resolved => closed