Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#63008 closed defect (fixed)

libpng +universal build fails with "Undefined symbols for architecture arm64"

Reported by: ShadSterling (Shad Sterling) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.7.1
Keywords: Cc: ryandesign (Ryan Carsten Schmidt), MarkCallow (Mark Callow), dicru
Port: libpng

Description

Running macOS 11.2.3 on intel (Darwin Kernel Version 20.3.0: Thu Jan 21 00:07:06 PST 2021; root:xnu-7195.81.3~1/RELEASE_X86_64, MacBookPro16,4)

:info:build libtool: link: /usr/bin/clang -dynamiclib  -o .libs/libpng16.16.dylib  .libs/png.o .libs/pngerror.o .libs/pngget.o .libs/pngmem.o .libs/pngpread.o .libs/pngread.o .libs/pngrio.o .libs/pngrtran.o .libs/pngrutil.o .libs/pngset.o .libs/pngtrans.o .libs/pngwio.o .libs/pngwrite.o .libs/pngwtran.o .libs/pngwutil.o mips/.libs/mips_init.o mips/.libs/filter_msa_intrinsics.o intel/.libs/intel_init.o intel/.libs/filter_sse2_intrinsics.o powerpc/.libs/powerpc_init.o powerpc/.libs/filter_vsx_intrinsics.o   -L/opt/local/lib -lz  -Os -arch arm64 -arch x86_64 -Wl,-headerpad_max_install_names -Wl,-syslibroot -Wl,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.3.sdk -arch arm64 -arch x86_64   -install_name  /opt/local/lib/libpng16.16.dylib -compatibility_version 54 -current_version 54.0 -Wl,-single_module -Wl,-exported_symbols_list,.libs/libpng16-symbols.expsym
:info:build Undefined symbols for architecture arm64:
:info:build   "_png_do_expand_palette_rgb8_neon", referenced from:
:info:build       _png_do_read_transformations in pngrtran.o
:info:build   "_png_do_expand_palette_rgba8_neon", referenced from:
:info:build       _png_do_read_transformations in pngrtran.o
:info:build   "_png_init_filter_functions_neon", referenced from:
:info:build       _png_read_filter_row in pngrutil.o
:info:build   "_png_riffle_palette_neon", referenced from:
:info:build       _png_do_read_transformations in pngrtran.o
:info:build ld: symbol(s) not found for architecture arm64

Attachments (1)

main.log (79.5 KB) - added by ShadSterling (Shad Sterling) 3 years ago.

Download all attachments as: .zip

Change History (8)

Changed 3 years ago by ShadSterling (Shad Sterling)

Attachment: main.log added

comment:1 Changed 3 years ago by MarkCallow (Mark Callow)

Cc: MarkCallow added

comment:2 Changed 3 years ago by MarkCallow (Mark Callow)

Because of this I can't install openimageio +universal. Please fix it.

comment:3 Changed 3 years ago by dicru

Also blocks universal build of wxWidgets-3.2. Maybe this can help: https://githubmemory.com/repo/glennrp/libpng/issues/372

comment:4 Changed 3 years ago by dicru

Cc: dicru added

comment:5 Changed 3 years ago by kencu (Ken)

the 5-second fix was to add the muniversal PortGroup:

% port -v installed libpng
The following ports are currently installed:
  libpng @1.6.37_0+universal (active) requested_variants='+universal' platform='darwin 20' archs='arm64 x86_64' date='2021-09-18T18:09:39-0700'

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

Owner: set to ryandesign
Resolution: fixed
Status: newclosed

In 5eeb427ba74c31581cf6c73c691c59819ee846eb/macports-ports (master):

libpng: Use muniversal portgroup

Fixes arm64/x86_64 universal build on Apple Silicon machines.

Closes: #63008
Closes: https://github.com/macports/macports-ports/pull/12575

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

Eh, that should have said "on Intel machines".

Note: See TracTickets for help on using tickets.