Opened 3 years ago

Closed 3 years ago

Last modified 2 years ago

#64448 closed defect (fixed)

cscope @15.9: symbol not found in flat namespace '_yylex'

Reported by: sudheerhebbale (Sudheer Hebbale) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version:
Keywords: monterey Cc:
Port: cscope

Description (last modified by ryandesign (Ryan Carsten Schmidt))

Installation and upgrade of went through successfully

When I run cscope on commandline the following error gets thrown

$ cscope
dyld[39272]: symbol not found in flat namespace '_yylex'
Abort

Unable to figure out the issue

Change History (11)

comment:1 Changed 3 years ago by sudheerhebbale (Sudheer Hebbale)

This was raised and fixed vide #63793 in Nov 2021.

The changes suggested in that fix are present in /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/devel/cscope/Portfile

comment:2 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)

Is this still using Monterey as in the other ticket?

comment:3 Changed 3 years ago by sudheerhebbale (Sudheer Hebbale)

Yes OS is Macos Monterey Version 12.1

There was a recent OS upgrade to 12.1 and new version of XCode as well

comment:4 in reply to:  description ; Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Keywords: monterey added
Summary: cscope not working after recent upgrade of mac ports using selupdate and upgrade of portscscope @15.9: symbol not found in flat namespace '_yylex'

Replying to sudheerhebbale:

$ cscope
dyld[39272]: symbol not found in flat namespace '_yylex'
Abort

Now that I've tested on Monterey, I see the same thing.

On Big Sur, I see:

% cscope
cscope: no source files found

On Catalina, I see:

$ cscope
Cscope version 15.9                             Press the ? key for help

Find this C symbol:
Find this global definition:
Find functions called by this function:
Find functions calling this function:
Find this text string:
Change this text string:
Find this egrep pattern:
Find this file:
Find files #including this file:
Find assignments to this symbol:
cscope: no source files found

I'm surprised to see different output on different OS versions.

I'm looking into some undefined _yylex symbol issues in other ports right now so maybe that will lead me to a solution for this as well.

It's probably nothing specific to MacPorts so it probably needs to get reported to the developer of cscope. If I can figure out a solution I'll report it to them with the solution, otherwise I can just report it.

comment:5 in reply to:  4 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to ryandesign:

On Big Sur, I see:

% cscope
cscope: no source files found

Interestingly, if I run this binary (that was compiled on Big Sur) on Monterey, I see the original error:

% /Volumes/BigSur\ -\ Data/opt/local/bin/cscope       
dyld[864]: symbol not found in flat namespace '_yylex'
zsh: abort      /Volumes/BigSur\ -\ Data/opt/local/bin/cscope

Searching for "symbol not found in flat namespace" on Google I see lots of hits from people on Monterey. I suspect this is some new check that dyld is doing on Monterey.

comment:6 Changed 3 years ago by sudheerhebbale (Sudheer Hebbale)

Appreciate your efforts.

Hope the developer of cscope will be able to fix it

Sudheer

comment:7 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

I reported it here: https://sourceforge.net/p/cscope/bugs/303/

Maybe they'll come up with the answer before me.

comment:8 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Owner: set to ryandesign
Resolution: fixed
Status: newclosed

In d74dd2a9aadc1122e47776a54e36398e1cd9e4dd/macports-ports (master):

cscope: Don't strip the executable

I don't understand why this fixes the problem. There may be a deeper
issue that's being hidden by not stripping.

Closes: #64448

comment:9 Changed 3 years ago by sudheerhebbale (Sudheer Hebbale)

The problem does not happen with 15.9.2 and the fix

comment:10 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Thanks for confirming. The developer feels that stripping a program shouldn't break it in this way, and I agree, so I reported it to Apple as feedback id FB9866173.

comment:11 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

Apple closed my feedback saying it behaves as designed, but the text of their response indicated they didn't really understand the problem. I don't have the energy to argue with them. Somebody else should re-file the bug with them.

Note: See TracTickets for help on using tickets.