I recently moved my Mac Pro dev box to homebrew from macports. Doing the mysql move (the lazy way – moving the data directory) was easy enough but doing a massive brew install
of a bunch of packages didn’t work when I got to nmap (the network port scanner).
Specifically the linker error (maybe the linker … looks to a stacktrace to a Ruby and Java guy) was this:
Undefined symbols: "ScriptResult::get_id() const", referenced from: formatScriptOutput(ScriptResult) in output.o printhostscriptresults(Target*) in output.o printportoutput(Target*, PortList*) in output.o "ScriptResult::get_output() const", referenced from: formatScriptOutput(ScriptResult) in output.o printhostscriptresults(Target*) in output.o printportoutput(Target*, PortList*) in output.o "open_nse()", referenced from: nmap_main(int, char**)in nmap.o "close_nse()", referenced from: nmap_free_mem() in nmap.o "script_scan(std::vector<Target*, std::allocator<Target*> >&)", referenced from: nmap_main(int, char**)in nmap.o ld: symbol(s) not found collect2: ld returned 1 exit status make[1]: *** [nmap] Error 1 make: *** [all] Error 2 Exit status: 2 http://github.com/mxcl/homebrew/blob/master/Library/Formula/nmap.rb#L1 Error: Failure while executing: make Please report this bug at http://github.com/mxcl/homebrew/issues These existing issues may help you: http://github.com/mxcl/homebrew/issues/#issue/3128
I love the little URL for more help at the bottom, unfortunately a redirect killed the help. The correct URL is here. Maybe an anchor tag in the wrong place on the URL, who knows. Anyway, I posted a note on the issue site as well, I got around the issue by doing this first:
brew install lua
Then just install nmap like before:
brew install nmap
Worked for me.