Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update NBGeneratedPhoneNumberMetaData for extern variable definitions #406

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

ccomsi
Copy link

@ccomsi ccomsi commented Apr 18, 2024

In a project utilizing both Swift and Objective-C, we encountered issues when integrating the libPhoneNumber library via Swift Package Manager. Specifically, after importing libPhoneNumber in Objective-C files, the build process resulted in the following duplicate symbol errors:

  • duplicate symbol '_kPhoneNumberMetaDataExpandedLength'
  • duplicate symbol '_kPhoneNumberMetaDataCompressedLength'
  • duplicate symbol '_kPhoneNumberMetaData'

These errors prevented successful compilation and needed to be addressed to ensure smooth integration and functionality.

Resolution
To resolve these symbol duplication errors, we have modified the GeneratePhoneNumberHeader.sh script. The script update involves adjusting the global variables declared in NBGeneratedPhoneNumberMetaData.h to be treated as external (extern). This change ensures that these variables are linked appropriately across different compilation units, thereby eliminating the duplication issues and allowing the build process to complete successfully.

This update is crucial for maintaining build integrity and enabling seamless integration of libPhoneNumber within our mixed Swift and Objective-C codebase.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants