'Programming/rust'에 해당되는 글 13건

  1. 2023.05.09 rust 와 main.rs
  2. 2023.05.09 rust 문서 다운로드하기(cargo)
  3. 2023.05.09 rust in windows
Programming/rust2023. 5. 9. 13:21

러스트니까 확장자가 rs인가..

함수는 fn 키워드로 구분하는 듯.

C:\Users\user\Desktop\study\rust>type main.rs
fn main() {
    println!("Hello, world!");
}

 

처음해보려는데 머가 잘 못 깔린걸까.. -_-

C:\Users\user\Desktop\study\rust>rustc main.rs
error: linker `link.exe` not found
  |
  = note: program not found

note: the msvc targets depend on the msvc linker but `link.exe` was not found

note: please ensure that Visual Studio 2017 or later, or Build Tools for Visual Studio were installed with the Visual C++ option.

note: VS Code is a different product, and is not sufficient.

error: aborting due to previous error

 

먼가 열심히 object 파일은 생성하는데 linker가 없어서 실행파일을 만드는건 실패한 듯.

C:\Users\user\Desktop\study\rust>dir
 C 드라이브의 볼륨에는 이름이 없습니다.
 볼륨 일련 번호: 38F7-6D98

 C:\Users\user\Desktop\study\rust 디렉터리

2023-05-09  오후 01:18    <DIR>          .
2023-05-09  오후 01:18    <DIR>          ..
2023-05-09  오후 01:18             1,224 main.398lq81sg45tyvtc.rcgu.o
2023-05-09  오후 01:18               508 main.main.b8591b61-cgu.0.rcgu.o
2023-05-09  오후 01:18             1,870 main.main.b8591b61-cgu.1.rcgu.o
2023-05-09  오후 01:18             1,651 main.main.b8591b61-cgu.2.rcgu.o
2023-05-09  오후 01:18               802 main.main.b8591b61-cgu.3.rcgu.o
2023-05-09  오후 01:18             2,396 main.main.b8591b61-cgu.4.rcgu.o
2023-05-09  오후 01:18             1,708 main.main.b8591b61-cgu.5.rcgu.o
2023-05-09  오후 01:18                46 main.rs
               8개 파일              10,205 바이트
               2개 디렉터리  127,890,599,936 바이트 남음

 

 

+

msvc 설치하고 나서 rustc 해서 빌드하니 아래와 같이 익숙한(!) pdb와 exe가 나온다.

C:\Users\user\Desktop\study\rust>rustc main.rs

C:\Users\user\Desktop\study\rust>dir
 C 드라이브의 볼륨에는 이름이 없습니다.
 볼륨 일련 번호: 38F7-6D98

 C:\Users\user\Desktop\study\rust 디렉터리

2023-05-09  오후 11:37    <DIR>          .
2023-05-09  오후 11:37    <DIR>          ..
2023-05-09  오후 01:29    <DIR>          hello_cargo
2023-05-09  오후 11:37           163,840 main.exe
2023-05-09  오후 11:37         1,355,776 main.pdb
2023-05-09  오후 01:18                46 main.rs
2023-05-09  오후 01:34        16,904,109 The Rust Programming Language.pdf
               4개 파일          18,423,771 바이트
               3개 디렉터리  121,282,232,320 바이트 남음

'Programming > rust' 카테고리의 다른 글

rust if문  (0) 2023.05.11
rust rustup doc  (0) 2023.05.10
rust cargo new를 통한 프로젝트 생성  (0) 2023.05.09
rust 문서 다운로드하기(cargo)  (0) 2023.05.09
rust in windows  (0) 2023.05.09
Posted by 구차니
Programming/rust2023. 5. 9. 13:17

설치할때 msvc가 안깔려서 그런가 무슨 link 없다고 배짼다.

인터넷이 되는 천국에 가면 다시 해봐야겠네

 

The HTML format is available online at https://doc.rust-lang.org/stable/book/ and offline with installations of Rust made with rustup; run rustup docs --book to open.

[링크 : https://doc.rust-lang.org/book/]

 

Requirements
Building the book requires mdBook, ideally the same version that rust-lang/rust uses in this file. To get it:
$ cargo install mdbook --version <version_num>

Building
To build the book, type:
$ mdbook build

[링크 : https://github.com/rust-lang/book]

 

+

msvc 깔고 재시도

C:\Users\user\Desktop\study\rust\hello_cargo\target\debug>cargo install mdbook
    Updating crates.io index
  Installing mdbook v0.4.28
   Compiling proc-macro2 v1.0.56
   Compiling quote v1.0.27
   Compiling unicode-ident v1.0.8
   Compiling cfg-if v1.0.0
   Compiling autocfg v1.1.0
   Compiling windows_x86_64_msvc v0.48.0
   Compiling windows_x86_64_msvc v0.42.2
   Compiling windows-targets v0.48.0
   Compiling version_check v0.9.4
   Compiling windows-sys v0.48.0
   Compiling winapi v0.3.9
   Compiling syn v2.0.15
   Compiling log v0.4.17
   Compiling windows-targets v0.42.2
   Compiling windows-sys v0.45.0
   Compiling itoa v1.0.6
   Compiling serde_derive v1.0.162
   Compiling thiserror v1.0.40
   Compiling once_cell v1.17.1
   Compiling serde v1.0.162
   Compiling bytes v1.4.0
   Compiling getrandom v0.2.9
   Compiling typenum v1.16.0
   Compiling rand_core v0.6.4
   Compiling generic-array v0.14.7
   Compiling ppv-lite86 v0.2.17
   Compiling pin-project-lite v0.2.9
   Compiling futures-core v0.3.28
   Compiling rand_chacha v0.3.1
   Compiling unicase v2.6.0
   Compiling fnv v1.0.7
   Compiling thiserror-impl v1.0.40
   Compiling siphasher v0.3.10
   Compiling syn v1.0.109
   Compiling phf_shared v0.10.0
   Compiling rand v0.8.5
   Compiling http v0.2.9
   Compiling tokio v1.28.0
   Compiling tinyvec_macros v0.1.1
   Compiling io-lifetimes v1.0.10
   Compiling bitflags v1.3.2
   Compiling tinyvec v1.6.0
   Compiling phf_generator v0.10.0
   Compiling tokio-macros v2.1.0
   Compiling socket2 v0.4.9
   Compiling mio v0.8.6
   Compiling lock_api v0.4.9
   Compiling slab v0.4.8
   Compiling futures-sink v0.3.28
   Compiling memchr v2.5.0
   Compiling parking_lot_core v0.9.7
   Compiling percent-encoding v2.2.0
   Compiling num_cpus v1.15.0
   Compiling utf-8 v0.7.6
   Compiling futures-task v0.3.28
   Compiling form_urlencoded v1.1.0
   Compiling unicode-normalization v0.1.22
   Compiling crypto-common v0.1.6
   Compiling block-buffer v0.10.4
   Compiling winapi-util v0.1.5
   Compiling scopeguard v1.1.0
   Compiling new_debug_unreachable v1.0.4
   Compiling httparse v1.8.0
   Compiling futures-util v0.3.28
   Compiling smallvec v1.10.0
   Compiling unicode-bidi v0.3.13
   Compiling idna v0.3.0
   Compiling digest v0.10.6
   Compiling is-terminal v0.4.7
   Compiling phf_codegen v0.10.0
   Compiling string_cache_codegen v0.5.2
   Compiling futures-macro v0.3.28
   Compiling tracing-core v0.1.30
   Compiling indexmap v1.9.3
   Compiling crossbeam-utils v0.8.15
   Compiling cpufeatures v0.2.7
   Compiling mac v0.1.1
   Compiling pin-utils v0.1.0
   Compiling anstyle v1.0.0
   Compiling ucd-trie v0.1.5
   Compiling ryu v1.0.13
   Compiling serde_json v1.0.96
   Compiling utf8parse v0.2.1
   Compiling anstyle-parse v0.2.0
   Compiling pest v2.6.0
   Compiling anstyle-wincon v1.0.1
   Compiling futf v0.1.5
   Compiling sha1 v0.10.5
   Compiling tracing v0.1.37
   Compiling markup5ever v0.11.0
   Compiling parking_lot v0.12.1
   Compiling url v2.3.1
   Compiling anstyle-query v1.0.0
   Compiling num-traits v0.2.15
   Compiling base64 v0.13.1
   Compiling futures-channel v0.3.28
   Compiling hashbrown v0.12.3
   Compiling colorchoice v1.0.0
   Compiling libc v0.2.144
   Compiling precomputed-hash v0.1.1
   Compiling string_cache v0.8.7
   Compiling anstream v0.3.2
   Compiling pest_meta v2.6.0
   Compiling mime_guess v2.0.4
   Compiling tokio-util v0.7.8
   Compiling tendril v0.4.3
   Compiling aho-corasick v1.0.1
   Compiling phf v0.10.1
   Compiling html5ever v0.26.0
   Compiling same-file v1.0.6
   Compiling terminal_size v0.2.6
   Compiling num-integer v0.1.45
   Compiling clap_lex v0.4.1
   Compiling regex-syntax v0.7.1
   Compiling mime v0.3.17
   Compiling strsim v0.10.0
   Compiling httpdate v1.0.2
   Compiling try-lock v0.2.4
   Compiling byteorder v1.4.3
   Compiling want v0.3.0
   Compiling tungstenite v0.18.0
   Compiling regex v1.8.1
   Compiling clap_builder v4.2.7
   Compiling walkdir v2.3.3
   Compiling crossbeam-channel v0.5.8
   Compiling h2 v0.3.18
   Compiling pest_generator v2.6.0
   Compiling pin-project-internal v1.0.12
   Compiling headers-core v0.2.0
   Compiling http-body v0.4.5
   Compiling filetime v0.2.21
   Compiling windows-sys v0.42.0
   Compiling anyhow v1.0.71
   Compiling tower-service v0.3.2
   Compiling base64 v0.21.0
   Compiling pulldown-cmark v0.9.2
   Compiling notify v5.1.0
   Compiling rustls-pemfile v1.0.2
   Compiling hyper v0.14.26
   Compiling headers v0.3.8
   Compiling pin-project v1.0.12
   Compiling pest_derive v2.6.0
   Compiling clap v4.2.7
   Compiling tokio-tungstenite v0.18.0
   Compiling serde_urlencoded v0.7.1
   Compiling tokio-stream v0.1.14
   Compiling termcolor v1.2.0
   Compiling fastrand v1.9.0
   Compiling maplit v1.0.2
   Compiling humantime v2.1.0
   Compiling scoped-tls v1.0.1
   Compiling glob v0.3.1
   Compiling warp v0.3.5
   Compiling env_logger v0.10.0
   Compiling gitignore v1.0.8
   Compiling tempfile v3.5.0
   Compiling ammonia v3.3.0
   Compiling clap_complete v4.2.1
   Compiling handlebars v4.3.6
   Compiling chrono v0.4.24
   Compiling notify-debouncer-mini v0.2.1
   Compiling elasticlunr-rs v3.0.2
   Compiling toml v0.5.11
   Compiling opener v0.5.2
   Compiling shlex v1.1.0
   Compiling topological-sort v0.2.2
   Compiling mdbook v0.4.28
    Finished release [optimized] target(s) in 5m 26s
  Installing C:\Users\user\.cargo\bin\mdbook.exe
   Installed package `mdbook v0.4.28` (executable `mdbook.exe`)

'Programming > rust' 카테고리의 다른 글

rust if문  (0) 2023.05.11
rust rustup doc  (0) 2023.05.10
rust cargo new를 통한 프로젝트 생성  (0) 2023.05.09
rust 와 main.rs  (0) 2023.05.09
rust in windows  (0) 2023.05.09
Posted by 구차니
Programming/rust2023. 5. 9. 13:04

테터링 걸어서 하려니 1번 선택하니 데이터 용량의 압박으로  3번 으로 진행

 

 

 

다운로드 크기 1.37GB...?!

 

3번으로 하면 아래와 같은 메시지가 나오면서 진행된다.

 

다운로드 용량은 좀 줄어, 그나마 테터링으로 비빌용량(100MB)이 나온다.


Rust Visual C++ prerequisites

Rust requires a linker and Windows API libraries but they don't seem to be
available.

These components can be acquired through a Visual Studio installer.

1) Quick install via the Visual Studio Community installer
   (free for individuals, academic uses, and open source).

2) Manually install the prerequisites
   (for enterprise and advanced users).

3) Don't install the prerequisites
   (if you're targeting the GNU ABI).

>3


Welcome to Rust!

This will download and install the official compiler for the Rust
programming language, and its package manager, Cargo.

Rustup metadata and toolchains will be installed into the Rustup
home directory, located at:

  C:\Users\free\.rustup

This can be modified with the RUSTUP_HOME environment variable.

The Cargo home directory is located at:

  C:\Users\free\.cargo

This can be modified with the CARGO_HOME environment variable.

The cargo, rustc, rustup and other commands will be added to
Cargo's bin directory, located at:

  C:\Users\free\.cargo\bin

This path will then be added to your PATH environment variable by
modifying the HKEY_CURRENT_USER/Environment/PATH registry key.

You can uninstall at any time with rustup self uninstall and
these changes will be reverted.

Current installation options:


   default host triple: x86_64-pc-windows-msvc
     default toolchain: stable (default)
               profile: default
  modify PATH variable: yes

1) Proceed with installation (default)
2) Customize installation
3) Cancel installation
>1

info: profile set to 'default'
info: default host triple is x86_64-pc-windows-msvc
info: syncing channel updates for 'stable-x86_64-pc-windows-msvc'
info: latest update on 2023-04-20, rust version 1.69.0 (84c898d65 2023-04-16)
info: downloading component 'cargo'
info: downloading component 'clippy'
info: downloading component 'rust-docs'
 13.4 MiB /  13.4 MiB (100 %)   9.9 MiB/s in  1s ETA:  0s
info: downloading component 'rust-std'
 25.1 MiB /  25.1 MiB (100 %)   8.7 MiB/s in  2s ETA:  0s
info: downloading component 'rustc'
 58.9 MiB /  58.9 MiB (100 %)   9.4 MiB/s in  6s ETA:  0s
info: downloading component 'rustfmt'
info: installing component 'cargo'
  4.1 MiB /   4.1 MiB (100 %)   3.4 MiB/s in  1s ETA:  0s
info: installing component 'clippy'
info: installing component 'rust-docs'
 13.4 MiB /  13.4 MiB (100 %)   1.3 MiB/s in 20s ETA:  0s
info: installing component 'rust-std'
 25.1 MiB /  25.1 MiB (100 %)   4.0 MiB/s in  6s ETA:  0s
info: installing component 'rustc'
 58.9 MiB /  58.9 MiB (100 %)   4.5 MiB/s in 13s ETA:  0s
info: installing component 'rustfmt'
info: default toolchain set to 'stable-x86_64-pc-windows-msvc'

  stable-x86_64-pc-windows-msvc installed - rustc 1.69.0 (84c898d65 2023-04-16)


Rust is installed now. Great!

To get started you may need to restart your current shell.
This would reload its PATH environment variable to include
Cargo's bin directory (%USERPROFILE%\.cargo\bin).

Press the Enter key to continue.

 

근데.. 어떻게 실행하지 -ㅁ-?

 

+

하라는대로 환경변수에 아래꺼를 추가해주고 리부팅 하면 끝

%USERPROFILE%\.cargo\bin

 

'Programming > rust' 카테고리의 다른 글

rust if문  (0) 2023.05.11
rust rustup doc  (0) 2023.05.10
rust cargo new를 통한 프로젝트 생성  (0) 2023.05.09
rust 와 main.rs  (0) 2023.05.09
rust 문서 다운로드하기(cargo)  (0) 2023.05.09
Posted by 구차니