Re: problem building libavcodec59-5.0-shlibs on MacOS 10.11 (El Cap) / Xcode 8.2.1
Hanspeter Niederstrasser <[email protected]>
| Newsgroups | gmane.os.apple.fink.general |
|---|---|
| Organization | Snaggled Works |
| Message-ID | <[email protected]> |
On 4/28/22 8:03 AM, Scott Hannahs via Fink-users wrote: >> On Apr 27, 2022, at 05:28, Hanspeter Niederstrasser <[email protected]> wrote: >> >> On 4/26/22 9:41 PM, Scott Hannahs via Fink-users wrote: >>>> On Apr 26, 2022, at 9:06 PM, Hanspeter Niederstrasser <[email protected]> wrote: >>>> >>>> Can you selfupdate and try libavcodec59-5.0-shlibs-5.0.1-1 ? I don't know if that was fixed there but might as well try. >>>> >>>> Hanspeter >>> I get the same sort of thing… My bad not self updating, I had this error and then didn’t get back to it for awhile. I hadn’t seen an update to that particular library. Possibly ffmpeg 5.0 can’t be built on Mac OS 10.11?? >>> -Scott >>> src/libavfilter/metal/utils.h:50:40: error: expected function body after function declarator >>> API_AVAILABLE(macos(10.11), ios(8.0)); >>> ^ >>> src/libavfilter/metal/utils.h:57:48: error: expected function body after function declarator >>> API_AVAILABLE(macos(10.11), ios(8.0)); >>> ^ >>> src/libavfilter/metal/utils.m:22:6: error: no previous prototype for function 'ff_metal_compute_encoder_dispatch' [-Werror,-Wmissing-prototypes] >>> void ff_metal_compute_encoder_dispatch(id<MTLDevice> device, >>> ^ >>> src/libavfilter/metal/utils.m:50:19: error: no previous prototype for function 'ff_metal_texture_from_pixbuf' [-Werror,-Wmissing-prototypes] >>> CVMetalTextureRef ff_metal_texture_from_pixbuf(void *ctx, >>> ^ >>> 4 errors generated. >>> make: *** [/sw/src/fink.build/libavcodec59-5.0-shlibs-5.0.1-1/ffmpeg-5.0.1/ffbuild/common.mak:84: libavfilter/metal/utils.o] Error 1 >>> make: Leaving directory '/sw/src/fink.build/libavcodec59-5.0-shlibs-5.0.1-1/ffmpeg-5.0.1/finkbuild' >>> ### execution of /tmp/fink.eLCzD failed, exit code 2 >>> ### execution of /tmp/fink.OBhj3 failed, exit code 2 >> >> Does it work if you add this line to PatchScript? >> >> perl -ni -e 'print unless / check_cflags -Werror=missing-prototypes/‘ configure > > No, I get the same error. > > gcc -I. -Isrc/ -I/sw/include -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/sw/src/fink.build/libavcodec59-5.0-shlibs-5.0.1-2/ffmpeg-5.0.1/compat/dispatch_semaphore -DPIC -DZLIB_CONST -DHAVE_AV_CONFIG_H -DBUILDING_avfilter -fno-stack-check -I/sw/lib/libspeex1/include -I/sw/include -I/opt/X11/include -std=c11 -Werror=partial-availability -fomit-frame-pointer -fPIC -I/opt/X11/include -I/opt/X11/include -I/opt/X11/include -pthread -I/sw/include -I/sw/include -I/s ^ > src/libavfilter/metal/utils.h:57:48: error: expected function body after function declarator > API_AVAILABLE(macos(10.11), ios(8.0)); > ^ > src/libavfilter/metal/utils.m:22:6: warning: no previous prototype for function 'ff_metal_compute_encoder_dispatch' [-Wmissing-prototypes] > void ff_metal_compute_encoder_dispatch(id<MTLDevice> device, > ^ > src/libavfilter/metal/utils.m:50:19: warning: no previous prototype for function 'ff_metal_texture_from_pixbuf' [-Wmissing-prototypes] > CVMetalTextureRef ff_metal_texture_from_pixbuf(void *ctx, > ^ > 2 warnings and 2 errors generated. > > I am unclear on the dependencies here. I think the main program I installed was ffmpeg. Now in updating it is trying to update libavcodec59 but in doing so it is building the code from within ffmpeg as a subdirectory. If I read the error correctly it is not the missing-prototype but the "error: expected function body after function declarator”. Ffmpeg is the primary end user package. But the parent package is called libavcodec59-5.0-shlibs to simplify package maintenance. As to the errors, there are apparently 2 errors currently in the 5.0.1 code under macOS 10.11 and earlier. The 2nd error got fixed by not erroring out on missing-prototypes (removed by the perl-pie from my previous email). That still leaves the other error around the API_AVAILABLE() function declaration. That macro should be available by default via the OS. Do you have the file /usr/include/os/availability? It might be Availability.h (with a capital A)? If so, does it "#define API_AVAILABLE(...)" around line 60? Lastly, what does `gcc --version` say? Hanspeter -- Disclaimer: By sending an email to ANY of my addresses you are agreeing that: 1. I am by definition, "the intended recipient" 2. All information in the email is mine to do with as I see fit and make such financial profit, political mileage, or good joke as it lends itself to. 3. I may take the contents as representing the views of your company. 4. This overrides any disclaimer or statement of confidentiality that may be included with your message. _______________________________________________ Fink-users mailing list [email protected] List archive: https://sourceforge.net/p/fink/mailman/fink-users/ Subscription management: https://lists.sourceforge.net/lists/listinfo/fink-users