[MacPorts] #69528: libde265 @1.0.15+universal: Undefined symbols "MSE(unsigned char const*, int, unsigned char const*, int, int, int)", "PSNR(double)"
MacPorts
noreply at macports.org
Thu Dec 26 05:00:35 UTC 2024
#69528: libde265 @1.0.15+universal: Undefined symbols "MSE(unsigned char const*,
int, unsigned char const*, int, int, int)", "PSNR(double)"
------------------------+---------------------------------
Reporter: Liontooth | Owner: MarcusCalhoun-Lopez
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.9.1
Resolution: | Keywords:
Port: libde265 |
------------------------+---------------------------------
Comment (by psiborg112):
Managed to get it to build. The problem lies at line 474 of the log. No
architecture is specified when outputting .libs/libde265.0.dylib-master.o.
So it just creates it using the machine architecture. I don't know how to
fix it in any kind of automated way, but to work around it, you can run
the following commands from within the 'work/libde265-1.0.15/libde265'
directory at the point of failure:
{{{
sudo /usr/bin/clang++ -r -keep_private_externs -arch arm64 -arch x86_64
-nostdlib -o .libs/libde265.0.dylib-master.o .libs/libde265_la-
alloc_pool.o .libs/libde265_la-bitstream.o .libs/libde265_la-cabac.o .libs
/libde265_la-configparam.o .libs/libde265_la-contextmodel.o .libs
/libde265_la-de265.o .libs/libde265_la-deblock.o .libs/libde265_la-
decctx.o .libs/libde265_la-fallback.o .libs/libde265_la-fallback-dct.o
.libs/libde265_la-fallback-motion.o .libs/libde265_la-dpb.o .libs
/libde265_la-image.o .libs/libde265_la-image-io.o .libs/libde265_la-
intrapred.o .libs/libde265_la-md5.o .libs/libde265_la-motion.o .libs
/libde265_la-nal.o .libs/libde265_la-nal-parser.o .libs/libde265_la-pps.o
.libs/libde265_la-quality.o .libs/libde265_la-refpic.o .libs/libde265_la-
sao.o .libs/libde265_la-scan.o .libs/libde265_la-sei.o .libs/libde265_la-
slice.o .libs/libde265_la-sps.o .libs/libde265_la-threads.o .libs
/libde265_la-transform.o .libs/libde265_la-util.o .libs/libde265_la-
visualize.o .libs/libde265_la-vps.o .libs/libde265_la-vui.o
sudo /usr/bin/clang++ -dynamiclib -o .libs/libde265.0.dylib
.libs/libde265.0.dylib-master.o -L/opt/local/lib -Os -stdlib=libc++
-arch arm64 -arch x86_64 -Wl,-headerpad_max_install_names -Wl,-syslibroot
-Wl,/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk -arch arm64
-arch x86_64 -install_name /opt/local/lib/libde265.0.dylib
-compatibility_version 2 -current_version 2.8
sudo chown macports libde265.0.dylib-master.o
sudo chown macports libde265.0.dylib
}}}
then you can re-run the original build or install command and it should
compile for both architectures as expected.
--
Ticket URL: <https://trac.macports.org/ticket/69528#comment:5>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list