Opened 7 years ago

Last modified 11 months ago

#52931 assigned defect

kismet: install failure on 10.8.5, slightly different from ticket 36486

Reported by: TheLastLovemark Owned by: mascguy (Christopher Nielsen)
Priority: Normal Milestone:
Component: ports Version: 2.3.5
Keywords: Cc: evanmiller (Evan Miller)
Port: kismet

Description (last modified by mf2k (Frank Schima))

Yes. I know 10.8.5 is outdated, but I have legally purchased software (Adobe CS3) that I am scared will not be compatible with MacOS Sierra. I've read posts claiming that things don't work even after updating Java and reinstalling.

Anyway...

I tried following the suggestions here: ticket:36486

I cleaned the kismet install after the build failed and went to add the definition in the header, but the line "#define HAVE_SOCKLEN_T 1" already appears in the config.h header file.

The files config.h and main.log are attached.

Any help is appreciated.

Attachments (2)

main.log (79.8 KB) - added by TheLastLovemark 7 years ago.
Kismet main.log
config.h (8.4 KB) - added by TheLastLovemark 7 years ago.
Kismet config.h

Download all attachments as: .zip

Change History (7)

Changed 7 years ago by TheLastLovemark

Attachment: main.log added

Kismet main.log

Changed 7 years ago by TheLastLovemark

Attachment: config.h added

Kismet config.h

comment:1 Changed 7 years ago by mf2k (Frank Schima)

Keywords: error removed
Milestone: MacPorts Future

The Milestone field is for use by Macports team members only, please do not set it. In the future, please use WikiFormatting.

comment:2 Changed 7 years ago by mf2k (Frank Schima)

Description: modified (diff)

comment:3 Changed 11 months ago by mascguy (Christopher Nielsen)

Owner: changed from macports-tickets@… to mascguy
Status: newassigned

comment:4 Changed 11 months ago by mascguy (Christopher Nielsen)

Cc: evanmiller added
Port: kismet added; Kismet removed
Summary: Kismet install failure on 10.8.5, slightly different from ticket 36486kismet: install failure on 10.8.5, slightly different from ticket 36486

While this is a very old ticket - for a much earlier version of kismet, with different issues - I figured we might as well repurpose this to track work to expand where this port builds.

With the latest commit, it now builds for 10.11 and later:

https://github.com/macports/macports-ports/commit/b7fa94563a0ef81f40987c9caaaac8212f03a159

For 10.10 and earlier, there are failures related to use of NSArray. Presumably these are newer additions for that component, which weren't present way back:

capture_osx_corewlan_wifi.m:64:38: error: expected '>'
@property (retain) NSArray<CWChannel *> *channels;
                                     ^
capture_osx_corewlan_wifi.m:64:39: error: expected member name or ';' after declaration specifiers
@property (retain) NSArray<CWChannel *> *channels;
                   ~~~~~~~            ^
capture_osx_corewlan_wifi.m:64:1: error: property requires fields to be named
@property (retain) NSArray<CWChannel *> *channels;
^                  ~~~~~~~~~~~~~~~~~~~
capture_osx_corewlan_wifi.m:64:39: error: expected ';' at end of declaration list
@property (retain) NSArray<CWChannel *> *channels;
                                      ^
                                      ;

The port has been updated to require Cxx17, so I don't think (?) that's the issue. But still digging.

If anyone has any thoughts, let me know.

comment:5 Changed 11 months ago by mascguy (Christopher Nielsen)

After more digging, support for generics on interfaces like NSArray, etc, was added starting with Xcode 7. However, various projects have added the extra sauce, often piecemeal.

However, Microsoft's WinObjC project has done so across-the-board. And since their work is published via a relatively permissive MIT license, the additions could potentially be packaged up into a port/lib:

https://github.com/microsoft/WinObjC/commit/390d14661261562eb34ecf11543f0b7be0757318

That's probably overkill for kismet, but something we could consider for the future. (If there's a need for it.)

Note: See TracTickets for help on using tickets.