Opened 17 years ago
Closed 15 years ago
#14931 closed defect (fixed)
wxWidgets26 does not build on Leopard - conflicting function declarations
Reported by: | simon@… | Owned by: | mww@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.6.0 |
Keywords: | leopard fsvolumemount | Cc: | jyrkiwahlstedt, macports.users@…, whalenster@… |
Port: | wxWidgets26 |
Description
FSVolumeMount has conflicting declarations, see below (complete build log attached):
../src/mac/carbon/morefilex/MoreFilesX.h: At global scope: ../src/mac/carbon/morefilex/MoreFilesX.h:1488: error: declaration of C function 'OSErr FSVolumeMount(const void*, FSVolumeRefNum*)' conflic ts with /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/Files.h:7299: error: previous declaration 'OSStat us FSVolumeMount(UInt8*, FSVolumeRefNum*)' here
System Information:
simon@moria:~/bugs$ sw_vers ProductName: Mac OS X ProductVersion: 10.5.2 BuildVersion: 9C7010
Attachments (2)
Change History (13)
Changed 17 years ago by simon@…
Attachment: | wxwidgets26.txt added |
---|
comment:1 Changed 17 years ago by jmroot (Joshua Root)
Cc: | jwa@… added; mww jwa removed |
---|---|
Owner: | changed from macports-tickets@… to mww@… |
comment:2 Changed 17 years ago by afb@…
Keywords: | leopard added |
---|---|
Summary: | wxWidgets26 does not build - conflicting function declarations → wxWidgets26 does not build on Leopard - conflicting function declarations |
AFAIK, you need wxWidgets 2.8 for Leopard support...
comment:3 Changed 17 years ago by simon@…
Thanks. I tripped over this as a dependency of the bittorrent port. Would it make sense to apply the changes in Portfile.diff to this port?
Changed 17 years ago by simon@…
Attachment: | Portfile.diff added |
---|
comment:5 Changed 16 years ago by rogerpack2005@…
Just ran into this doing "sudo port install bittorrent" Fixing it would be kind :)
comment:9 Changed 15 years ago by jmroot (Joshua Root)
Keywords: | wxwidgets26 removed |
---|---|
Port: | wxWidgets26 added |
Just to clearly state the problem: wxWidgets26 uses MoreFilesX internally, which defines a function called FSVolumeMount. Leopard introduced an identically-named function in Carbon. A fix would have to remove or rename MoreFilesX's version of the function, depending on whether it is equivalent to Carbon's version.
comment:10 Changed 15 years ago by jyrkiwahlstedt
Well, I got that fixed, but then the next incompatibility appeared:
../src/mac/carbon/thread.cpp:1022: error: invalid conversion from 'long int' to 'void*' ../src/mac/carbon/thread.cpp:1022: error: initializing argument 2 of 'OSStatus MPSetTaskStorageValue(TaskStorageIndex, void*)'.
That is a type conversion thing that can be fixed. If all the problems are type conversions only, there is hope. However, it is totally possible that the package can be built, but it does not work, which is the worst case. But we'll see...
comment:11 Changed 15 years ago by jyrkiwahlstedt
Resolution: | → fixed |
---|---|
Status: | new → closed |
Ok, now this builds on Leopard with patches added in r54612.
I don't think putting bare usernames in the cc field works.