X-Recipient: archive-cygwin AT delorie DOT com X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 97D2A3858D20 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=dronecode.org.uk Authentication-Results: sourceware.org; spf=none smtp.mailfrom=dronecode.org.uk Authentication-Results: btinternet.com; auth=pass (PLAIN) smtp.auth=jonturney AT btinternet DOT com; bimi=skipped X-SNCR-Rigid: 613006A916EFBC0E X-Originating-IP: [86.139.167.74] X-OWM-Source-IP: 86.139.167.74 (GB) X-OWM-Env-Sender: jonturney AT btinternet DOT com X-VadeSecure-score: verdict=clean score=0/300, class=clean X-RazorGate-Vade: gggruggvucftvghtrhhoucdtuddrgedvvddrjeekgdejtdcutefuodetggdotefrodftvfcurfhrohhfihhlvgemuceutffkvffkuffjvffgnffgvefqofdpqfgfvfenuceurghilhhouhhtmecufedtudenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujfgurhepkfffgggfuffvfhfhjggtgfesthejredttdefjeenucfhrhhomheplfhonhcuvfhurhhnvgihuceojhhonhdrthhurhhnvgihsegurhhonhgvtghouggvrdhorhhgrdhukheqnecuggftrfgrthhtvghrnhepudfhfeeivddvleeifffgtdehteetieffiefgkeefueefteeitefgffffhedtfffhnecuffhomhgrihhnpegulhhlrdgrqdhlpdehvdhmohguuhhlvghstggrtghhvghmohguuhhlvghsrdhmkhdphedvsghuihhlughruhhlvghsrdhmkhenucfkphepkeeirddufeelrdduieejrdejgeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhephhgvlhhopegludelvddrudeikedruddruddtfegnpdhinhgvthepkeeirddufeelrdduieejrdejgedpmhgrihhlfhhrohhmpehjohhnrdhtuhhrnhgvhiesughrohhnvggtohguvgdrohhrghdruhhkpdhnsggprhgtphhtthhopedvpdhrtghpthhtoheptgihghifihhnsegthihgfihinhdrtghomhdprhgtphhtthhopehtrhgvihhivdeksehgmhgrihhlrdgtohhm X-RazorGate-Vade-Verdict: clean 0 X-RazorGate-Vade-Classification: clean Message-ID: <5ed0c35c-c879-7c11-0583-4f357652da58@dronecode.org.uk> Date: Thu, 17 Feb 2022 15:35:06 +0000 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.6.0 Subject: Re: Trouble trying to compile apache2 Content-Language: en-GB To: Scott Wood , The Cygwin Mailing List References: From: Jon Turney In-Reply-To: X-Spam-Status: No, score=-3570.4 required=5.0 tests=BAYES_00, FORGED_SPF_HELO, KAM_DMARC_STATUS, KAM_LAZY_DOMAIN_SECURITY, KAM_NUMSUBJECT, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.29 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: cygwin-bounces+archive-cygwin=delorie DOT com AT cygwin DOT com Sender: "Cygwin" On 14/02/2022 22:25, Scott Wood wrote: > I'm trying to compile a current version of apache2 httpd under the cygwin64 > environment. There is an older version of apache2 compiled in cygwin but > it's orphaned and didn't include some of the ssl libs I needed. > > When I try to compile it's failing when trying to compile the > mod_cache_disk module: > > --------- modules/cache make results start --------- [...] > /usr/share/apr/build-1/libtool --silent --mode=link gcc -L/usr/lib > -no-undefined -shrext .so -Wl,/usr/src/httpd-2.4.52/libhttpd.dll.a > -L/usr/lib -R/usr/lib -laprutil-1 -ldb-5.3 -lgdbm -lexpat -liconv > -L/usr/lib -R/usr/lib -lapr-1 -luuid -lcrypt -lpthread -o mod_cache_disk.la > -rpath /usr/local/apache2/modules -module -avoid-version mod_cache_disk.lo > /usr/lib/gcc/x86_64-pc-cygwin/11/../../../../x86_64-pc-cygwin/bin/ld: > .libs/mod_cache_disk.o:mod_cache_disk:(.text+0x47): undefined reference to > `ap_cache_generate_name' > /usr/lib/gcc/x86_64-pc-cygwin/11/../../../../x86_64-pc-cygwin/bin/ld: > .libs/mod_cache_disk.o:mod_cache_disk:(.text+0x12d): undefined reference to > `ap_cache_generate_name' > /usr/lib/gcc/x86_64-pc-cygwin/11/../../../../x86_64-pc-cygwin/bin/ld: > .libs/mod_cache_disk.o:mod_cache_disk:(.text+0x3f32): undefined reference > to `ap_cache_cacheable_headers_out' > /usr/lib/gcc/x86_64-pc-cygwin/11/../../../../x86_64-pc-cygwin/bin/ld: > .libs/mod_cache_disk.o:mod_cache_disk:(.text+0x3f59): undefined reference > to `ap_cache_cacheable_headers_in' > collect2: error: ld returned 1 exit status > make[4]: *** [/usr/src/httpd-2.4.52/modules/cache/modules.mk:6: > mod_cache_disk.la] Error 1 > make[4]: Leaving directory '/usr/src/httpd-2.4.52/modules/cache' > make[3]: *** [/usr/src/httpd-2.4.52/build/rules.mk:117: > shared-build-recursive] Error 1 > make[3]: Leaving directory '/usr/src/httpd-2.4.52/modules/cache' > make[2]: *** [/usr/src/httpd-2.4.52/build/rules.mk:117: > shared-build-recursive] Error 1 > make[2]: Leaving directory '/usr/src/httpd-2.4.52/modules' > make[1]: *** [/usr/src/httpd-2.4.52/build/rules.mk:117: > shared-build-recursive] Error 1 > make[1]: Leaving directory '/usr/src/httpd-2.4.52' > make: *** [/usr/src/httpd-2.4.52/build/rules.mk:75: all-recursive] Error 1 > --------- modules/cache make results end --------- > > > Digging up the old version in the cygwin ports, I found the patch files, > but trying to manually apply a patch to the modules/cache/config.m4 didn't > seem to fix the problem. It appears the patch is saying that the symbols > I'm getting the errors upon exist in the 'main cache module' and thus it's > changing a value of 'cache_disk_objs' in the m4 file to include mod_cache > symbols when compiling/linking mod_disk_cache (but as you can see above, > there appears to be no mention of mod_cache.* anything in the gcc or linker > calls for mod_disk_cache) > > patched lines from modules/cache/config.m4 is primarily adding cygwin to > the OS/2 rule: > > ------- relevant patched lines from modules/cache/config.m4 start ------- > cache_disk_objs="mod_cache_disk.lo" > cache_socache_objs="mod_cache_socache.lo" > > case "$host" in > *os2*|*cygwin*) > # OS/2 DLLs must resolve all symbols at build time > # and we need some from main cache module > cache_disk_objs="$cache_disk_objs mod_cache.la" > cache_socache_objs="$cache_socache_objs mod_cache.la" > ;; > esac > > APACHE_MODULE(cache, dynamic file caching. At least one storage management > module (e.g. mod_cache_disk) is also necessary., $cache_objs, , most) > APACHE_MODULE(cache_disk, disk caching module, $cache_disk_objs, , most, , > cache) > APACHE_MODULE(cache_socache, shared object caching module, > $cache_socache_objs, , most) > ------- relevant patched lines from modules/cache/config.m4 end ------- > > My C/make is rusty and I'm not sure the syntax to get it to properly pick > up the symbols. > > Can anyone help me figure out how to get this thing to compile? The patch > included similar includes in other module directories so I probably have to > apply similar fixes elsewhere. Just applying the patch to the .m4 file is probably not sufficient. You'll need to run autoreconf (to regenerate the configury), then run the ./configure script, for that change to actually appear in the generated Makefile. -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple