From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 55602 invoked by alias); 27 Aug 2019 08:10:14 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 55568 invoked by uid 89); 27 Aug 2019 08:10:11 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-3.6 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,KAM_SHORT,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.1 spammy=surprised, D*br, attract, talk X-HELO: mail-io1-f51.google.com Received: from mail-io1-f51.google.com (HELO mail-io1-f51.google.com) (209.85.166.51) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 27 Aug 2019 08:10:09 +0000 Received: by mail-io1-f51.google.com with SMTP id e20so44158503iob.9 for ; Tue, 27 Aug 2019 01:10:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=79ixC7iG5CV8BD2mzDqBa6573yqSf8aY2+BNNM7+vlU=; b=CtUtkKGDBdqOPn2PaeQP6QWePMIFKdiVctxodti5Pq4JV9tcXawZO6gtbjLeEcfAfA hcAi58Lw1pD8OQepX6eHjtn0zWSnfPznyd46pAPW3FVRNJDNBwOukHGwGmw5y4zAG9wh hJvJqh9Q3/smss6O81Hs44s1fotxKFdFqJCc7wsaZpXhtkvf9tovU/pnpywwcv7M+5lg CADawVtj1whDTlWwQRWccUHd0bFnFFJdGB9Tx2c7vLZtJb3dGmHcgy1xafL5kIgAwr3k Tij4utV2fyruWgYeCpnWZe5GOwMWyWJoZPG/luhOmG7Ivqjf1+n9e3HJL6mxTKnUihDA ZdPg== MIME-Version: 1.0 References: In-Reply-To: From: "Bin.Cheng" Date: Tue, 27 Aug 2019 08:10:00 -0000 Message-ID: Subject: Re: Rust front-end To: Mateus Carmo Martins de Freitas Barbosa Cc: GCC Development Content-Type: text/plain; charset="UTF-8" X-IsSubscribed: yes X-SW-Source: 2019-08/txt/msg00218.txt.bz2 On Fri, Aug 23, 2019 at 10:11 PM Mateus Carmo Martins de Freitas Barbosa wrote: > > I'm interested in working on the Rust front-end for GCC. > > So far I've cloned the repository > and tried to compile it as described in . > I've compiled it outside of the gcc directory tree with > > $ ../gccrs/configure --prefix=/opt/gccrs --enable-languages=rust > --disable-multilib --disable-bootstrap > $ make > > > But this produces some linking errors for functions that were called > but never defined: > > > /usr/bin/ld: rust/rust-lang.o: in function > `rust_langhook_handle_option(unsigned long, char const*, long, int, > unsigned int, cl_option_handlers const*)': > /home/baal/gccrs-build/gcc/../../gccrs/gcc/rust/rust-lang.c:185: > undefined reference to `rust_add_search_path(char const*)' > /usr/bin/ld: /home/baal/gccrs-build/gcc/../../gccrs/gcc/rust/rust-lang.c:213: > undefined reference to `rust_add_search_path(char const*)' > /usr/bin/ld: /home/baal/gccrs-build/gcc/../../gccrs/gcc/rust/rust-lang.c:217: > undefined reference to `rust_add_search_path(char const*)' > /usr/bin/ld: rust/rust-lang.o: in function `rust_langhook_post_options': > /home/baal/gccrs-build/gcc/../../gccrs/gcc/rust/rust-lang.c:245: > undefined reference to `rust_add_search_path(char const*)' > /usr/bin/ld: rust/rust-lang.o: in function `rust_langhook_parse_file()': > /home/baal/gccrs-build/gcc/../../gccrs/gcc/rust/rust-lang.c:282: > undefined reference to `rust_parse_input_files(char const**, unsigned > int, bool)' > /usr/bin/ld: rust/rust-lang.o:/home/baal/gccrs-build/gcc/./gtype-rust.h:24: > undefined reference to `rust_non_zero_struct' > collect2: error: ld returned 1 exit status > make[2]: *** [../../gccrs/gcc/rust/Make-lang.in:61: rust1] Error 1 > make[2]: Leaving directory '/home/baal/gccrs-build/gcc' > make[1]: *** [Makefile:4319: all-gcc] Error 2 > > > It's doesn't really help that the latest commit message > (3b1e76d808b9725e6ef439ae534011370e65fb85) says simply "x" and the > previous one, only "more". Anyhow, I'm left with those questions: > Sorry I don't have the answer for your questions, just want to confirm that I run into the same issue building it. Given both wiki and the readme explicitly mention that the status is "Very early and out of date", I am not surprised by the broken. The author lastly edited wiki page seems inactive for some time? > - Considering I'm new to gcc development, what should I read before > getting into this? > - Is there any developer in particular I should talk to? > - Is there anything else I need to know before getting started? I know nothing about frontend. The functions look like common ones prefixed with "rust_", so maybe looking into other frontends can given some clue. For example, there is go_add_search_path and brig_add_search_path. And couple of words to the community, we may need to be more active in order to attract new developers. IMHO, messages asking for information shouldn't need one week to be answered? Thanks, bin