Skip to content

ar-compatible command for zig cc #7915

Description

@motiejus

When using zig cc when trying to compile xz, I get the following:

$ AR="zig build-lib" LD="zig build-lib" CC="zig cc" ./configure
<...>
$ make
<...>
libtool: link: zig build-lib cr .libs/liblzma.a  liblzma_la-tuklib_physmem.o liblzma_la-tuklib_cpucores.o liblzma_la-common.o liblzma_la-block_util.o liblzma_la-easy_preset.o liblzma_la-filter_common.o liblzma_la-hardware_physmem.o liblzma_la-index.o liblzma_la-stream_flags_common.o liblzma_la-vli_size.o liblzma_la-hardware_cputhreads.o liblzma_la-alone_encoder.o liblzma_la-block_buffer_encoder.o liblzma_la-block_encoder.o liblzma_la-block_header_encoder.o liblzma_la-easy_buffer_encoder.o liblzma_la-easy_encoder.o liblzma_la-easy_encoder_memusage.o liblzma_la-filter_buffer_encoder.o liblzma_la-filter_encoder.o liblzma_la-filter_flags_encoder.o liblzma_la-index_encoder.o liblzma_la-stream_buffer_encoder.o liblzma_la-stream_encoder.o liblzma_la-stream_flags_encoder.o liblzma_la-vli_encoder.o liblzma_la-outqueue.o liblzma_la-stream_encoder_mt.o liblzma_la-alone_decoder.o liblzma_la-auto_decoder.o liblzma_la-block_buffer_decoder.o liblzma_la-block_decoder.o liblzma_la-block_header_decoder.o liblzma_la-easy_decoder_memusage.o liblzma_la-filter_buffer_decoder.o liblzma_la-filter_decoder.o liblzma_la-filter_flags_decoder.o liblzma_la-index_decoder.o liblzma_la-index_hash.o liblzma_la-stream_buffer_decoder.o liblzma_la-stream_decoder.o liblzma_la-stream_flags_decoder.o liblzma_la-vli_decoder.o liblzma_la-check.o liblzma_la-crc32_table.o liblzma_la-crc32_fast.o liblzma_la-crc64_table.o liblzma_la-crc64_fast.o liblzma_la-sha256.o liblzma_la-lz_encoder.o liblzma_la-lz_encoder_mf.o liblzma_la-lz_decoder.o liblzma_la-lzma_encoder_presets.o liblzma_la-lzma_encoder.o liblzma_la-lzma_encoder_optimum_fast.o liblzma_la-lzma_encoder_optimum_normal.o liblzma_la-fastpos_table.o liblzma_la-lzma_decoder.o liblzma_la-lzma2_encoder.o liblzma_la-lzma2_decoder.o liblzma_la-price_table.o liblzma_la-delta_common.o liblzma_la-delta_encoder.o liblzma_la-delta_decoder.o liblzma_la-simple_coder.o liblzma_la-simple_encoder.o liblzma_la-simple_decoder.o liblzma_la-x86.o liblzma_la-powerpc.o liblzma_la-ia64.o liblzma_la-arm.o liblzma_la-armthumb.o liblzma_la-sparc.o
error: unrecognized file extension of parameter 'cr'

Autotools are running zig build-lib with command cr, which it does not understand, thus failing.

It would be good to expose a compatible interface to ar, so zig cc is easier to integrate to existing toolchains.

Barring other issues, once this is resolved, xz can be built only with gnu make and zig.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    contributor friendlyThis issue is limited in scope and/or knowledge of Zig internals.enhancementSolving this issue will likely involve adding new logic or components to the codebase.zig ccZig as a drop-in C compiler feature

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions