Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#62213 closed defect (fixed)

p5.28-libapreq2 build failure

Reported by: murrayE Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.6.99
Keywords: bigsur Cc:
Port: p5-libapreq2

Description

Using MacPorts 2.6.99 under macOS Big Sur 11.1 with Xcode CLT 12.4, I installed mod_perl2 @2.0.11_0+perl5_28. Now I am trying to install p5.28-libapreq2 and get a build error.

The main.log (attached) reports undefined symbols:

:info:build /usr/bin/clang  -o .libs/mod_apreq2.so -bundle  .libs/handle.o .libs/filter.o  /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_perl_p5-libapreq2/p5.28-libapreq2/work/libapreq2-2.13/library/.libs/libapreq2.dylib -L/opt/local/lib -lpthread -lexpat -liconv -lapr-1 -laprutil-1  -arch x86_64 -Wl,-headerpad_max_install_names -Wl,-syslibroot -Wl,/Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk -arch x86_64
:info:build Undefined symbols for architecture x86_64:
:info:build   "_ap_add_input_filter", referenced from:
:info:build       _apreq_handle_apache2 in handle.o
:info:build       _apache2_body in handle.o
:info:build       _apache2_body_get in handle.o
:info:build       _apache2_parser_get in handle.o
:info:build       _apache2_parser_set in handle.o
:info:build       _apache2_hook_add in handle.o
:info:build       _apache2_brigade_limit_get in handle.o
:info:build       ...
:info:build   "_ap_add_version_component", referenced from:
:info:build       _apreq_post_init in filter.o
:info:build   "_ap_check_cmd_context", referenced from:
:info:build       _apreq_set_temp_dir in filter.o
:info:build       _apreq_set_read_limit in filter.o
:info:build       _apreq_set_brigade_limit in filter.o
:info:build   "_ap_get_brigade", referenced from:
:info:build       _apreq_filter_prefetch in filter.o
:info:build       _apreq_filter in filter.o
:info:build   "_ap_hook_post_config", referenced from:
:info:build       _register_hooks in filter.o
:info:build   "_ap_log_error_", referenced from:
:info:build       _apreq_pre_init in filter.o
:info:build       _apreq_post_init in filter.o
:info:build   "_ap_log_rerror_", referenced from:
:info:build       _apreq_filter_init_context in filter.o
:info:build       _apreq_filter_prefetch in filter.o
:info:build       _apreq_filter in filter.o
:info:build       _apreq_filter_make_context in filter.o
:info:build       _apreq_filter_init in filter.o
:info:build   "_ap_register_input_filter", referenced from:
:info:build       _register_hooks in filter.o
:info:build   "_ap_remove_input_filter", referenced from:
:info:build       _apreq_handle_apache2 in handle.o
:info:build       _apache2_body in handle.o
:info:build       _apache2_body_get in handle.o
:info:build       _apache2_parser_get in handle.o
:info:build       _apache2_parser_set in handle.o
:info:build       _apache2_hook_add in handle.o
:info:build       _apache2_brigade_limit_get in handle.o
:info:build       ...
:info:build ld: symbol(s) not found for architecture x86_64
:info:build clang: error: linker command failed with exit code 1 (use -v to see invocation)
:info:build make[2]: *** [mod_apreq2.la] Error 1

(Needless to say, p5-libapreq2 is crucial for using with apache2.)

Attachments (2)

main.log (70.2 KB) - added by murrayE 3 years ago.
main.log
main_murray_p5.28-libapreq2.log (70.5 KB) - added by murrayE 3 years ago.
main.log

Download all attachments as: .zip

Change History (10)

Changed 3 years ago by murrayE

Attachment: main.log added

main.log

comment:1 Changed 3 years ago by mf2k (Frank Schima)

Port: p5-libapreq2 added; p5.28-libapreq2 removed

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

Keywords: bigsur added; undefined synbols build failure removed
Owner: set to ryandesign
Status: newaccepted

The well-known macOS 11+ libtool bug. We probably just need to patch this port's configure script with the same patch that we already applied to the libtool port.

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

Resolution: fixed
Status: acceptedclosed

In 18020498f6732cc6671f809187fa78a7dfc5720a/macports-ports (master):

p5-libapreq2: Fix the macOS 11+ libtool bug

Closes: #62213

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

Resolution: fixed
Status: closedreopened

I committed that without testing since it is known to fix the problem in other ports, but it doesn't appear to have fixed it for this port.

https://build.macports.org/builders/ports-11_arm64-builder/builds/10876/steps/install-port/logs/stdio

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

Resolution: fixed
Status: reopenedclosed

In beebadbbfe4c29f695c2647d8ffc4d2c68c80a2c/macports-ports (master):

p5-libapreq2: More macOS 11+ libtool fixes

Closes: #62213

comment:6 Changed 3 years ago by murrayE

Indeed, the fix, if that's what's reached me via a port sync command, does NOT fix the problem with p5.28-libapreq2. New main.log attached.

Changed 3 years ago by murrayE

main.log

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

I've already fixed the problem with the second commit and the build succeeded.

https://build.macports.org/builders/ports-11_arm64-builder/builds/10880/steps/install-port/logs/stdio

Wait an hour after my commit, then sudo port sync and sudo port clean p5.28-libapreq2 and try again.

comment:8 Changed 3 years ago by murrayE

Building p5.28-libapreq2, and hence p5-libapreq2 works now (at least with MacPorts 2.6.99 and Xcode CLT 12.4). Thank you!

Note: See TracTickets for help on using tickets.