Opened 2 years ago

Closed 2 years ago

Last modified 19 months 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 2 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 2 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)

Is this still using Monterey as in the other ticket?

comment:3 Changed 2 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 2 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 2 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 2 years ago by sudheerhebbale (Sudheer Hebbale)

Appreciate your efforts.

Hope the developer of cscope will be able to fix it

Sudheer

comment:7 Changed 2 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 2 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 2 years ago by sudheerhebbale (Sudheer Hebbale)

The problem does not happen with 15.9.2 and the fix

comment:10 Changed 2 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 19 months 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.