0nkery / how2-rs

Simple CLI tool to retrieve answers from StackExchange.
MIT License
0 stars 0 forks source link

[Bug] Could not compile how2-rs in Windows #3

Closed Kristinita closed 7 years ago

Kristinita commented 7 years ago

Summary

I can not begin to use how2-rs. I get errors in terminal.

Expected behavior

No errors. Successful begin to use how2-rs.

Actual behavior

E:\>git clone https://github.com/0nkery/how2-rs/
Cloning into 'how2-rs'...
remote: Counting objects: 234, done.
Rremote: Total 234 (delta 0), reused 0 (delta 0), pack-reused 233
Receiving objects: 100% (234/234), 3.58 MiB | 1.16 MiB/s, done.
Resolving deltas: 100% (109/109), done.

E:\> cd how2-rs

E:\how2-rs>cargo build --release
    Updating registry `https://github.com/rust-lang/crates.io-index`
   Compiling traitobject v0.0.1
   Compiling phf_shared v0.7.19
   Compiling language-tags v0.2.2
   Compiling getopts v0.2.14
   Compiling lazy_static v0.2.1
   Compiling pkg-config v0.3.8
   Compiling phf v0.7.19
   Compiling void v1.0.2
   Compiling unreachable v0.1.1
   Compiling debug_unreachable v0.1.1
   Compiling serde v0.8.17
   Compiling unicode-normalization v0.1.2
   Compiling openssl-sys v0.7.17
   Compiling encoding_index_tests v0.1.4
   Compiling encoding-index-korean v1.20141219.5
   Compiling encoding-index-simpchinese v1.20141219.5
   Compiling regex-syntax v0.3.9
   Compiling matches v0.1.4
   Compiling utf-8 v0.6.0
   Compiling libc v0.2.17
   Compiling mac v0.0.2
   Compiling rand v0.3.14
   Compiling memchr v0.1.11
   Compiling num_cpus v0.2.13
   Compiling encoding-index-singlebyte v1.20141219.5
   Compiling winapi-build v0.1.1
   Compiling user32-sys v0.2.0
   Compiling gdi32-sys v0.2.0
   Compiling kernel32-sys v0.2.2
   Compiling bit-vec v0.4.3
   Compiling log v0.3.6
   Compiling mime v0.2.2
   Compiling bit-set v0.4.0
   Compiling hpack v0.2.0
   Compiling httparse v1.1.2
   Compiling phf_generator v0.7.19
   Compiling phf_codegen v0.7.19
   Compiling string_cache v0.2.29
   Compiling semver v0.1.20
   Compiling typeable v0.1.2
   Compiling rustc-serialize v0.3.19
   Compiling rustc_version v0.1.7
   Compiling unicode-bidi v0.2.3
   Compiling unicase v1.4.0
   Compiling gcc v0.3.38
   Compiling futf v0.1.2
   Compiling encoding-index-tradchinese v1.20141219.5
   Compiling bitflags v0.7.0
   Compiling solicit v0.4.4
   Compiling openssl-sys-extras v0.7.14
   Compiling openssl v0.7.14
   Compiling idna v0.1.0
   Compiling winapi v0.2.8
   Compiling url v1.2.3
   Compiling encoding-index-japanese v1.20141219.5
   Compiling utf8-ranges v0.1.3
   Compiling encoding v0.2.33
   Compiling html5ever v0.5.4
   Compiling uuid v0.2.3
   Compiling url v0.5.10
   Compiling tendril v0.2.3
   Compiling miniz-sys v0.1.7
   Compiling aho-corasick v0.5.3
   Compiling flate2 v0.2.14
   Compiling thread-id v2.0.0
   Compiling time v0.1.35
   Compiling thread_local v0.2.7
   Compiling regex v0.1.80
   Compiling cookie v0.2.5
   Compiling hyper v0.8.1
   Compiling select v0.3.0
   Compiling how2-rs v0.3.0 (file:///E:/how2-rs)
warning: method is never used: `per_page`, #[warn(dead_code)] on by default
  --> src\google.rs:49:5
   |
49 |     pub fn per_page(&self) -> usize {
   |     ^

error: linking with `gcc` failed: exit code: 1
  |
  = note: "gcc" "-Wl,--enable-long-section-names" "-fno-use-linker-plugin" "-Wl,--nxcompat" "-nostdlib" "-Wl,--large-address-aware" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\crt2.o" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsbegin.o" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "E:\\how2-rs\\target\\release\\how2_rs.0.o" "-o" "E:\\how2-rs\\target\\release\\how2_rs.exe" "-Wl,--gc-sections" "-nodefaultlibs" "-L" "E:\\how2-rs\\target\\release\\deps" "-L" "E:\\how2-rs\\target\\release\\build\\miniz-sys-1d7d7097dd3d0ee2\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-34127e457ba772b1\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-sys-extras-0ba92f782c10427a\\out" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "-Wl,-Bstatic" "-Wl,-Bdynamic" "E:\\how2-rs\\target\\release\\deps\\libselect-7710e81498947153.rlib" "E:\\how2-rs\\target\\release\\deps\\libhtml5ever-2ae4f358027648e1.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf-45e34e1e9ec3d87b.rlib" "E:\\how2-rs\\target\\release\\deps\\libflate2-626108cd41090547.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_set-d8346cf643e1e667.rlib" "E:\\how2-rs\\target\\release\\deps\\libhyper-aa158ef95fe89354.rlib" "E:\\how2-rs\\target\\release\\deps\\libsolicit-0072c507dd13ae93.rlib" "E:\\how2-rs\\target\\release\\deps\\libnum_cpus-b518557783936899.rlib" "E:\\how2-rs\\target\\release\\deps\\libhttparse-cd707f3397416210.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicase-0e34f9f0aceda196.rlib" "E:\\how2-rs\\target\\release\\deps\\libcookie-564508d6303c9fa6.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl-ed37f5113edb4a2b.rlib" "E:\\how2-rs\\target\\release\\deps\\libbitflags-2dd0c81d457fcc54.rlib" "E:\\how2-rs\\target\\release\\deps\\libmime-e161a1600a69e3b5.rlib" "E:\\how2-rs\\target\\release\\deps\\liblanguage_tags-1618bd815fd1995d.rlib" "E:\\how2-rs\\target\\release\\deps\\libtime-f01ed343ca29ba40.rlib" "E:\\how2-rs\\target\\release\\deps\\libhpack-c612da05c2873fe4.rlib" "E:\\how2-rs\\target\\release\\deps\\libtendril-dfdc44e8438af5e2.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding-1d9ba043e2ef29cb.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_tradchinese-c5d16ec08b1121d3.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_simpchinese-466772518c53cf4e.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_japanese-bd0e30e1dd0f56a4.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_singlebyte-9144d03b7a1020cf.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8-f6516539158d39aa.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_korean-d65ebe36954df3cb.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-3c21b53d50931e68.rlib" "E:\\how2-rs\\target\\release\\deps\\libidna-d49dac6bdef4ce56.rlib" "E:\\how2-rs\\target\\release\\deps\\libstring_cache-a3900d4de14e1a10.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf_shared-ea8eda63ce3e3df1.rlib" "E:\\how2-rs\\target\\release\\deps\\libserde-cf1957ea86155854.rlib" "E:\\how2-rs\\target\\release\\deps\\liblazy_static-c4d0c6f844c89335.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-9253d325b2949e2d.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_bidi-8b4998f15dff6ebb.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_normalization-57bf4f7e307b7c87.rlib" "E:\\how2-rs\\target\\release\\deps\\libuuid-7ab2a5b6610c9d42.rlib" "E:\\how2-rs\\target\\release\\deps\\librand-dc0d8b5a0b199a98.rlib" "E:\\how2-rs\\target\\release\\deps\\librustc_serialize-7ce9989bca0848e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libmatches-282f04acaeea3353.rlib" "E:\\how2-rs\\target\\release\\deps\\libtraitobject-db2838e831a57fce.rlib" "E:\\how2-rs\\target\\release\\deps\\libfutf-24cfc626bccb8fc7.rlib" "E:\\how2-rs\\target\\release\\deps\\libminiz_sys-73c5de1a332b6128.rlib" "E:\\how2-rs\\target\\release\\deps\\libdebug_unreachable-80aad8a7ec635ad5.rlib" "E:\\how2-rs\\target\\release\\deps\\libunreachable-23b3be27355035e6.rlib" "E:\\how2-rs\\target\\release\\deps\\libvoid-1e8d6565de5fc7d1.rlib" "E:\\how2-rs\\target\\release\\deps\\libmac-8e303e7283d515f7.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex-e6d1b29afaea8ab2.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8_ranges-283a6c72392caa0b.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex_syntax-cb1efd458e22cca0.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_local-9ce31b030b883d96.rlib" "E:\\how2-rs\\target\\release\\deps\\libaho_corasick-ae9cdeb55ec4942a.rlib" "E:\\how2-rs\\target\\release\\deps\\libmemchr-2ed56662bb38c345.rlib" "E:\\how2-rs\\target\\release\\deps\\liblog-d4d733002993b980.rlib" "E:\\how2-rs\\target\\release\\deps\\libtypeable-d6d631c5bfc7bfe9.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_vec-066b83cb029dd3e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_id-150fe2f77391d728.rlib" "E:\\how2-rs\\target\\release\\deps\\libkernel32-509fa9765cc5df81.rlib" "E:\\how2-rs\\target\\release\\deps\\libwinapi-cadf002e62789fde.rlib" "E:\\how2-rs\\target\\release\\deps\\libgetopts-38b5f0c3319266b1.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys_extras-0736125f03ee4592.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys-4a3524ef1bc5ab61.rlib" "E:\\how2-rs\\target\\release\\deps\\liblibc-2b61e37508f49e74.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libstd-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libpanic_unwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libunwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liblibc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librand-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcollections-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc_system-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librustc_unicode-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcore-5c6cf767.rlib" "-l" "advapi32" "-l" "kernel32" "-l" "ssl32" "-l" "eay32" "-l" "ws2_32" "-l" "userenv" "-l" "shell32" "-l" "advapi32" "-l" "gcc_eh" "-l" "gcc_eh" "-l" "compiler-rt" "-lmingwex" "-lmingw32" "-lgcc" "-lmsvcrt" "-luser32" "-lkernel32" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsend.o"
  = note: ld: cannot find -lssl32
ld: cannot find -leay32

error: aborting due to previous error

error: Could not compile `how2-rs`.

To learn more, run the command again with --verbose.

E:\how2-rs>cargo build --release --verbose
       Fresh mac v0.0.2
       Fresh getopts v0.2.14
       Fresh encoding_index_tests v0.1.4
       Fresh bit-vec v0.4.3
       Fresh httparse v1.1.2
       Fresh utf8-ranges v0.1.3
       Fresh encoding-index-simpchinese v1.20141219.5
       Fresh encoding-index-tradchinese v1.20141219.5
       Fresh unicode-normalization v0.1.2
       Fresh semver v0.1.20
       Fresh lazy_static v0.2.1
       Fresh gcc v0.3.38
       Fresh encoding-index-japanese v1.20141219.5
       Fresh encoding-index-singlebyte v1.20141219.5
       Fresh winapi-build v0.1.1
       Fresh language-tags v0.2.2
       Fresh matches v0.1.4
       Fresh bitflags v0.7.0
       Fresh bit-set v0.4.0
       Fresh void v1.0.2
       Fresh serde v0.8.17
       Fresh winapi v0.2.8
       Fresh unreachable v0.1.1
       Fresh regex-syntax v0.3.9
       Fresh log v0.3.6
       Fresh debug_unreachable v0.1.1
       Fresh hpack v0.2.0
       Fresh futf v0.1.2
       Fresh mime v0.2.2
       Fresh gdi32-sys v0.2.0
       Fresh pkg-config v0.3.8
       Fresh kernel32-sys v0.2.2
       Fresh traitobject v0.0.1
       Fresh utf-8 v0.6.0
       Fresh rustc_version v0.1.7
       Fresh typeable v0.1.2
       Fresh unicode-bidi v0.2.3
       Fresh encoding-index-korean v1.20141219.5
       Fresh libc v0.2.17
       Fresh idna v0.1.0
       Fresh encoding v0.2.33
       Fresh num_cpus v0.2.13
       Fresh url v1.2.3
       Fresh tendril v0.2.3
       Fresh thread-id v2.0.0
       Fresh memchr v0.1.11
       Fresh miniz-sys v0.1.7
       Fresh time v0.1.35
       Fresh rand v0.3.14
       Fresh aho-corasick v0.5.3
       Fresh flate2 v0.2.14
       Fresh thread_local v0.2.7
       Fresh uuid v0.2.3
       Fresh unicase v1.4.0
       Fresh regex v0.1.80
       Fresh rustc-serialize v0.3.19
       Fresh solicit v0.4.4
       Fresh url v0.5.10
       Fresh phf_shared v0.7.19
       Fresh phf v0.7.19
       Fresh phf_generator v0.7.19
       Fresh user32-sys v0.2.0
       Fresh phf_codegen v0.7.19
       Fresh openssl-sys v0.7.17
       Fresh openssl-sys-extras v0.7.14
       Fresh string_cache v0.2.29
       Fresh openssl v0.7.14
       Fresh html5ever v0.5.4
       Fresh cookie v0.2.5
       Fresh select v0.3.0
       Fresh hyper v0.8.1
   Compiling how2-rs v0.3.0 (file:///E:/how2-rs)
     Running `rustc src\main.rs --crate-name how2_rs --crate-type bin -C opt-level=3 -C metadata=52b138f921a8f71f --out-dir E:\how2-rs\target\release --emit=dep-info,link -L dependency=E:\how2-rs\target\release\deps --extern hyper=E:\how2-rs\target\release\deps\libhyper-aa158ef95fe89354.rlib --extern flate2=E:\how2-rs\target\release\deps\libflate2-626108cd41090547.rlib --extern select=E:\how2-rs\target\release\deps\libselect-7710e81498947153.rlib --extern getopts=E:\how2-rs\target\release\deps\libgetopts-38b5f0c3319266b1.rlib --extern regex=E:\how2-rs\target\release\deps\libregex-e6d1b29afaea8ab2.rlib --extern rustc_serialize=E:\how2-rs\target\release\deps\librustc_serialize-7ce9989bca0848e8.rlib -L native=E:\how2-rs\target\release\build\openssl-34127e457ba772b1\out -L native=E:\how2-rs\target\release\build\openssl-sys-extras-0ba92f782c10427a\out -L native=E:\how2-rs\target\release\build\miniz-sys-1d7d7097dd3d0ee2\out`
warning: method is never used: `per_page`, #[warn(dead_code)] on by default
  --> src\google.rs:49:5
   |
49 |     pub fn per_page(&self) -> usize {
   |     ^

error: linking with `gcc` failed: exit code: 1
  |
  = note: "gcc" "-Wl,--enable-long-section-names" "-fno-use-linker-plugin" "-Wl,--nxcompat" "-nostdlib" "-Wl,--large-address-aware" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\crt2.o" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsbegin.o" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "E:\\how2-rs\\target\\release\\how2_rs.0.o" "-o" "E:\\how2-rs\\target\\release\\how2_rs.exe" "-Wl,--gc-sections" "-nodefaultlibs" "-L" "E:\\how2-rs\\target\\release\\deps" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-34127e457ba772b1\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-sys-extras-0ba92f782c10427a\\out" "-L" "E:\\how2-rs\\target\\release\\build\\miniz-sys-1d7d7097dd3d0ee2\\out" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "-Wl,-Bstatic" "-Wl,-Bdynamic" "E:\\how2-rs\\target\\release\\deps\\libselect-7710e81498947153.rlib" "E:\\how2-rs\\target\\release\\deps\\libhtml5ever-2ae4f358027648e1.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf-45e34e1e9ec3d87b.rlib" "E:\\how2-rs\\target\\release\\deps\\libflate2-626108cd41090547.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_set-d8346cf643e1e667.rlib" "E:\\how2-rs\\target\\release\\deps\\libhyper-aa158ef95fe89354.rlib" "E:\\how2-rs\\target\\release\\deps\\libsolicit-0072c507dd13ae93.rlib" "E:\\how2-rs\\target\\release\\deps\\libnum_cpus-b518557783936899.rlib" "E:\\how2-rs\\target\\release\\deps\\libhttparse-cd707f3397416210.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicase-0e34f9f0aceda196.rlib" "E:\\how2-rs\\target\\release\\deps\\libcookie-564508d6303c9fa6.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl-ed37f5113edb4a2b.rlib" "E:\\how2-rs\\target\\release\\deps\\libbitflags-2dd0c81d457fcc54.rlib" "E:\\how2-rs\\target\\release\\deps\\libmime-e161a1600a69e3b5.rlib" "E:\\how2-rs\\target\\release\\deps\\liblanguage_tags-1618bd815fd1995d.rlib" "E:\\how2-rs\\target\\release\\deps\\libtime-f01ed343ca29ba40.rlib" "E:\\how2-rs\\target\\release\\deps\\libhpack-c612da05c2873fe4.rlib" "E:\\how2-rs\\target\\release\\deps\\libtendril-dfdc44e8438af5e2.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding-1d9ba043e2ef29cb.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_tradchinese-c5d16ec08b1121d3.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_simpchinese-466772518c53cf4e.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_japanese-bd0e30e1dd0f56a4.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_singlebyte-9144d03b7a1020cf.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8-f6516539158d39aa.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_korean-d65ebe36954df3cb.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-3c21b53d50931e68.rlib" "E:\\how2-rs\\target\\release\\deps\\libidna-d49dac6bdef4ce56.rlib" "E:\\how2-rs\\target\\release\\deps\\libstring_cache-a3900d4de14e1a10.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf_shared-ea8eda63ce3e3df1.rlib" "E:\\how2-rs\\target\\release\\deps\\libserde-cf1957ea86155854.rlib" "E:\\how2-rs\\target\\release\\deps\\liblazy_static-c4d0c6f844c89335.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-9253d325b2949e2d.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_bidi-8b4998f15dff6ebb.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_normalization-57bf4f7e307b7c87.rlib" "E:\\how2-rs\\target\\release\\deps\\libuuid-7ab2a5b6610c9d42.rlib" "E:\\how2-rs\\target\\release\\deps\\librand-dc0d8b5a0b199a98.rlib" "E:\\how2-rs\\target\\release\\deps\\librustc_serialize-7ce9989bca0848e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libmatches-282f04acaeea3353.rlib" "E:\\how2-rs\\target\\release\\deps\\libtraitobject-db2838e831a57fce.rlib" "E:\\how2-rs\\target\\release\\deps\\libfutf-24cfc626bccb8fc7.rlib" "E:\\how2-rs\\target\\release\\deps\\libminiz_sys-73c5de1a332b6128.rlib" "E:\\how2-rs\\target\\release\\deps\\libdebug_unreachable-80aad8a7ec635ad5.rlib" "E:\\how2-rs\\target\\release\\deps\\libunreachable-23b3be27355035e6.rlib" "E:\\how2-rs\\target\\release\\deps\\libvoid-1e8d6565de5fc7d1.rlib" "E:\\how2-rs\\target\\release\\deps\\libmac-8e303e7283d515f7.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex-e6d1b29afaea8ab2.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8_ranges-283a6c72392caa0b.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex_syntax-cb1efd458e22cca0.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_local-9ce31b030b883d96.rlib" "E:\\how2-rs\\target\\release\\deps\\libaho_corasick-ae9cdeb55ec4942a.rlib" "E:\\how2-rs\\target\\release\\deps\\libmemchr-2ed56662bb38c345.rlib" "E:\\how2-rs\\target\\release\\deps\\liblog-d4d733002993b980.rlib" "E:\\how2-rs\\target\\release\\deps\\libtypeable-d6d631c5bfc7bfe9.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_vec-066b83cb029dd3e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_id-150fe2f77391d728.rlib" "E:\\how2-rs\\target\\release\\deps\\libkernel32-509fa9765cc5df81.rlib" "E:\\how2-rs\\target\\release\\deps\\libwinapi-cadf002e62789fde.rlib" "E:\\how2-rs\\target\\release\\deps\\libgetopts-38b5f0c3319266b1.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys_extras-0736125f03ee4592.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys-4a3524ef1bc5ab61.rlib" "E:\\how2-rs\\target\\release\\deps\\liblibc-2b61e37508f49e74.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libstd-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libpanic_unwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libunwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liblibc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librand-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcollections-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc_system-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librustc_unicode-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcore-5c6cf767.rlib" "-l" "advapi32" "-l" "kernel32" "-l" "ssl32" "-l" "eay32" "-l" "ws2_32" "-l" "userenv" "-l" "shell32" "-l" "advapi32" "-l" "gcc_eh" "-l" "gcc_eh" "-l" "compiler-rt" "-lmingwex" "-lmingw32" "-lgcc" "-lmsvcrt" "-luser32" "-lkernel32" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsend.o"
  = note: ld: cannot find -lssl32
ld: cannot find -leay32

error: aborting due to previous error

error: Could not compile `how2-rs`.

Caused by:
  Process didn't exit successfully: `rustc src\main.rs --crate-name how2_rs --crate-type bin -C opt-level=3 -C metadata=52b138f921a8f71f --out-dir E:\how2-rs\target\release --emit=dep-info,link -L dependency=E:\how2-rs\target\release\deps --extern hyper=E:\how2-rs\target\release\deps\libhyper-aa158ef95fe89354.rlib --extern flate2=E:\how2-rs\target\release\deps\libflate2-626108cd41090547.rlib --extern select=E:\how2-rs\target\release\deps\libselect-7710e81498947153.rlib --extern getopts=E:\how2-rs\target\release\deps\libgetopts-38b5f0c3319266b1.rlib --extern regex=E:\how2-rs\target\release\deps\libregex-e6d1b29afaea8ab2.rlib --extern rustc_serialize=E:\how2-rs\target\release\deps\librustc_serialize-7ce9989bca0848e8.rlib -L native=E:\how2-rs\target\release\build\openssl-34127e457ba772b1\out -L native=E:\how2-rs\target\release\build\openssl-sys-extras-0ba92f782c10427a\out -L native=E:\how2-rs\target\release\build\miniz-sys-1d7d7097dd3d0ee2\out` (exit code: 101)

E:\how2-rs>how2-rs -h
"how2-rs" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

E:\how2-rs>

Steps to reproduce

I install Rust GNU ABI for Windows from official site. I add user variable E:\Rust stable GNU 1.12\bin — folder, when I have cargo.exe and rustc.exe files. I run in commands from actual behavior in cmd.exe.

Environment

Operating system and version: Windows 32-bit 10.0.14393 Rust: Stable GNU 1.12

Thanks.

0nkery commented 7 years ago

Thanks for the detailed problem description!

Unfortunately, I'm on Linux and I cannot test proposed solution myself, but here it is.

This link describes steps to install OpenSSL on Windows.

So:

  1. Install MSYS2.
  2. Try to install OpenSSL via pacman.

PS. Please, share your experience.

Kristinita commented 7 years ago

I have same error.

Steps to reproduce:

I install MSYS2-i686 from official site → I run MSYS2 → I run commands:

Кот@DESKTOP-0G54NVG MSYS ~
$ pacman -S mingw-w64-i686-openssl
разрешение зависимостей...
проверка конфликтов...
предупреждение: обнаружена циклическая зависимость:
предупреждение: mingw-w64-i686-gcc-libgfortran будет установлен перед mingw-w64-i686-gcc-libs, как зависимость

Пакеты (14) mingw-w64-i686-bzip2-1.0.6-5  mingw-w64-i686-ca-certificates-20150426-2  mingw-w64-i686-expat-2.2.0-1
            mingw-w64-i686-gcc-libgfortran-6.2.0-2  mingw-w64-i686-gcc-libs-6.2.0-2  mingw-w64-i686-gettext-0.19.7-1
            mingw-w64-i686-gmp-6.1.1-1  mingw-w64-i686-libffi-3.2.1-4  mingw-w64-i686-libiconv-1.14-5  mingw-w64-i686-libtasn1-4.9-1
            mingw-w64-i686-libwinpthread-git-5.0.0.4741.2c8939a-1  mingw-w64-i686-p11-kit-0.23.2-2  mingw-w64-i686-zlib-1.2.8-10
            mingw-w64-i686-openssl-1.0.2.j-1

Будет загружено:   8,99 MiB
Будет установлено:  47,15 MiB

:: Приступить к установке? [Y/n] y
:: Получение пакетов...
 mingw-w64-i686-gmp-6.1.1-1-any                         470,3 KiB   362K/s 00:01 [#############################################] 100%
 mingw-w64-i686-libwinpthread-git-5.0.0.4741.2c893...    38,3 KiB  12,5M/s 00:00 [#############################################] 100%
 mingw-w64-i686-gcc-libgfortran-6.2.0-2-any             272,5 KiB   367K/s 00:01 [#############################################] 100%
 mingw-w64-i686-gcc-libs-6.2.0-2-any                    627,6 KiB   375K/s 00:02 [#############################################] 100%
 mingw-w64-i686-libtasn1-4.9-1-any                      183,0 KiB   487K/s 00:00 [#############################################] 100%
 mingw-w64-i686-libffi-3.2.1-4-any                       46,9 KiB  9,16M/s 00:00 [#############################################] 100%
 mingw-w64-i686-expat-2.2.0-1-any                       120,5 KiB   634K/s 00:00 [#############################################] 100%
 mingw-w64-i686-libiconv-1.14-5-any                     602,2 KiB   361K/s 00:02 [#############################################] 100%
 mingw-w64-i686-gettext-0.19.7-1-any                      3,1 MiB   345K/s 00:09 [#############################################] 100%
 mingw-w64-i686-p11-kit-0.23.2-2-any                    207,7 KiB   373K/s 00:01 [#############################################] 100%
 mingw-w64-i686-ca-certificates-20150426-2-any          382,4 KiB   344K/s 00:01 [#############################################] 100%
 mingw-w64-i686-bzip2-1.0.6-5-any                        75,5 KiB   408K/s 00:00 [#############################################] 100%
 mingw-w64-i686-zlib-1.2.8-10-any                       166,3 KiB   445K/s 00:00 [#############################################] 100%
 mingw-w64-i686-openssl-1.0.2.j-1-any                     2,7 MiB   345K/s 00:08 [#############################################] 100%
(14/14) проверка ключей                                                          [#############################################] 100%
(14/14) проверяется целостность пакета                                           [#############################################] 100%
(14/14) загрузка файлов пакетов                                                  [#############################################] 100%
(14/14) проверка конфликтов файлов                                               [#############################################] 100%
(14/14) проверяется доступное место                                              [#############################################] 100%
:: Processing package changes...
( 1/14) установка mingw-w64-i686-gmp                                             [#############################################] 100%
( 2/14) установка mingw-w64-i686-libwinpthread-git                               [#############################################] 100%
( 3/14) установка mingw-w64-i686-gcc-libgfortran                                 [#############################################] 100%
( 4/14) установка mingw-w64-i686-gcc-libs                                        [#############################################] 100%
( 5/14) установка mingw-w64-i686-libtasn1                                        [#############################################] 100%
( 6/14) установка mingw-w64-i686-libffi                                          [#############################################] 100%
( 7/14) установка mingw-w64-i686-expat                                           [#############################################] 100%
( 8/14) установка mingw-w64-i686-libiconv                                        [#############################################] 100%
( 9/14) установка mingw-w64-i686-gettext                                         [#############################################] 100%
(10/14) установка mingw-w64-i686-p11-kit                                         [#############################################] 100%
(11/14) установка mingw-w64-i686-ca-certificates                                 [#############################################] 100%
(12/14) установка mingw-w64-i686-bzip2                                           [#############################################] 100%
(13/14) установка mingw-w64-i686-zlib                                            [#############################################] 100%
(14/14) установка mingw-w64-i686-openssl                                         [#############################################] 100%

Now I run cmd.exe:

E:\>git clone https://github.com/0nkery/how2-rs/
Cloning into 'how2-rs'...
remote: Counting objects: 234, done.
Receiving objects: remote: Total 234 (delta 0), reused 0 (delta 0), pack-reused 233                      iB | 1.43 MiB/s
Receiving objects: 100% (234/234), 3.58 MiB | 1.43 MiB/s, done.
Resolving deltas: 100% (109/109), done.

E:\>cd how2-rs

E:\how2-rs>cargo build --release
    Updating registry `https://github.com/rust-lang/crates.io-index`
   Compiling libc v0.2.17
   Compiling winapi v0.2.8
   Compiling traitobject v0.0.1
   Compiling winapi-build v0.1.1
   Compiling getopts v0.2.14
   Compiling gdi32-sys v0.2.0
   Compiling memchr v0.1.11
   Compiling num_cpus v0.2.13
   Compiling typeable v0.1.2
   Compiling encoding_index_tests v0.1.4
   Compiling encoding-index-tradchinese v1.20141219.5
   Compiling encoding-index-korean v1.20141219.5
   Compiling regex-syntax v0.3.9
   Compiling aho-corasick v0.5.3
   Compiling rand v0.3.14
   Compiling language-tags v0.2.2
   Compiling log v0.3.6
   Compiling rustc-serialize v0.3.19
   Compiling hpack v0.2.0
   Compiling solicit v0.4.4
   Compiling mac v0.0.2
   Compiling pkg-config v0.3.8
   Compiling user32-sys v0.2.0
   Compiling openssl-sys v0.7.17
   Compiling phf_shared v0.7.19
   Compiling phf v0.7.19
   Compiling phf_generator v0.7.19
   Compiling phf_codegen v0.7.19
   Compiling string_cache v0.2.29
   Compiling matches v0.1.4
   Compiling unicode-bidi v0.2.3
   Compiling gcc v0.3.38
   Compiling mime v0.2.2
   Compiling lazy_static v0.2.1
   Compiling utf-8 v0.6.0
   Compiling unicode-normalization v0.1.2
   Compiling idna v0.1.0
   Compiling openssl-sys-extras v0.7.14
   Compiling miniz-sys v0.1.7
   Compiling html5ever v0.5.4
   Compiling openssl v0.7.14
   Compiling url v1.2.3
   Compiling encoding-index-japanese v1.20141219.5
   Compiling encoding-index-simpchinese v1.20141219.5
   Compiling httparse v1.1.2
   Compiling bitflags v0.7.0
   Compiling serde v0.8.17
   Compiling bit-vec v0.4.3
   Compiling bit-set v0.4.0
   Compiling kernel32-sys v0.2.2
   Compiling flate2 v0.2.14
   Compiling void v1.0.2
   Compiling utf8-ranges v0.1.3
   Compiling encoding-index-singlebyte v1.20141219.5
   Compiling unreachable v0.1.1
   Compiling debug_unreachable v0.1.1
   Compiling futf v0.1.2
   Compiling encoding v0.2.33
   Compiling uuid v0.2.3
   Compiling url v0.5.10
   Compiling tendril v0.2.3
   Compiling semver v0.1.20
   Compiling rustc_version v0.1.7
   Compiling unicase v1.4.0
   Compiling time v0.1.35
   Compiling thread-id v2.0.0
   Compiling thread_local v0.2.7
   Compiling regex v0.1.80
   Compiling cookie v0.2.5
   Compiling hyper v0.8.1
   Compiling select v0.3.0
   Compiling how2-rs v0.3.0 (file:///E:/how2-rs)
warning: method is never used: `per_page`, #[warn(dead_code)] on by default
  --> src\google.rs:49:5
   |
49 |     pub fn per_page(&self) -> usize {
   |     ^

error: linking with `gcc` failed: exit code: 1
  |
  = note: "gcc" "-Wl,--enable-long-section-names" "-fno-use-linker-plugin" "-Wl,--nxcompat" "-nostdlib" "-Wl,--large-address-aware" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\crt2.o" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsbegin.o" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "E:\\how2-rs\\target\\release\\how2_rs.0.o" "-o" "E:\\how2-rs\\target\\release\\how2_rs.exe" "-Wl,--gc-sections" "-nodefaultlibs" "-L" "E:\\how2-rs\\target\\release\\deps" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-34127e457ba772b1\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-sys-extras-0ba92f782c10427a\\out" "-L" "E:\\how2-rs\\target\\release\\build\\miniz-sys-1d7d7097dd3d0ee2\\out" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "-Wl,-Bstatic" "-Wl,-Bdynamic" "E:\\how2-rs\\target\\release\\deps\\libselect-7710e81498947153.rlib" "E:\\how2-rs\\target\\release\\deps\\libhtml5ever-2ae4f358027648e1.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf-45e34e1e9ec3d87b.rlib" "E:\\how2-rs\\target\\release\\deps\\libflate2-626108cd41090547.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_set-d8346cf643e1e667.rlib" "E:\\how2-rs\\target\\release\\deps\\libhyper-aa158ef95fe89354.rlib" "E:\\how2-rs\\target\\release\\deps\\libsolicit-0072c507dd13ae93.rlib" "E:\\how2-rs\\target\\release\\deps\\libnum_cpus-b518557783936899.rlib" "E:\\how2-rs\\target\\release\\deps\\libhttparse-cd707f3397416210.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicase-0e34f9f0aceda196.rlib" "E:\\how2-rs\\target\\release\\deps\\libcookie-564508d6303c9fa6.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl-ed37f5113edb4a2b.rlib" "E:\\how2-rs\\target\\release\\deps\\libbitflags-2dd0c81d457fcc54.rlib" "E:\\how2-rs\\target\\release\\deps\\libmime-e161a1600a69e3b5.rlib" "E:\\how2-rs\\target\\release\\deps\\liblanguage_tags-1618bd815fd1995d.rlib" "E:\\how2-rs\\target\\release\\deps\\libtime-f01ed343ca29ba40.rlib" "E:\\how2-rs\\target\\release\\deps\\libhpack-c612da05c2873fe4.rlib" "E:\\how2-rs\\target\\release\\deps\\libtendril-dfdc44e8438af5e2.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding-1d9ba043e2ef29cb.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_tradchinese-c5d16ec08b1121d3.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_simpchinese-466772518c53cf4e.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_japanese-bd0e30e1dd0f56a4.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_singlebyte-9144d03b7a1020cf.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8-f6516539158d39aa.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_korean-d65ebe36954df3cb.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-3c21b53d50931e68.rlib" "E:\\how2-rs\\target\\release\\deps\\libidna-d49dac6bdef4ce56.rlib" "E:\\how2-rs\\target\\release\\deps\\libstring_cache-a3900d4de14e1a10.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf_shared-ea8eda63ce3e3df1.rlib" "E:\\how2-rs\\target\\release\\deps\\libserde-cf1957ea86155854.rlib" "E:\\how2-rs\\target\\release\\deps\\liblazy_static-c4d0c6f844c89335.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-9253d325b2949e2d.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_bidi-8b4998f15dff6ebb.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_normalization-57bf4f7e307b7c87.rlib" "E:\\how2-rs\\target\\release\\deps\\libuuid-7ab2a5b6610c9d42.rlib" "E:\\how2-rs\\target\\release\\deps\\librand-dc0d8b5a0b199a98.rlib" "E:\\how2-rs\\target\\release\\deps\\librustc_serialize-7ce9989bca0848e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libmatches-282f04acaeea3353.rlib" "E:\\how2-rs\\target\\release\\deps\\libtraitobject-db2838e831a57fce.rlib" "E:\\how2-rs\\target\\release\\deps\\libfutf-24cfc626bccb8fc7.rlib" "E:\\how2-rs\\target\\release\\deps\\libminiz_sys-73c5de1a332b6128.rlib" "E:\\how2-rs\\target\\release\\deps\\libdebug_unreachable-80aad8a7ec635ad5.rlib" "E:\\how2-rs\\target\\release\\deps\\libunreachable-23b3be27355035e6.rlib" "E:\\how2-rs\\target\\release\\deps\\libvoid-1e8d6565de5fc7d1.rlib" "E:\\how2-rs\\target\\release\\deps\\libmac-8e303e7283d515f7.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex-e6d1b29afaea8ab2.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8_ranges-283a6c72392caa0b.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex_syntax-cb1efd458e22cca0.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_local-9ce31b030b883d96.rlib" "E:\\how2-rs\\target\\release\\deps\\libaho_corasick-ae9cdeb55ec4942a.rlib" "E:\\how2-rs\\target\\release\\deps\\libmemchr-2ed56662bb38c345.rlib" "E:\\how2-rs\\target\\release\\deps\\liblog-d4d733002993b980.rlib" "E:\\how2-rs\\target\\release\\deps\\libtypeable-d6d631c5bfc7bfe9.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_vec-066b83cb029dd3e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_id-150fe2f77391d728.rlib" "E:\\how2-rs\\target\\release\\deps\\libkernel32-509fa9765cc5df81.rlib" "E:\\how2-rs\\target\\release\\deps\\libwinapi-cadf002e62789fde.rlib" "E:\\how2-rs\\target\\release\\deps\\libgetopts-38b5f0c3319266b1.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys_extras-0736125f03ee4592.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys-4a3524ef1bc5ab61.rlib" "E:\\how2-rs\\target\\release\\deps\\liblibc-2b61e37508f49e74.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libstd-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libpanic_unwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libunwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liblibc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librand-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcollections-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc_system-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librustc_unicode-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcore-5c6cf767.rlib" "-l" "advapi32" "-l" "kernel32" "-l" "ssl32" "-l" "eay32" "-l" "ws2_32" "-l" "userenv" "-l" "shell32" "-l" "advapi32" "-l" "gcc_eh" "-l" "gcc_eh" "-l" "compiler-rt" "-lmingwex" "-lmingw32" "-lgcc" "-lmsvcrt" "-luser32" "-lkernel32" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsend.o"
  = note: ld: cannot find -lssl32
ld: cannot find -leay32

error: aborting due to previous error

error: Could not compile `how2-rs`.

To learn more, run the command again with --verbose.

E:\how2-rs>cargo build --release --verbose
       Fresh winapi v0.2.8
       Fresh libc v0.2.17
       Fresh getopts v0.2.14
       Fresh typeable v0.1.2
       Fresh language-tags v0.2.2
       Fresh memchr v0.1.11
       Fresh traitobject v0.0.1
       Fresh encoding_index_tests v0.1.4
       Fresh phf_shared v0.7.19
       Fresh aho-corasick v0.5.3
       Fresh winapi-build v0.1.1
       Fresh encoding-index-korean v1.20141219.5
       Fresh phf v0.7.19
       Fresh void v1.0.2
       Fresh utf8-ranges v0.1.3
       Fresh gcc v0.3.38
       Fresh matches v0.1.4
       Fresh num_cpus v0.2.13
       Fresh unicode-bidi v0.2.3
       Fresh rand v0.3.14
       Fresh encoding-index-singlebyte v1.20141219.5
       Fresh lazy_static v0.2.1
       Fresh unreachable v0.1.1
       Fresh uuid v0.2.3
       Fresh utf-8 v0.6.0
       Fresh regex-syntax v0.3.9
       Fresh encoding-index-japanese v1.20141219.5
       Fresh miniz-sys v0.1.7
       Fresh serde v0.8.17
       Fresh pkg-config v0.3.8
       Fresh flate2 v0.2.14
       Fresh kernel32-sys v0.2.2
       Fresh unicode-normalization v0.1.2
       Fresh encoding-index-tradchinese v1.20141219.5
       Fresh time v0.1.35
       Fresh thread-id v2.0.0
       Fresh idna v0.1.0
       Fresh httparse v1.1.2
       Fresh thread_local v0.2.7
       Fresh url v1.2.3
       Fresh regex v0.1.80
       Fresh debug_unreachable v0.1.1
       Fresh mac v0.0.2
       Fresh log v0.3.6
       Fresh bitflags v0.7.0
       Fresh user32-sys v0.2.0
       Fresh futf v0.1.2
       Fresh hpack v0.2.0
       Fresh bit-vec v0.4.3
       Fresh gdi32-sys v0.2.0
       Fresh phf_generator v0.7.19
       Fresh solicit v0.4.4
       Fresh bit-set v0.4.0
       Fresh openssl-sys v0.7.17
       Fresh phf_codegen v0.7.19
       Fresh rustc-serialize v0.3.19
       Fresh openssl-sys-extras v0.7.14
       Fresh semver v0.1.20
       Fresh openssl v0.7.14
       Fresh string_cache v0.2.29
       Fresh rustc_version v0.1.7
       Fresh cookie v0.2.5
       Fresh url v0.5.10
       Fresh mime v0.2.2
       Fresh encoding-index-simpchinese v1.20141219.5
       Fresh encoding v0.2.33
       Fresh tendril v0.2.3
       Fresh unicase v1.4.0
       Fresh html5ever v0.5.4
       Fresh hyper v0.8.1
       Fresh select v0.3.0
   Compiling how2-rs v0.3.0 (file:///E:/how2-rs)
     Running `rustc src\main.rs --crate-name how2_rs --crate-type bin -C opt-level=3 -C metadata=52b138f921a8f71f --out-dir E:\how2-rs\target\release --emit=dep-info,link -L dependency=E:\how2-rs\target\release\deps --extern select=E:\how2-rs\target\release\deps\libselect-7710e81498947153.rlib --extern getopts=E:\how2-rs\target\release\deps\libgetopts-38b5f0c3319266b1.rlib --extern flate2=E:\how2-rs\target\release\deps\libflate2-626108cd41090547.rlib --extern hyper=E:\how2-rs\target\release\deps\libhyper-aa158ef95fe89354.rlib --extern rustc_serialize=E:\how2-rs\target\release\deps\librustc_serialize-7ce9989bca0848e8.rlib --extern regex=E:\how2-rs\target\release\deps\libregex-e6d1b29afaea8ab2.rlib -L native=E:\how2-rs\target\release\build\miniz-sys-1d7d7097dd3d0ee2\out -L native=E:\how2-rs\target\release\build\openssl-34127e457ba772b1\out -L native=E:\how2-rs\target\release\build\openssl-sys-extras-0ba92f782c10427a\out`
warning: method is never used: `per_page`, #[warn(dead_code)] on by default
  --> src\google.rs:49:5
   |
49 |     pub fn per_page(&self) -> usize {
   |     ^

error: linking with `gcc` failed: exit code: 1
  |
  = note: "gcc" "-Wl,--enable-long-section-names" "-fno-use-linker-plugin" "-Wl,--nxcompat" "-nostdlib" "-Wl,--large-address-aware" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\crt2.o" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsbegin.o" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "E:\\how2-rs\\target\\release\\how2_rs.0.o" "-o" "E:\\how2-rs\\target\\release\\how2_rs.exe" "-Wl,--gc-sections" "-nodefaultlibs" "-L" "E:\\how2-rs\\target\\release\\deps" "-L" "E:\\how2-rs\\target\\release\\build\\miniz-sys-1d7d7097dd3d0ee2\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-34127e457ba772b1\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-sys-extras-0ba92f782c10427a\\out" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "-Wl,-Bstatic" "-Wl,-Bdynamic" "E:\\how2-rs\\target\\release\\deps\\libselect-7710e81498947153.rlib" "E:\\how2-rs\\target\\release\\deps\\libhtml5ever-2ae4f358027648e1.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf-45e34e1e9ec3d87b.rlib" "E:\\how2-rs\\target\\release\\deps\\libflate2-626108cd41090547.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_set-d8346cf643e1e667.rlib" "E:\\how2-rs\\target\\release\\deps\\libhyper-aa158ef95fe89354.rlib" "E:\\how2-rs\\target\\release\\deps\\libsolicit-0072c507dd13ae93.rlib" "E:\\how2-rs\\target\\release\\deps\\libnum_cpus-b518557783936899.rlib" "E:\\how2-rs\\target\\release\\deps\\libhttparse-cd707f3397416210.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicase-0e34f9f0aceda196.rlib" "E:\\how2-rs\\target\\release\\deps\\libcookie-564508d6303c9fa6.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl-ed37f5113edb4a2b.rlib" "E:\\how2-rs\\target\\release\\deps\\libbitflags-2dd0c81d457fcc54.rlib" "E:\\how2-rs\\target\\release\\deps\\libmime-e161a1600a69e3b5.rlib" "E:\\how2-rs\\target\\release\\deps\\liblanguage_tags-1618bd815fd1995d.rlib" "E:\\how2-rs\\target\\release\\deps\\libtime-f01ed343ca29ba40.rlib" "E:\\how2-rs\\target\\release\\deps\\libhpack-c612da05c2873fe4.rlib" "E:\\how2-rs\\target\\release\\deps\\libtendril-dfdc44e8438af5e2.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding-1d9ba043e2ef29cb.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_tradchinese-c5d16ec08b1121d3.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_simpchinese-466772518c53cf4e.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_japanese-bd0e30e1dd0f56a4.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_singlebyte-9144d03b7a1020cf.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8-f6516539158d39aa.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_korean-d65ebe36954df3cb.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-3c21b53d50931e68.rlib" "E:\\how2-rs\\target\\release\\deps\\libidna-d49dac6bdef4ce56.rlib" "E:\\how2-rs\\target\\release\\deps\\libstring_cache-a3900d4de14e1a10.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf_shared-ea8eda63ce3e3df1.rlib" "E:\\how2-rs\\target\\release\\deps\\libserde-cf1957ea86155854.rlib" "E:\\how2-rs\\target\\release\\deps\\liblazy_static-c4d0c6f844c89335.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-9253d325b2949e2d.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_bidi-8b4998f15dff6ebb.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_normalization-57bf4f7e307b7c87.rlib" "E:\\how2-rs\\target\\release\\deps\\libuuid-7ab2a5b6610c9d42.rlib" "E:\\how2-rs\\target\\release\\deps\\librand-dc0d8b5a0b199a98.rlib" "E:\\how2-rs\\target\\release\\deps\\librustc_serialize-7ce9989bca0848e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libmatches-282f04acaeea3353.rlib" "E:\\how2-rs\\target\\release\\deps\\libtraitobject-db2838e831a57fce.rlib" "E:\\how2-rs\\target\\release\\deps\\libfutf-24cfc626bccb8fc7.rlib" "E:\\how2-rs\\target\\release\\deps\\libminiz_sys-73c5de1a332b6128.rlib" "E:\\how2-rs\\target\\release\\deps\\libdebug_unreachable-80aad8a7ec635ad5.rlib" "E:\\how2-rs\\target\\release\\deps\\libunreachable-23b3be27355035e6.rlib" "E:\\how2-rs\\target\\release\\deps\\libvoid-1e8d6565de5fc7d1.rlib" "E:\\how2-rs\\target\\release\\deps\\libmac-8e303e7283d515f7.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex-e6d1b29afaea8ab2.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8_ranges-283a6c72392caa0b.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex_syntax-cb1efd458e22cca0.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_local-9ce31b030b883d96.rlib" "E:\\how2-rs\\target\\release\\deps\\libaho_corasick-ae9cdeb55ec4942a.rlib" "E:\\how2-rs\\target\\release\\deps\\libmemchr-2ed56662bb38c345.rlib" "E:\\how2-rs\\target\\release\\deps\\liblog-d4d733002993b980.rlib" "E:\\how2-rs\\target\\release\\deps\\libtypeable-d6d631c5bfc7bfe9.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_vec-066b83cb029dd3e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_id-150fe2f77391d728.rlib" "E:\\how2-rs\\target\\release\\deps\\libkernel32-509fa9765cc5df81.rlib" "E:\\how2-rs\\target\\release\\deps\\libwinapi-cadf002e62789fde.rlib" "E:\\how2-rs\\target\\release\\deps\\libgetopts-38b5f0c3319266b1.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys_extras-0736125f03ee4592.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys-4a3524ef1bc5ab61.rlib" "E:\\how2-rs\\target\\release\\deps\\liblibc-2b61e37508f49e74.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libstd-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libpanic_unwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libunwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liblibc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librand-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcollections-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc_system-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librustc_unicode-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcore-5c6cf767.rlib" "-l" "advapi32" "-l" "kernel32" "-l" "ssl32" "-l" "eay32" "-l" "ws2_32" "-l" "userenv" "-l" "shell32" "-l" "advapi32" "-l" "gcc_eh" "-l" "gcc_eh" "-l" "compiler-rt" "-lmingwex" "-lmingw32" "-lgcc" "-lmsvcrt" "-luser32" "-lkernel32" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsend.o"
  = note: ld: cannot find -lssl32
ld: cannot find -leay32

error: aborting due to previous error

error: Could not compile `how2-rs`.

Caused by:
  Process didn't exit successfully: `rustc src\main.rs --crate-name how2_rs --crate-type bin -C opt-level=3 -C metadata=52b138f921a8f71f --out-dir E:\how2-rs\target\release --emit=dep-info,link -L dependency=E:\how2-rs\target\release\deps --extern select=E:\how2-rs\target\release\deps\libselect-7710e81498947153.rlib --extern getopts=E:\how2-rs\target\release\deps\libgetopts-38b5f0c3319266b1.rlib --extern flate2=E:\how2-rs\target\release\deps\libflate2-626108cd41090547.rlib --extern hyper=E:\how2-rs\target\release\deps\libhyper-aa158ef95fe89354.rlib --extern rustc_serialize=E:\how2-rs\target\release\deps\librustc_serialize-7ce9989bca0848e8.rlib --extern regex=E:\how2-rs\target\release\deps\libregex-e6d1b29afaea8ab2.rlib -L native=E:\how2-rs\target\release\build\miniz-sys-1d7d7097dd3d0ee2\out -L native=E:\how2-rs\target\release\build\openssl-34127e457ba772b1\out -L native=E:\how2-rs\target\release\build\openssl-sys-extras-0ba92f782c10427a\out` (exit code: 101)

E:\how2-rs>

Thanks.

0nkery commented 7 years ago

I suggest you to try to set the OPENSSL_LIBS environment variable to ssl:crypto.

OPENSSL_LIBS=ssl:crypto cargo build --release

Link

Kristinita commented 7 years ago

I suggest you to try to set the OPENSSL_LIBS environment variable to ssl:crypto.

@0nkery, I'm sorry, may you say step-by-step, what should I do? I do not understand, how I should do it 😿 . Thanks.

0nkery commented 7 years ago

Just run this command in terminal, please.

OPENSSL_LIBS=ssl:crypto cargo build --release
Kristinita commented 7 years ago

@0nkery ,

C:\WINDOWS\system32>OPENSSL_LIBS=ssl:crypto cargo build --release
"OPENSSL_LIBS" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

C:\WINDOWS\system32>

I try add environment variable E:\msys32\mingw32\bin — folder, when I have openssl.exe file, but I have same output in terminal.

Thanks.

0nkery commented 7 years ago

Mm, sorry, that's not working on Windows.

set OPENSSL_LIBS=ssl:crypto
echo %OPENSSL_LIBS%  # just to ensure you've installed env var correctly
# then cd to how2-rs folder
cargo build --release
Kristinita commented 7 years ago

@0nkery ,

C:\WINDOWS\system32>set OPENSSL_LIBS=ssl:crypto

C:\WINDOWS\system32>echo %OPENSSL_LIBS%
ssl:crypto

C:\WINDOWS\system32>cd /D e:\how2-rs

e:\how2-rs>cargo build --release
   Compiling how2-rs v0.3.0 (file:///E:/how2-rs)
warning: method is never used: `per_page`, #[warn(dead_code)] on by default
  --> src\google.rs:49:5
   |
49 |     pub fn per_page(&self) -> usize {
   |     ^

error: linking with `gcc` failed: exit code: 1
  |
  = note: "gcc" "-Wl,--enable-long-section-names" "-fno-use-linker-plugin" "-Wl,--nxcompat" "-nostdlib" "-Wl,--large-address-aware" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\crt2.o" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsbegin.o" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "e:\\how2-rs\\target\\release\\how2_rs.0.o" "-o" "e:\\how2-rs\\target\\release\\how2_rs.exe" "-Wl,--gc-sections" "-nodefaultlibs" "-L" "e:\\how2-rs\\target\\release\\deps" "-L" "E:\\how2-rs\\target\\release\\build\\miniz-sys-1d7d7097dd3d0ee2\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-34127e457ba772b1\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-sys-extras-0ba92f782c10427a\\out" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "-Wl,-Bstatic" "-Wl,-Bdynamic" "E:\\how2-rs\\target\\release\\deps\\libselect-7710e81498947153.rlib" "E:\\how2-rs\\target\\release\\deps\\libhtml5ever-2ae4f358027648e1.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf-45e34e1e9ec3d87b.rlib" "E:\\how2-rs\\target\\release\\deps\\libflate2-626108cd41090547.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_set-d8346cf643e1e667.rlib" "E:\\how2-rs\\target\\release\\deps\\libhyper-aa158ef95fe89354.rlib" "E:\\how2-rs\\target\\release\\deps\\libsolicit-0072c507dd13ae93.rlib" "E:\\how2-rs\\target\\release\\deps\\libnum_cpus-b518557783936899.rlib" "E:\\how2-rs\\target\\release\\deps\\libhttparse-cd707f3397416210.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicase-0e34f9f0aceda196.rlib" "E:\\how2-rs\\target\\release\\deps\\libcookie-564508d6303c9fa6.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl-ed37f5113edb4a2b.rlib" "E:\\how2-rs\\target\\release\\deps\\libbitflags-2dd0c81d457fcc54.rlib" "E:\\how2-rs\\target\\release\\deps\\libmime-e161a1600a69e3b5.rlib" "E:\\how2-rs\\target\\release\\deps\\liblanguage_tags-1618bd815fd1995d.rlib" "E:\\how2-rs\\target\\release\\deps\\libtime-f01ed343ca29ba40.rlib" "E:\\how2-rs\\target\\release\\deps\\libhpack-c612da05c2873fe4.rlib" "E:\\how2-rs\\target\\release\\deps\\libtendril-dfdc44e8438af5e2.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding-1d9ba043e2ef29cb.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_tradchinese-c5d16ec08b1121d3.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_simpchinese-466772518c53cf4e.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_japanese-bd0e30e1dd0f56a4.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_singlebyte-9144d03b7a1020cf.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8-f6516539158d39aa.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_korean-d65ebe36954df3cb.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-3c21b53d50931e68.rlib" "E:\\how2-rs\\target\\release\\deps\\libidna-d49dac6bdef4ce56.rlib" "E:\\how2-rs\\target\\release\\deps\\libstring_cache-a3900d4de14e1a10.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf_shared-ea8eda63ce3e3df1.rlib" "E:\\how2-rs\\target\\release\\deps\\libserde-cf1957ea86155854.rlib" "E:\\how2-rs\\target\\release\\deps\\liblazy_static-c4d0c6f844c89335.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-9253d325b2949e2d.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_bidi-8b4998f15dff6ebb.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_normalization-57bf4f7e307b7c87.rlib" "E:\\how2-rs\\target\\release\\deps\\libuuid-7ab2a5b6610c9d42.rlib" "E:\\how2-rs\\target\\release\\deps\\librand-dc0d8b5a0b199a98.rlib" "E:\\how2-rs\\target\\release\\deps\\librustc_serialize-7ce9989bca0848e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libmatches-282f04acaeea3353.rlib" "E:\\how2-rs\\target\\release\\deps\\libtraitobject-db2838e831a57fce.rlib" "E:\\how2-rs\\target\\release\\deps\\libfutf-24cfc626bccb8fc7.rlib" "E:\\how2-rs\\target\\release\\deps\\libminiz_sys-73c5de1a332b6128.rlib" "E:\\how2-rs\\target\\release\\deps\\libdebug_unreachable-80aad8a7ec635ad5.rlib" "E:\\how2-rs\\target\\release\\deps\\libunreachable-23b3be27355035e6.rlib" "E:\\how2-rs\\target\\release\\deps\\libvoid-1e8d6565de5fc7d1.rlib" "E:\\how2-rs\\target\\release\\deps\\libmac-8e303e7283d515f7.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex-e6d1b29afaea8ab2.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8_ranges-283a6c72392caa0b.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex_syntax-cb1efd458e22cca0.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_local-9ce31b030b883d96.rlib" "E:\\how2-rs\\target\\release\\deps\\libaho_corasick-ae9cdeb55ec4942a.rlib" "E:\\how2-rs\\target\\release\\deps\\libmemchr-2ed56662bb38c345.rlib" "E:\\how2-rs\\target\\release\\deps\\liblog-d4d733002993b980.rlib" "E:\\how2-rs\\target\\release\\deps\\libtypeable-d6d631c5bfc7bfe9.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_vec-066b83cb029dd3e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_id-150fe2f77391d728.rlib" "E:\\how2-rs\\target\\release\\deps\\libkernel32-509fa9765cc5df81.rlib" "E:\\how2-rs\\target\\release\\deps\\libwinapi-cadf002e62789fde.rlib" "E:\\how2-rs\\target\\release\\deps\\libgetopts-38b5f0c3319266b1.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys_extras-0736125f03ee4592.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys-4a3524ef1bc5ab61.rlib" "E:\\how2-rs\\target\\release\\deps\\liblibc-2b61e37508f49e74.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libstd-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libpanic_unwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libunwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liblibc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librand-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcollections-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc_system-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librustc_unicode-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcore-5c6cf767.rlib" "-l" "advapi32" "-l" "kernel32" "-l" "ssl32" "-l" "eay32" "-l" "ws2_32" "-l" "userenv" "-l" "shell32" "-l" "advapi32" "-l" "gcc_eh" "-l" "gcc_eh" "-l" "compiler-rt" "-lmingwex" "-lmingw32" "-lgcc" "-lmsvcrt" "-luser32" "-lkernel32" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsend.o"
  = note: ld: cannot find -lssl32
ld: cannot find -leay32

error: aborting due to previous error

error: Could not compile `how2-rs`.

To learn more, run the command again with --verbose.

e:\how2-rs>OPENSSL_LIBS=ssl:crypto cargo build --release
"OPENSSL_LIBS" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

e:\how2-rs>
0nkery commented 7 years ago

So, I successfully built how2-rs on Windows with GNU toolchain.

  1. Open MSYS2 shell (bitness according to your Rust compiler).
  2. Test if you can run rustc or cargo programs. If not, setup PATH.
$ export PATH="/e/Rust stable GNU 1.12\bin":$PATH
  1. Then run following commands to ensure you have all the required tools.
$ pacman -Sy pacman-mirrors
$ pacman -S git make diffutils tar mingw-w64-x86_64-python2 mingw-w64-x86_64-cmake mingw-w64-x86_64-gcc
  1. cd to how2-rs folder and try to run cargo build --release again. Also, you may delete target folder inside.
Kristinita commented 7 years ago

Same error( . I run msys2.exe file in E:\msys32 path:

Кот@DESKTOP-0G54NVG MSYS ~
$ rustc --version
-bash: rustc: команда не найдена

Кот@DESKTOP-0G54NVG MSYS ~
$ cargo --version
-bash: cargo: команда не найдена

Кот@DESKTOP-0G54NVG MSYS ~
$ pacman --version

 .--.                  Pacman v5.0.1 - libalpm v10.0.1
/ _.-' .-.  .-.  .-.   Copyright (C) 2006-2016 Pacman Development Team
\  '-. '-'  '-'  '-'   Copyright (C) 2002-2006 Judd Vinet
 '--'
Эта программа может свободно распространяться
на условиях GNU General Public License

Кот@DESKTOP-0G54NVG MSYS ~
$ export PATH="/e/Rust stable GNU 1.12\bin":$PATH

Кот@DESKTOP-0G54NVG MSYS ~
$ cargo --version
cargo 0.13.0-nightly (109cb7c 2016-08-19)

Кот@DESKTOP-0G54NVG MSYS ~
$ rustc --version
rustc 1.12.1 (d4f39402a 2016-10-19)

Кот@DESKTOP-0G54NVG MSYS ~
$ pacman -Sy pacman-mirrors
:: Обновление баз данных пакетов...
 mingw32 не устарел
 mingw64 не устарел
 msys не устарел
предупреждение: pacman-mirrors-20160112-1 не устарел -- переустанавливается
разрешение зависимостей...
проверка конфликтов...

Пакеты (1) pacman-mirrors-20160112-1

Будет загружено:  0,01 MiB
Будет установлено:  0,00 MiB
Изменение размера:  0,00 MiB

:: Приступить к установке? [Y/n] y

Кот@DESKTOP-0G54NVG MSYS ~
$ pacman -S git make diffutils tar mingw-w64-x86_64-python2 mingw-w64-x86_64-cmake mingw-w64-x86_64-gcc
разрешение зависимостей...
проверка конфликтов...
предупреждение: обнаружена циклическая зависимость:
предупреждение: mingw-w64-x86_64-gcc-libgfortran будет установлен перед mingw-w64-x86_64-gcc-libs, как зависимость

Пакеты (85) db-5.3.28-2  expat-2.2.0-1  gdbm-1.11-3  heimdal-1.5.3-9
            libgdbm-1.11-3  mingw-w64-x86_64-binutils-2.27-2
            mingw-w64-x86_64-bzip2-1.0.6-5  mingw-w64-x86_64-c-ares-1.11.0-1
            mingw-w64-x86_64-ca-certificates-20150426-2
            mingw-w64-x86_64-crt-git-5.0.0.4745.d2384c2-1
            mingw-w64-x86_64-curl-7.50.3-1  mingw-w64-x86_64-expat-2.2.0-1
            mingw-w64-x86_64-gcc-libgfortran-6.2.0-2
            mingw-w64-x86_64-gcc-libs-6.2.0-2  mingw-w64-x86_64-gdbm-1.12-1
            mingw-w64-x86_64-gettext-0.19.7-1  mingw-w64-x86_64-gmp-6.1.1-1
            mingw-w64-x86_64-gnutls-3.5.5-2
            mingw-w64-x86_64-headers-git-5.0.0.4747.0f8f626-1
            mingw-w64-x86_64-isl-0.17.1-1  mingw-w64-x86_64-jansson-2.7-2
            mingw-w64-x86_64-jsoncpp-1.7.5-1
            mingw-w64-x86_64-libarchive-3.2.1-3
            mingw-w64-x86_64-libffi-3.2.1-4  mingw-w64-x86_64-libiconv-1.14-5
            mingw-w64-x86_64-libidn-1.33-1
            mingw-w64-x86_64-libmetalink-0.1.3-1
            mingw-w64-x86_64-libssh2-1.7.0-1
            mingw-w64-x86_64-libsystre-1.0.1-2  mingw-w64-x86_64-libtasn1-4.9-1
            mingw-w64-x86_64-libtre-git-r122.c2f5d13-4
            mingw-w64-x86_64-libwinpthread-git-5.0.0.4741.2c8939a-1
            mingw-w64-x86_64-lz4-1.7.1.r656-1  mingw-w64-x86_64-lzo2-2.09-2
            mingw-w64-x86_64-mpc-1.0.3-2  mingw-w64-x86_64-mpfr-3.1.4.p3-4
            mingw-w64-x86_64-ncurses-6.0.20161001-1
            mingw-w64-x86_64-nettle-3.3-1  mingw-w64-x86_64-nghttp2-1.15.0-1
            mingw-w64-x86_64-openssl-1.0.2.j-1
            mingw-w64-x86_64-p11-kit-0.23.2-2
            mingw-w64-x86_64-readline-6.3.008-1
            mingw-w64-x86_64-rtmpdump-git-r512.fa8646d-2
            mingw-w64-x86_64-tcl-8.6.6-1  mingw-w64-x86_64-termcap-1.3.1-2
            mingw-w64-x86_64-tk-8.6.6-1
            mingw-w64-x86_64-windows-default-manifest-6.4-2
            mingw-w64-x86_64-winpthreads-git-5.0.0.4741.2c8939a-1
            mingw-w64-x86_64-xz-5.2.2-1  mingw-w64-x86_64-zlib-1.2.8-10
            openssh-7.3p1-2  perl-5.22.1-1  perl-Authen-SASL-2.16-2
            perl-Convert-BinHex-1.123-2  perl-Encode-Locale-1.04-1
            perl-Error-0.17024-1  perl-File-Listing-6.04-2
            perl-HTML-Parser-3.71-3  perl-HTML-Tagset-3.20-2
            perl-HTTP-Cookies-6.01-2  perl-HTTP-Daemon-6.01-2
            perl-HTTP-Date-6.02-2  perl-HTTP-Message-6.06-2
            perl-HTTP-Negotiate-6.01-2  perl-IO-Socket-SSL-2.016-1
            perl-IO-stringy-2.111-1  perl-LWP-MediaTypes-6.02-2
            perl-MIME-tools-5.506-1  perl-MailTools-2.14-1
            perl-Net-HTTP-6.09-1  perl-Net-SMTP-SSL-1.02-1
            perl-Net-SSLeay-1.72-1  perl-TermReadKey-2.33-1
            perl-TimeDate-2.30-2  perl-URI-1.68-1  perl-WWW-RobotRules-6.02-2
            perl-libwww-6.13-1  vim-8.0.0027-1  diffutils-3.5-1  git-2.10.1-1
            make-4.2.1-1  mingw-w64-x86_64-cmake-3.6.2-1
            mingw-w64-x86_64-gcc-6.2.0-2  mingw-w64-x86_64-python2-2.7.12-1
            tar-1.29-1

Будет загружено:  112,23 MiB
Будет установлено:  667,22 MiB

:: Приступить к установке? [Y/n] y
:: Получение пакетов...
 mingw-w64-x86_64-gm...   485,0 KiB   361K/s 00:01 [#####################] 100%
 mingw-w64-x86_64-li...    35,5 KiB  8,66M/s 00:00 [#####################] 100%
 mingw-w64-x86_64-gc...   286,0 KiB   372K/s 00:01 [#####################] 100%
 mingw-w64-x86_64-gc...   560,2 KiB   365K/s 00:02 [#####################] 100%
 mingw-w64-x86_64-ex...   119,7 KiB   611K/s 00:00 [#####################] 100%
 mingw-w64-x86_64-bz...    77,9 KiB   406K/s 00:00 [#####################] 100%
 mingw-w64-x86_64-li...   600,2 KiB   349K/s 00:02 [#####################] 100%
 mingw-w64-x86_64-ge...     3,0 MiB   327K/s 00:09 [#####################] 100%
 mingw-w64-x86_64-gd...   164,1 KiB   426K/s 00:00 [#####################] 100%
 mingw-w64-x86_64-li...    44,9 KiB  11,0M/s 00:00 [#####################] 100%
 mingw-w64-x86_64-li...    69,2 KiB   360K/s 00:00 [#####################] 100%
 mingw-w64-x86_64-li...     9,3 KiB  0,00B/s 00:00 [#####################] 100%
 mingw-w64-x86_64-nc...  1697,2 KiB   329K/s 00:05 [#####################] 100%
 mingw-w64-x86_64-li...   182,6 KiB   472K/s 00:00 [#####################] 100%
 mingw-w64-x86_64-p1...   204,3 KiB   355K/s 00:01 [#####################] 100%
 mingw-w64-x86_64-ca...   382,1 KiB   333K/s 00:01 [#####################] 100%
 mingw-w64-x86_64-zl...   160,6 KiB   417K/s 00:00 [#####################] 100%
 mingw-w64-x86_64-op...     3,4 MiB   329K/s 00:11 [#####################] 100%
 mingw-w64-x86_64-te...    12,6 KiB  12,3M/s 00:00 [#####################] 100%
 mingw-w64-x86_64-re...   327,4 KiB   342K/s 00:01 [#####################] 100%
 mingw-w64-x86_64-tc...     2,9 MiB   333K/s 00:09 [#####################] 100%
 mingw-w64-x86_64-tk...  1873,6 KiB   326K/s 00:06 [#####################] 100%
 mingw-w64-x86_64-py...    11,2 MiB   329K/s 00:35 [#####################] 100%
 mingw-w64-x86_64-c-...   124,1 KiB   503K/s 00:00 [#####################] 100%
 mingw-w64-x86_64-li...   226,6 KiB   393K/s 00:01 [#####################] 100%
 mingw-w64-x86_64-li...    59,4 KiB  11,6M/s 00:00 [#####################] 100%
 mingw-w64-x86_64-li...   223,7 KiB   388K/s 00:01 [#####################] 100%
 mingw-w64-x86_64-ne...   404,9 KiB   351K/s 00:01 [#####################] 100%
 mingw-w64-x86_64-gn...  1678,5 KiB   338K/s 00:05 [#####################] 100%
 mingw-w64-x86_64-rt...   157,9 KiB   409K/s 00:00 [#####################] 100%
 mingw-w64-x86_64-ja...    53,6 KiB  10,5M/s 00:00 [#####################] 100%
 mingw-w64-x86_64-ng...   166,1 KiB   431K/s 00:00 [#####################] 100%
 mingw-w64-x86_64-cu...   926,3 KiB   346K/s 00:03 [#####################] 100%
 mingw-w64-x86_64-js...   103,1 KiB   529K/s 00:00 [#####################] 100%
 mingw-w64-x86_64-lz...    81,2 KiB   412K/s 00:00 [#####################] 100%
 mingw-w64-x86_64-lz...    85,9 KiB   448K/s 00:00 [#####################] 100%
 mingw-w64-x86_64-xz...   290,5 KiB   379K/s 00:01 [#####################] 100%
 mingw-w64-x86_64-li...   633,4 KiB   331K/s 00:02 [#####################] 100%
 mingw-w64-x86_64-cm...     4,2 MiB   327K/s 00:13 [#####################] 100%
 mingw-w64-x86_64-bi...    12,8 MiB   324K/s 00:40 [#####################] 100%
 mingw-w64-x86_64-he...     5,0 MiB   328K/s 00:16 [#####################] 100%
 mingw-w64-x86_64-cr...     2,9 MiB   335K/s 00:09 [#####################] 100%
 mingw-w64-x86_64-is...   556,2 KiB   363K/s 00:02 [#####################] 100%
 mingw-w64-x86_64-mp...   277,3 KiB   361K/s 00:01 [#####################] 100%
 mingw-w64-x86_64-mp...    62,3 KiB  10,1M/s 00:00 [#####################] 100%
 mingw-w64-x86_64-wi...  1484,0   B  0,00B/s 00:00 [#####################] 100%
 mingw-w64-x86_64-wi...    44,1 KiB  10,8M/s 00:00 [#####################] 100%
 mingw-w64-x86_64-gc...    27,2 MiB   326K/s 01:25 [#####################] 100%
 expat-2.2.0-1-i686        21,5 KiB  21,0M/s 00:00 [#####################] 100%
 vim-8.0.0027-1-i686        6,3 MiB   328K/s 00:20 [#####################] 100%
 heimdal-1.5.3-9-i686     530,8 KiB   347K/s 00:02 [#####################] 100%
 openssh-7.3p1-2-i686     670,2 KiB   350K/s 00:02 [#####################] 100%
 db-5.3.28-2-i686          39,2 KiB  12,8M/s 00:00 [#####################] 100%
 libgdbm-1.11-3-i686       22,3 KiB  10,9M/s 00:00 [#####################] 100%
 gdbm-1.11-3-i686         106,7 KiB   547K/s 00:00 [#####################] 100%
 perl-5.22.1-1-i686        12,4 MiB   329K/s 00:39 [#####################] 100%
 perl-Error-0.17024-...    17,1 KiB  16,7M/s 00:00 [#####################] 100%
 perl-Authen-SASL-2....    42,4 KiB  10,4M/s 00:00 [#####################] 100%
 perl-Encode-Locale-...     9,7 KiB  0,00B/s 00:00 [#####################] 100%
 perl-HTTP-Date-6.02...     8,6 KiB  8,42M/s 00:00 [#####################] 100%
 perl-File-Listing-6...     7,7 KiB  7,51M/s 00:00 [#####################] 100%
 perl-HTML-Tagset-3....    10,3 KiB  10,0M/s 00:00 [#####################] 100%
 perl-HTML-Parser-3....    77,7 KiB   403K/s 00:00 [#####################] 100%
 perl-LWP-MediaTypes...    18,0 KiB  5,87M/s 00:00 [#####################] 100%
 perl-URI-1.68-1-any       75,5 KiB   385K/s 00:00 [#####################] 100%
 perl-HTTP-Message-6...    71,3 KiB   371K/s 00:00 [#####################] 100%
 perl-HTTP-Cookies-6...    20,4 KiB  20,0M/s 00:00 [#####################] 100%
 perl-HTTP-Daemon-6....    14,2 KiB  6,94M/s 00:00 [#####################] 100%
 perl-HTTP-Negotiate...    11,4 KiB  11,2M/s 00:00 [#####################] 100%
 perl-Net-HTTP-6.09-...    19,8 KiB  9,65M/s 00:00 [#####################] 100%
 perl-WWW-RobotRules...    12,2 KiB  12,0M/s 00:00 [#####################] 100%
 perl-libwww-6.13-1-any   122,2 KiB   620K/s 00:00 [#####################] 100%
 perl-TimeDate-2.30-...    35,9 KiB  11,7M/s 00:00 [#####################] 100%
 perl-MailTools-2.14...    58,4 KiB  11,4M/s 00:00 [#####################] 100%
 perl-IO-stringy-2.1...    52,6 KiB  12,9M/s 00:00 [#####################] 100%
 perl-Convert-BinHex...    30,0 KiB  14,7M/s 00:00 [#####################] 100%
 perl-MIME-tools-5.5...   180,4 KiB   465K/s 00:00 [#####################] 100%
 perl-Net-SSLeay-1.7...   202,0 KiB   351K/s 00:01 [#####################] 100%
 perl-IO-Socket-SSL-...   112,5 KiB   574K/s 00:00 [#####################] 100%
 perl-Net-SMTP-SSL-1...     3,5 KiB  3,44M/s 00:00 [#####################] 100%
 perl-TermReadKey-2....    21,5 KiB  6,99M/s 00:00 [#####################] 100%
 git-2.10.1-1-i686          4,0 MiB   322K/s 00:13 [#####################] 100%
 make-4.2.1-1-i686        410,9 KiB   357K/s 00:01 [#####################] 100%
 diffutils-3.5-1-i686     312,5 KiB   406K/s 00:01 [#####################] 100%
 tar-1.29-1-i686          715,1 KiB   340K/s 00:02 [#####################] 100%
(85/85) проверка ключей                            [#####################] 100%
(85/85) проверяется целостность пакета             [#####################] 100%
(85/85) загрузка файлов пакетов                    [#####################] 100%
(85/85) проверка конфликтов файлов                 [#####################] 100%
(85/85) проверяется доступное место                [#####################] 100%
:: Processing package changes...
( 1/85) установка expat                            [#####################] 100%
( 2/85) установка vim                              [#####################] 100%
( 3/85) установка heimdal                          [#####################] 100%
( 4/85) установка openssh                          [#####################] 100%
( 5/85) установка db                               [#####################] 100%
( 6/85) установка libgdbm                          [#####################] 100%
( 7/85) установка gdbm                             [#####################] 100%
( 8/85) установка perl                             [#####################] 100%
( 9/85) установка perl-Error                       [#####################] 100%
(10/85) установка perl-Authen-SASL                 [#####################] 100%
(11/85) установка perl-Encode-Locale               [#####################] 100%
(12/85) установка perl-HTTP-Date                   [#####################] 100%
(13/85) установка perl-File-Listing                [#####################] 100%
(14/85) установка perl-HTML-Tagset                 [#####################] 100%
(15/85) установка perl-HTML-Parser                 [#####################] 100%
(16/85) установка perl-LWP-MediaTypes              [#####################] 100%
(17/85) установка perl-URI                         [#####################] 100%
(18/85) установка perl-HTTP-Message                [#####################] 100%
(19/85) установка perl-HTTP-Cookies                [#####################] 100%
(20/85) установка perl-HTTP-Daemon                 [#####################] 100%
(21/85) установка perl-HTTP-Negotiate              [#####################] 100%
(22/85) установка perl-Net-HTTP                    [#####################] 100%
(23/85) установка perl-WWW-RobotRules              [#####################] 100%
(24/85) установка perl-libwww                      [#####################] 100%
Дополнительные зависимости для 'perl-libwww'
    perl-LWP-Protocol-HTTPS: for https:// url schemes
(25/85) установка perl-TimeDate                    [#####################] 100%
(26/85) установка perl-MailTools                   [#####################] 100%
(27/85) установка perl-IO-stringy                  [#####################] 100%
(28/85) установка perl-Convert-BinHex              [#####################] 100%
module test... pass.
(29/85) установка perl-MIME-tools                  [#####################] 100%
(30/85) установка perl-Net-SSLeay                  [#####################] 100%
(31/85) установка perl-IO-Socket-SSL               [#####################] 100%
(32/85) установка perl-Net-SMTP-SSL                [#####################] 100%
(33/85) установка perl-TermReadKey                 [#####################] 100%
(34/85) установка git                              [#####################] 100%
Дополнительные зависимости для 'git'
    python2: various helper scripts
    subversion: git svn
(35/85) установка make                             [#####################] 100%
(36/85) установка diffutils                        [#####################] 100%
(37/85) установка tar                              [#####################] 100%
(38/85) установка mingw-w64-x86_64-gmp             [#####################] 100%
(39/85) установка mingw-w64-x86_64-libwinpthre...  [#####################] 100%
(40/85) установка mingw-w64-x86_64-gcc-libgfortran [#####################] 100%
(41/85) установка mingw-w64-x86_64-gcc-libs        [#####################] 100%
(42/85) установка mingw-w64-x86_64-expat           [#####################] 100%
(43/85) установка mingw-w64-x86_64-bzip2           [#####################] 100%
(44/85) установка mingw-w64-x86_64-libiconv        [#####################] 100%
(45/85) установка mingw-w64-x86_64-gettext         [#####################] 100%
(46/85) установка mingw-w64-x86_64-gdbm            [#####################] 100%
(47/85) установка mingw-w64-x86_64-libffi          [#####################] 100%
(48/85) установка mingw-w64-x86_64-libtre-git      [#####################] 100%
(49/85) установка mingw-w64-x86_64-libsystre       [#####################] 100%
(50/85) установка mingw-w64-x86_64-ncurses         [#####################] 100%
(51/85) установка mingw-w64-x86_64-libtasn1        [#####################] 100%
(52/85) установка mingw-w64-x86_64-p11-kit         [#####################] 100%
(53/85) установка mingw-w64-x86_64-ca-certificates [#####################] 100%
/tmp/alpm_DHm3u0/.INSTALL: line 9: mingw64/bin/p11-kit: cannot execute binary file: Exec format error
/tmp/alpm_DHm3u0/.INSTALL: line 10: mingw64/bin/p11-kit: cannot execute binary file: Exec format error
/tmp/alpm_DHm3u0/.INSTALL: line 11: mingw64/bin/p11-kit: cannot execute binary file: Exec format error
/tmp/alpm_DHm3u0/.INSTALL: line 12: mingw64/bin/p11-kit: cannot execute binary file: Exec format error
/tmp/alpm_DHm3u0/.INSTALL: line 13: mingw64/bin/p11-kit: cannot execute binary file: Exec format error
(54/85) установка mingw-w64-x86_64-zlib            [#####################] 100%
(55/85) установка mingw-w64-x86_64-openssl         [#####################] 100%
(56/85) установка mingw-w64-x86_64-termcap         [#####################] 100%
(57/85) установка mingw-w64-x86_64-readline        [#####################] 100%
(58/85) установка mingw-w64-x86_64-tcl             [#####################] 100%
(59/85) установка mingw-w64-x86_64-tk              [#####################] 100%
(60/85) установка mingw-w64-x86_64-python2         [#####################] 100%
(61/85) установка mingw-w64-x86_64-c-ares          [#####################] 100%
(62/85) установка mingw-w64-x86_64-libidn          [#####################] 100%
(63/85) установка mingw-w64-x86_64-libmetalink     [#####################] 100%
(64/85) установка mingw-w64-x86_64-libssh2         [#####################] 100%
(65/85) установка mingw-w64-x86_64-nettle          [#####################] 100%
(66/85) установка mingw-w64-x86_64-gnutls          [#####################] 100%
(67/85) установка mingw-w64-x86_64-rtmpdump-git    [#####################] 100%
(68/85) установка mingw-w64-x86_64-jansson         [#####################] 100%
(69/85) установка mingw-w64-x86_64-nghttp2         [#####################] 100%
(70/85) установка mingw-w64-x86_64-curl            [#####################] 100%
(71/85) установка mingw-w64-x86_64-jsoncpp         [#####################] 100%
(72/85) установка mingw-w64-x86_64-lz4             [#####################] 100%
(73/85) установка mingw-w64-x86_64-lzo2            [#####################] 100%
(74/85) установка mingw-w64-x86_64-xz              [#####################] 100%
(75/85) установка mingw-w64-x86_64-libarchive      [#####################] 100%
(76/85) установка mingw-w64-x86_64-cmake           [#####################] 100%
Дополнительные зависимости для 'mingw-w64-x86_64-cmake'
    mingw-w64-x86_64-qt5: CMake Qt GUI
(77/85) установка mingw-w64-x86_64-binutils        [#####################] 100%
(78/85) установка mingw-w64-x86_64-headers-git     [#####################] 100%
(79/85) установка mingw-w64-x86_64-crt-git         [#####################] 100%
(80/85) установка mingw-w64-x86_64-isl             [#####################] 100%
(81/85) установка mingw-w64-x86_64-mpfr            [#####################] 100%
(82/85) установка mingw-w64-x86_64-mpc             [#####################] 100%
(83/85) установка mingw-w64-x86_64-windows-def...  [#####################] 100%
(84/85) установка mingw-w64-x86_64-winpthreads-git [#####################] 100%
(85/85) установка mingw-w64-x86_64-gcc             [#####################] 100%

Кот@DESKTOP-0G54NVG MSYS ~
$ cd e:\how2-rs

Кот@DESKTOP-0G54NVG MSYS /e/how2-rs
$ cargo build --release
   Compiling how2-rs v0.3.0 (file:///E:/how2-rs)
warning: method is never used: `per_page`, #[warn(dead_code)] on by default
  --> src\google.rs:49:5
   |
49 |     pub fn per_page(&self) -> usize {
   |     ^

error: linking with `gcc` failed: exit code: 1
  |
  = note: "gcc" "-Wl,--enable-long-section-names" "-fno-use-linker-plugin" "-Wl,--nxcompat" "-nostdlib" "-Wl,--large-address-aware" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\crt2.o" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsbegin.o" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "E:\\how2-rs\\target\\release\\how2_rs.0.o" "-o" "E:\\how2-rs\\target\\release\\how2_rs.exe" "-Wl,--gc-sections" "-nodefaultlibs" "-L" "E:\\how2-rs\\target\\release\\deps" "-L" "E:\\how2-rs\\target\\release\\build\\miniz-sys-1d7d7097dd3d0ee2\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-34127e457ba772b1\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-sys-extras-0ba92f782c10427a\\out" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "-Wl,-Bstatic" "-Wl,-Bdynamic" "E:\\how2-rs\\target\\release\\deps\\libselect-7710e81498947153.rlib" "E:\\how2-rs\\target\\release\\deps\\libhtml5ever-2ae4f358027648e1.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf-45e34e1e9ec3d87b.rlib" "E:\\how2-rs\\target\\release\\deps\\libflate2-626108cd41090547.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_set-d8346cf643e1e667.rlib" "E:\\how2-rs\\target\\release\\deps\\libhyper-aa158ef95fe89354.rlib" "E:\\how2-rs\\target\\release\\deps\\libsolicit-0072c507dd13ae93.rlib" "E:\\how2-rs\\target\\release\\deps\\libnum_cpus-b518557783936899.rlib" "E:\\how2-rs\\target\\release\\deps\\libhttparse-cd707f3397416210.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicase-0e34f9f0aceda196.rlib" "E:\\how2-rs\\target\\release\\deps\\libcookie-564508d6303c9fa6.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl-ed37f5113edb4a2b.rlib" "E:\\how2-rs\\target\\release\\deps\\libbitflags-2dd0c81d457fcc54.rlib" "E:\\how2-rs\\target\\release\\deps\\libmime-e161a1600a69e3b5.rlib" "E:\\how2-rs\\target\\release\\deps\\liblanguage_tags-1618bd815fd1995d.rlib" "E:\\how2-rs\\target\\release\\deps\\libtime-f01ed343ca29ba40.rlib" "E:\\how2-rs\\target\\release\\deps\\libhpack-c612da05c2873fe4.rlib" "E:\\how2-rs\\target\\release\\deps\\libtendril-dfdc44e8438af5e2.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding-1d9ba043e2ef29cb.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_tradchinese-c5d16ec08b1121d3.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_simpchinese-466772518c53cf4e.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_japanese-bd0e30e1dd0f56a4.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_singlebyte-9144d03b7a1020cf.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8-f6516539158d39aa.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_korean-d65ebe36954df3cb.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-3c21b53d50931e68.rlib" "E:\\how2-rs\\target\\release\\deps\\libidna-d49dac6bdef4ce56.rlib" "E:\\how2-rs\\target\\release\\deps\\libstring_cache-a3900d4de14e1a10.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf_shared-ea8eda63ce3e3df1.rlib" "E:\\how2-rs\\target\\release\\deps\\libserde-cf1957ea86155854.rlib" "E:\\how2-rs\\target\\release\\deps\\liblazy_static-c4d0c6f844c89335.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-9253d325b2949e2d.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_bidi-8b4998f15dff6ebb.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_normalization-57bf4f7e307b7c87.rlib" "E:\\how2-rs\\target\\release\\deps\\libuuid-7ab2a5b6610c9d42.rlib" "E:\\how2-rs\\target\\release\\deps\\librand-dc0d8b5a0b199a98.rlib" "E:\\how2-rs\\target\\release\\deps\\librustc_serialize-7ce9989bca0848e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libmatches-282f04acaeea3353.rlib" "E:\\how2-rs\\target\\release\\deps\\libtraitobject-db2838e831a57fce.rlib" "E:\\how2-rs\\target\\release\\deps\\libfutf-24cfc626bccb8fc7.rlib" "E:\\how2-rs\\target\\release\\deps\\libminiz_sys-73c5de1a332b6128.rlib" "E:\\how2-rs\\target\\release\\deps\\libdebug_unreachable-80aad8a7ec635ad5.rlib" "E:\\how2-rs\\target\\release\\deps\\libunreachable-23b3be27355035e6.rlib" "E:\\how2-rs\\target\\release\\deps\\libvoid-1e8d6565de5fc7d1.rlib" "E:\\how2-rs\\target\\release\\deps\\libmac-8e303e7283d515f7.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex-e6d1b29afaea8ab2.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8_ranges-283a6c72392caa0b.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex_syntax-cb1efd458e22cca0.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_local-9ce31b030b883d96.rlib" "E:\\how2-rs\\target\\release\\deps\\libaho_corasick-ae9cdeb55ec4942a.rlib" "E:\\how2-rs\\target\\release\\deps\\libmemchr-2ed56662bb38c345.rlib" "E:\\how2-rs\\target\\release\\deps\\liblog-d4d733002993b980.rlib" "E:\\how2-rs\\target\\release\\deps\\libtypeable-d6d631c5bfc7bfe9.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_vec-066b83cb029dd3e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_id-150fe2f77391d728.rlib" "E:\\how2-rs\\target\\release\\deps\\libkernel32-509fa9765cc5df81.rlib" "E:\\how2-rs\\target\\release\\deps\\libwinapi-cadf002e62789fde.rlib" "E:\\how2-rs\\target\\release\\deps\\libgetopts-38b5f0c3319266b1.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys_extras-0736125f03ee4592.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys-4a3524ef1bc5ab61.rlib" "E:\\how2-rs\\target\\release\\deps\\liblibc-2b61e37508f49e74.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libstd-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libpanic_unwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libunwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liblibc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librand-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcollections-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc_system-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librustc_unicode-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcore-5c6cf767.rlib" "-l" "advapi32" "-l" "kernel32" "-l" "ssl32" "-l" "eay32" "-l" "ws2_32" "-l" "userenv" "-l" "shell32" "-l" "advapi32" "-l" "gcc_eh" "-l" "gcc_eh" "-l" "compiler-rt" "-lmingwex" "-lmingw32" "-lgcc" "-lmsvcrt" "-luser32" "-lkernel32" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsend.o"
  = note: ld: cannot find -lssl32
ld: cannot find -leay32

error: aborting due to previous error

error: Could not compile `how2-rs`.

To learn more, run the command again with --verbose.

Кот@DESKTOP-0G54NVG MSYS /e/how2-rs
$
0nkery commented 7 years ago

Are you sure you're using 32-bit version of rustc?

Kristinita commented 7 years ago

@0nkery , I download 32-bit version Rust from official site, link — https://static.rust-lang.org/dist/rust-1.12.1-i686-pc-windows-gnu.msi. Thanks.

0nkery commented 7 years ago

Ridiculous. :) You've installed x86_64 packages. My fault.

$ uname -a
$ pacman -S mingw-w64-i686-python2 mingw-w64-i686-cmake mingw-w64-i686-gcc
$ # NOTE: there should be smth like /mingw32/bin/gcc. If not, try to restart shell or remove x86_64-gcc
$ # pacman -Rs mingw-w64-x86_64-gcc
$ which gcc  
$ export PATH="/e/Rust stable GNU 1.12\bin":$PATH
$ cd /e/how2-rs
$ cargo build --release
Kristinita commented 7 years ago

What I do wrong? I try restart msys2.exe, but I get same error.

Кот@DESKTOP-0G54NVG MSYS ~
$ uname -a
MSYS_NT-10.0 DESKTOP-0G54NVG 2.6.0(0.304/5/3) 2016-09-07 21:23 i686 Msys

Кот@DESKTOP-0G54NVG MSYS ~
$ pacman -S mingw-w64-i686-python2 mingw-w64-i686-cmake mingw-w64-i686-gcc
разрешение зависимостей...
проверка конфликтов...

Пакеты (34) mingw-w64-i686-binutils-2.27-2  mingw-w64-i686-c-ares-1.11.0-1
            mingw-w64-i686-crt-git-5.0.0.4745.d2384c2-1
            mingw-w64-i686-curl-7.50.3-1  mingw-w64-i686-gdbm-1.12-1
            mingw-w64-i686-gnutls-3.5.5-2
            mingw-w64-i686-headers-git-5.0.0.4747.0f8f626-1
            mingw-w64-i686-isl-0.17.1-1  mingw-w64-i686-jansson-2.7-2
            mingw-w64-i686-jsoncpp-1.7.5-1  mingw-w64-i686-libarchive-3.2.1-3
            mingw-w64-i686-libidn-1.33-1  mingw-w64-i686-libmetalink-0.1.3-1
            mingw-w64-i686-libssh2-1.7.0-1  mingw-w64-i686-libsystre-1.0.1-2
            mingw-w64-i686-libtre-git-r122.c2f5d13-4
            mingw-w64-i686-lz4-1.7.1.r656-1  mingw-w64-i686-lzo2-2.09-2
            mingw-w64-i686-mpc-1.0.3-2  mingw-w64-i686-mpfr-3.1.4.p3-4
            mingw-w64-i686-ncurses-6.0.20161001-1  mingw-w64-i686-nettle-3.3-1
            mingw-w64-i686-nghttp2-1.15.0-1  mingw-w64-i686-readline-6.3.008-1
            mingw-w64-i686-rtmpdump-git-r512.fa8646d-2
            mingw-w64-i686-tcl-8.6.6-1  mingw-w64-i686-termcap-1.3.1-2
            mingw-w64-i686-tk-8.6.6-1
            mingw-w64-i686-windows-default-manifest-6.4-2
            mingw-w64-i686-winpthreads-git-5.0.0.4741.2c8939a-1
            mingw-w64-i686-xz-5.2.2-1  mingw-w64-i686-cmake-3.6.2-1
            mingw-w64-i686-gcc-6.2.0-2  mingw-w64-i686-python2-2.7.12-1

Будет загружено:   73,94 MiB
Будет установлено:  468,13 MiB

:: Приступить к установке? [Y/n] y
:: Получение пакетов...
 mingw-w64-i686-gdbm...   162,4 KiB   417K/s 00:00 [#####################] 100%
 mingw-w64-i686-libt...    69,1 KiB   356K/s 00:00 [#####################] 100%
 mingw-w64-i686-libs...     9,1 KiB  0,00B/s 00:00 [#####################] 100%
 mingw-w64-i686-ncur...  1669,9 KiB   333K/s 00:05 [#####################] 100%
 mingw-w64-i686-term...    12,3 KiB  6,01M/s 00:00 [#####################] 100%
 mingw-w64-i686-read...   327,2 KiB   339K/s 00:01 [#####################] 100%
 mingw-w64-i686-tcl-...     2,9 MiB   326K/s 00:09 [#####################] 100%
 mingw-w64-i686-tk-8...  1879,1 KiB   324K/s 00:06 [#####################] 100%
 mingw-w64-i686-pyth...    11,2 MiB   322K/s 00:36 [#####################] 100%
 mingw-w64-i686-c-ar...   125,6 KiB   631K/s 00:00 [#####################] 100%
 mingw-w64-i686-libi...   228,7 KiB   236K/s 00:01 [#####################] 100%
 mingw-w64-i686-libm...    57,9 KiB   303K/s 00:00 [#####################] 100%
 mingw-w64-i686-libs...   226,3 KiB   390K/s 00:01 [#####################] 100%
 mingw-w64-i686-nett...   420,3 KiB   362K/s 00:01 [#####################] 100%
 mingw-w64-i686-gnut...  1643,7 KiB   328K/s 00:05 [#####################] 100%
 mingw-w64-i686-rtmp...   159,8 KiB   411K/s 00:00 [#####################] 100%
 mingw-w64-i686-jans...    56,2 KiB  11,0M/s 00:00 [#####################] 100%
 mingw-w64-i686-nght...   169,6 KiB   291K/s 00:01 [#####################] 100%
 mingw-w64-i686-curl...   935,6 KiB   324K/s 00:03 [#####################] 100%
 mingw-w64-i686-json...   106,3 KiB   542K/s 00:00 [#####################] 100%
 mingw-w64-i686-lz4-...    79,0 KiB   407K/s 00:00 [#####################] 100%
 mingw-w64-i686-lzo2...    87,1 KiB   447K/s 00:00 [#####################] 100%
 mingw-w64-i686-xz-5...   296,2 KiB   381K/s 00:01 [#####################] 100%
 mingw-w64-i686-liba...   675,5 KiB   350K/s 00:02 [#####################] 100%
 mingw-w64-i686-cmak...     4,3 MiB   329K/s 00:13 [#####################] 100%
 mingw-w64-i686-binu...    11,4 MiB   326K/s 00:36 [#####################] 100%
 mingw-w64-i686-head...     5,0 MiB   328K/s 00:16 [#####################] 100%
 mingw-w64-i686-crt-...  1915,7 KiB   331K/s 00:06 [#####################] 100%
 mingw-w64-i686-isl-...   570,9 KiB   329K/s 00:02 [#####################] 100%
 mingw-w64-i686-mpfr...   270,0 KiB   349K/s 00:01 [#####################] 100%
 mingw-w64-i686-mpc-...    62,3 KiB   325K/s 00:00 [#####################] 100%
 mingw-w64-i686-wind...  1472,0   B  0,00B/s 00:00 [#####################] 100%
 mingw-w64-i686-winp...    46,0 KiB  11,2M/s 00:00 [#####################] 100%
 mingw-w64-i686-gcc-...    27,2 MiB   325K/s 01:26 [#####################] 100%
(34/34) проверка ключей                            [#####################] 100%
(34/34) проверяется целостность пакета             [#####################] 100%
(34/34) загрузка файлов пакетов                    [#####################] 100%
(34/34) проверка конфликтов файлов                 [#####################] 100%
(34/34) проверяется доступное место                [#####################] 100%
:: Processing package changes...
( 1/34) установка mingw-w64-i686-gdbm              [#####################] 100%
( 2/34) установка mingw-w64-i686-libtre-git        [#####################] 100%
( 3/34) установка mingw-w64-i686-libsystre         [#####################] 100%
( 4/34) установка mingw-w64-i686-ncurses           [#####################] 100%
( 5/34) установка mingw-w64-i686-termcap           [#####################] 100%
( 6/34) установка mingw-w64-i686-readline          [#####################] 100%
( 7/34) установка mingw-w64-i686-tcl               [#####################] 100%
( 8/34) установка mingw-w64-i686-tk                [#####################] 100%
( 9/34) установка mingw-w64-i686-python2           [#####################] 100%
(10/34) установка mingw-w64-i686-c-ares            [#####################] 100%
(11/34) установка mingw-w64-i686-libidn            [#####################] 100%
(12/34) установка mingw-w64-i686-libmetalink       [#####################] 100%
(13/34) установка mingw-w64-i686-libssh2           [#####################] 100%
(14/34) установка mingw-w64-i686-nettle            [#####################] 100%
(15/34) установка mingw-w64-i686-gnutls            [#####################] 100%
(16/34) установка mingw-w64-i686-rtmpdump-git      [#####################] 100%
(17/34) установка mingw-w64-i686-jansson           [#####################] 100%
(18/34) установка mingw-w64-i686-nghttp2           [#####################] 100%
(19/34) установка mingw-w64-i686-curl              [#####################] 100%
(20/34) установка mingw-w64-i686-jsoncpp           [#####################] 100%
(21/34) установка mingw-w64-i686-lz4               [#####################] 100%
(22/34) установка mingw-w64-i686-lzo2              [#####################] 100%
(23/34) установка mingw-w64-i686-xz                [#####################] 100%
(24/34) установка mingw-w64-i686-libarchive        [#####################] 100%
(25/34) установка mingw-w64-i686-cmake             [#####################] 100%
Дополнительные зависимости для 'mingw-w64-i686-cmake'
    mingw-w64-i686-qt5: CMake Qt GUI
(26/34) установка mingw-w64-i686-binutils          [#####################] 100%
(27/34) установка mingw-w64-i686-headers-git       [#####################] 100%
(28/34) установка mingw-w64-i686-crt-git           [#####################] 100%
(29/34) установка mingw-w64-i686-isl               [#####################] 100%
(30/34) установка mingw-w64-i686-mpfr              [#####################] 100%
(31/34) установка mingw-w64-i686-mpc               [#####################] 100%
(32/34) установка mingw-w64-i686-windows-defau...  [#####################] 100%
(33/34) установка mingw-w64-i686-winpthreads-git   [#####################] 100%
(34/34) установка mingw-w64-i686-gcc               [#####################] 100%

Кот@DESKTOP-0G54NVG MSYS ~
$ which gcc
which: no gcc in (/usr/local/bin:/usr/bin:/bin:/opt/bin:/c/Windows/System32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)

Кот@DESKTOP-0G54NVG MSYS ~
$ export PATH="/e/Rust stable GNU 1.12\bin":$PATH

Кот@DESKTOP-0G54NVG MSYS ~
$ cd /e/how2-rs

Кот@DESKTOP-0G54NVG MSYS /e/how2-rs
$ cargo build --release
   Compiling how2-rs v0.3.0 (file:///E:/how2-rs)
warning: method is never used: `per_page`, #[warn(dead_code)] on by default
  --> src\google.rs:49:5
   |
49 |     pub fn per_page(&self) -> usize {
   |     ^

error: linking with `gcc` failed: exit code: 1
  |
  = note: "gcc" "-Wl,--enable-long-section-names" "-fno-use-linker-plugin" "-Wl,--nxcompat" "-nostdlib" "-Wl,--large-address-aware" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\crt2.o" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsbegin.o" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "E:\\how2-rs\\target\\release\\how2_rs.0.o" "-o" "E:\\how2-rs\\target\\release\\how2_rs.exe" "-Wl,--gc-sections" "-nodefaultlibs" "-L" "E:\\how2-rs\\target\\release\\deps" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-34127e457ba772b1\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-sys-extras-0ba92f782c10427a\\out" "-L" "E:\\how2-rs\\target\\release\\build\\miniz-sys-1d7d7097dd3d0ee2\\out" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "-Wl,-Bstatic" "-Wl,-Bdynamic" "E:\\how2-rs\\target\\release\\deps\\libselect-7710e81498947153.rlib" "E:\\how2-rs\\target\\release\\deps\\libhtml5ever-2ae4f358027648e1.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf-45e34e1e9ec3d87b.rlib" "E:\\how2-rs\\target\\release\\deps\\libflate2-626108cd41090547.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_set-d8346cf643e1e667.rlib" "E:\\how2-rs\\target\\release\\deps\\libhyper-aa158ef95fe89354.rlib" "E:\\how2-rs\\target\\release\\deps\\libsolicit-0072c507dd13ae93.rlib" "E:\\how2-rs\\target\\release\\deps\\libnum_cpus-b518557783936899.rlib" "E:\\how2-rs\\target\\release\\deps\\libhttparse-cd707f3397416210.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicase-0e34f9f0aceda196.rlib" "E:\\how2-rs\\target\\release\\deps\\libcookie-564508d6303c9fa6.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl-ed37f5113edb4a2b.rlib" "E:\\how2-rs\\target\\release\\deps\\libbitflags-2dd0c81d457fcc54.rlib" "E:\\how2-rs\\target\\release\\deps\\libmime-e161a1600a69e3b5.rlib" "E:\\how2-rs\\target\\release\\deps\\liblanguage_tags-1618bd815fd1995d.rlib" "E:\\how2-rs\\target\\release\\deps\\libtime-f01ed343ca29ba40.rlib" "E:\\how2-rs\\target\\release\\deps\\libhpack-c612da05c2873fe4.rlib" "E:\\how2-rs\\target\\release\\deps\\libtendril-dfdc44e8438af5e2.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding-1d9ba043e2ef29cb.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_tradchinese-c5d16ec08b1121d3.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_simpchinese-466772518c53cf4e.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_japanese-bd0e30e1dd0f56a4.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_singlebyte-9144d03b7a1020cf.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8-f6516539158d39aa.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_korean-d65ebe36954df3cb.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-3c21b53d50931e68.rlib" "E:\\how2-rs\\target\\release\\deps\\libidna-d49dac6bdef4ce56.rlib" "E:\\how2-rs\\target\\release\\deps\\libstring_cache-a3900d4de14e1a10.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf_shared-ea8eda63ce3e3df1.rlib" "E:\\how2-rs\\target\\release\\deps\\libserde-cf1957ea86155854.rlib" "E:\\how2-rs\\target\\release\\deps\\liblazy_static-c4d0c6f844c89335.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-9253d325b2949e2d.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_bidi-8b4998f15dff6ebb.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_normalization-57bf4f7e307b7c87.rlib" "E:\\how2-rs\\target\\release\\deps\\libuuid-7ab2a5b6610c9d42.rlib" "E:\\how2-rs\\target\\release\\deps\\librand-dc0d8b5a0b199a98.rlib" "E:\\how2-rs\\target\\release\\deps\\librustc_serialize-7ce9989bca0848e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libmatches-282f04acaeea3353.rlib" "E:\\how2-rs\\target\\release\\deps\\libtraitobject-db2838e831a57fce.rlib" "E:\\how2-rs\\target\\release\\deps\\libfutf-24cfc626bccb8fc7.rlib" "E:\\how2-rs\\target\\release\\deps\\libminiz_sys-73c5de1a332b6128.rlib" "E:\\how2-rs\\target\\release\\deps\\libdebug_unreachable-80aad8a7ec635ad5.rlib" "E:\\how2-rs\\target\\release\\deps\\libunreachable-23b3be27355035e6.rlib" "E:\\how2-rs\\target\\release\\deps\\libvoid-1e8d6565de5fc7d1.rlib" "E:\\how2-rs\\target\\release\\deps\\libmac-8e303e7283d515f7.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex-e6d1b29afaea8ab2.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8_ranges-283a6c72392caa0b.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex_syntax-cb1efd458e22cca0.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_local-9ce31b030b883d96.rlib" "E:\\how2-rs\\target\\release\\deps\\libaho_corasick-ae9cdeb55ec4942a.rlib" "E:\\how2-rs\\target\\release\\deps\\libmemchr-2ed56662bb38c345.rlib" "E:\\how2-rs\\target\\release\\deps\\liblog-d4d733002993b980.rlib" "E:\\how2-rs\\target\\release\\deps\\libtypeable-d6d631c5bfc7bfe9.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_vec-066b83cb029dd3e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_id-150fe2f77391d728.rlib" "E:\\how2-rs\\target\\release\\deps\\libkernel32-509fa9765cc5df81.rlib" "E:\\how2-rs\\target\\release\\deps\\libwinapi-cadf002e62789fde.rlib" "E:\\how2-rs\\target\\release\\deps\\libgetopts-38b5f0c3319266b1.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys_extras-0736125f03ee4592.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys-4a3524ef1bc5ab61.rlib" "E:\\how2-rs\\target\\release\\deps\\liblibc-2b61e37508f49e74.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libstd-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libpanic_unwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libunwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liblibc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librand-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcollections-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc_system-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librustc_unicode-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcore-5c6cf767.rlib" "-l" "advapi32" "-l" "kernel32" "-l" "ssl32" "-l" "eay32" "-l" "ws2_32" "-l" "userenv" "-l" "shell32" "-l" "advapi32" "-l" "gcc_eh" "-l" "gcc_eh" "-l" "compiler-rt" "-lmingwex" "-lmingw32" "-lgcc" "-lmsvcrt" "-luser32" "-lkernel32" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsend.o"
  = note: ld: cannot find -lssl32
ld: cannot find -leay32

error: aborting due to previous error

error: Could not compile `how2-rs`.

To learn more, run the command again with --verbose.

Кот@DESKTOP-0G54NVG MSYS /e/how2-rs
$ pacman -Rs mingw-w64-x86_64-gcc
проверка зависимостей...

Пакеты (9) mingw-w64-x86_64-binutils-2.27-2
           mingw-w64-x86_64-crt-git-5.0.0.4745.d2384c2-1
           mingw-w64-x86_64-headers-git-5.0.0.4747.0f8f626-1
           mingw-w64-x86_64-isl-0.17.1-1  mingw-w64-x86_64-mpc-1.0.3-2
           mingw-w64-x86_64-mpfr-3.1.4.p3-4
           mingw-w64-x86_64-windows-default-manifest-6.4-2
           mingw-w64-x86_64-winpthreads-git-5.0.0.4741.2c8939a-1
           mingw-w64-x86_64-gcc-6.2.0-2

Будет освобождено:  348,39 MiB

:: Удалить эти пакеты? [Y/n] y
:: Processing package changes...
(1/9) удаление mingw-w64-x86_64-gcc                [#####################] 100%
(2/9) удаление mingw-w64-x86_64-winpthreads-git    [#####################] 100%
(3/9) удаление mingw-w64-x86_64-crt-git            [#####################] 100%
(4/9) удаление mingw-w64-x86_64-headers-git        [#####################] 100%
(5/9) удаление mingw-w64-x86_64-windows-defaul...  [#####################] 100%
(6/9) удаление mingw-w64-x86_64-mpc                [#####################] 100%
(7/9) удаление mingw-w64-x86_64-mpfr               [#####################] 100%
(8/9) удаление mingw-w64-x86_64-isl                [#####################] 100%
(9/9) удаление mingw-w64-x86_64-binutils           [#####################] 100%

Кот@DESKTOP-0G54NVG MSYS /e/how2-rs
$ which gcc
which: no gcc in (/e/Rust stable GNU 1.12\bin:/usr/local/bin:/usr/bin:/bin:/opt/bin:/c/Windows/System32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)

Кот@DESKTOP-0G54NVG MSYS /e/how2-rs
$ export PATH="/e/Rust stable GNU 1.12\bin":$PATH

Кот@DESKTOP-0G54NVG MSYS /e/how2-rs
$ cargo build --release
   Compiling how2-rs v0.3.0 (file:///E:/how2-rs)
warning: method is never used: `per_page`, #[warn(dead_code)] on by default
  --> src\google.rs:49:5
   |
49 |     pub fn per_page(&self) -> usize {
   |     ^

error: linking with `gcc` failed: exit code: 1
  |
  = note: "gcc" "-Wl,--enable-long-section-names" "-fno-use-linker-plugin" "-Wl,--nxcompat" "-nostdlib" "-Wl,--large-address-aware" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\crt2.o" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsbegin.o" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "E:\\how2-rs\\target\\release\\how2_rs.0.o" "-o" "E:\\how2-rs\\target\\release\\how2_rs.exe" "-Wl,--gc-sections" "-nodefaultlibs" "-L" "E:\\how2-rs\\target\\release\\deps" "-L" "E:\\how2-rs\\target\\release\\build\\miniz-sys-1d7d7097dd3d0ee2\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-34127e457ba772b1\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-sys-extras-0ba92f782c10427a\\out" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "-Wl,-Bstatic" "-Wl,-Bdynamic" "E:\\how2-rs\\target\\release\\deps\\libselect-7710e81498947153.rlib" "E:\\how2-rs\\target\\release\\deps\\libhtml5ever-2ae4f358027648e1.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf-45e34e1e9ec3d87b.rlib" "E:\\how2-rs\\target\\release\\deps\\libflate2-626108cd41090547.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_set-d8346cf643e1e667.rlib" "E:\\how2-rs\\target\\release\\deps\\libhyper-aa158ef95fe89354.rlib" "E:\\how2-rs\\target\\release\\deps\\libsolicit-0072c507dd13ae93.rlib" "E:\\how2-rs\\target\\release\\deps\\libnum_cpus-b518557783936899.rlib" "E:\\how2-rs\\target\\release\\deps\\libhttparse-cd707f3397416210.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicase-0e34f9f0aceda196.rlib" "E:\\how2-rs\\target\\release\\deps\\libcookie-564508d6303c9fa6.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl-ed37f5113edb4a2b.rlib" "E:\\how2-rs\\target\\release\\deps\\libbitflags-2dd0c81d457fcc54.rlib" "E:\\how2-rs\\target\\release\\deps\\libmime-e161a1600a69e3b5.rlib" "E:\\how2-rs\\target\\release\\deps\\liblanguage_tags-1618bd815fd1995d.rlib" "E:\\how2-rs\\target\\release\\deps\\libtime-f01ed343ca29ba40.rlib" "E:\\how2-rs\\target\\release\\deps\\libhpack-c612da05c2873fe4.rlib" "E:\\how2-rs\\target\\release\\deps\\libtendril-dfdc44e8438af5e2.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding-1d9ba043e2ef29cb.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_tradchinese-c5d16ec08b1121d3.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_simpchinese-466772518c53cf4e.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_japanese-bd0e30e1dd0f56a4.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_singlebyte-9144d03b7a1020cf.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8-f6516539158d39aa.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_korean-d65ebe36954df3cb.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-3c21b53d50931e68.rlib" "E:\\how2-rs\\target\\release\\deps\\libidna-d49dac6bdef4ce56.rlib" "E:\\how2-rs\\target\\release\\deps\\libstring_cache-a3900d4de14e1a10.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf_shared-ea8eda63ce3e3df1.rlib" "E:\\how2-rs\\target\\release\\deps\\libserde-cf1957ea86155854.rlib" "E:\\how2-rs\\target\\release\\deps\\liblazy_static-c4d0c6f844c89335.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-9253d325b2949e2d.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_bidi-8b4998f15dff6ebb.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_normalization-57bf4f7e307b7c87.rlib" "E:\\how2-rs\\target\\release\\deps\\libuuid-7ab2a5b6610c9d42.rlib" "E:\\how2-rs\\target\\release\\deps\\librand-dc0d8b5a0b199a98.rlib" "E:\\how2-rs\\target\\release\\deps\\librustc_serialize-7ce9989bca0848e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libmatches-282f04acaeea3353.rlib" "E:\\how2-rs\\target\\release\\deps\\libtraitobject-db2838e831a57fce.rlib" "E:\\how2-rs\\target\\release\\deps\\libfutf-24cfc626bccb8fc7.rlib" "E:\\how2-rs\\target\\release\\deps\\libminiz_sys-73c5de1a332b6128.rlib" "E:\\how2-rs\\target\\release\\deps\\libdebug_unreachable-80aad8a7ec635ad5.rlib" "E:\\how2-rs\\target\\release\\deps\\libunreachable-23b3be27355035e6.rlib" "E:\\how2-rs\\target\\release\\deps\\libvoid-1e8d6565de5fc7d1.rlib" "E:\\how2-rs\\target\\release\\deps\\libmac-8e303e7283d515f7.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex-e6d1b29afaea8ab2.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8_ranges-283a6c72392caa0b.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex_syntax-cb1efd458e22cca0.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_local-9ce31b030b883d96.rlib" "E:\\how2-rs\\target\\release\\deps\\libaho_corasick-ae9cdeb55ec4942a.rlib" "E:\\how2-rs\\target\\release\\deps\\libmemchr-2ed56662bb38c345.rlib" "E:\\how2-rs\\target\\release\\deps\\liblog-d4d733002993b980.rlib" "E:\\how2-rs\\target\\release\\deps\\libtypeable-d6d631c5bfc7bfe9.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_vec-066b83cb029dd3e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_id-150fe2f77391d728.rlib" "E:\\how2-rs\\target\\release\\deps\\libkernel32-509fa9765cc5df81.rlib" "E:\\how2-rs\\target\\release\\deps\\libwinapi-cadf002e62789fde.rlib" "E:\\how2-rs\\target\\release\\deps\\libgetopts-38b5f0c3319266b1.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys_extras-0736125f03ee4592.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys-4a3524ef1bc5ab61.rlib" "E:\\how2-rs\\target\\release\\deps\\liblibc-2b61e37508f49e74.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libstd-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libpanic_unwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libunwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liblibc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librand-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcollections-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc_system-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librustc_unicode-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcore-5c6cf767.rlib" "-l" "advapi32" "-l" "kernel32" "-l" "ssl32" "-l" "eay32" "-l" "ws2_32" "-l" "userenv" "-l" "shell32" "-l" "advapi32" "-l" "gcc_eh" "-l" "gcc_eh" "-l" "compiler-rt" "-lmingwex" "-lmingw32" "-lgcc" "-lmsvcrt" "-luser32" "-lkernel32" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsend.o"
  = note: ld: cannot find -lssl32
ld: cannot find -leay32

error: aborting due to previous error

error: Could not compile `how2-rs`.

To learn more, run the command again with --verbose.

Кот@DESKTOP-0G54NVG MSYS /e/how2-rs
$

Thanks.

0nkery commented 7 years ago

Try to run MinGW 32-bit shell explicitly. Look for it in Start menu, please.

Also paste output of which gcc command, please.

Kristinita commented 7 years ago

I run MSYS2 MinGW 32-bit from Start menu:

MSYS2

I get same error.

Кот@DESKTOP-0G54NVG MINGW32 ~
$ uname -a
MINGW32_NT-10.0 DESKTOP-0G54NVG 2.6.0(0.304/5/3) 2016-09-07 21:23 i686 Msys

Кот@DESKTOP-0G54NVG MINGW32 ~
$  which gcc
/mingw32/bin/gcc

Кот@DESKTOP-0G54NVG MINGW32 ~
$ pacman -S mingw-w64-i686-python2 mingw-w64-i686-cmake mingw-w64-i686-gcc
предупреждение: mingw-w64-i686-python2-2.7.12-1 не устарел -- переустанавливается
предупреждение: mingw-w64-i686-cmake-3.6.2-1 не устарел -- переустанавливается
предупреждение: mingw-w64-i686-gcc-6.2.0-2 не устарел -- переустанавливается
разрешение зависимостей...
проверка конфликтов...

Пакеты (3) mingw-w64-i686-cmake-3.6.2-1  mingw-w64-i686-gcc-6.2.0-2
           mingw-w64-i686-python2-2.7.12-1

Будет установлено:  205,73 MiB
Изменение размера:    0,00 MiB

:: Приступить к установке? [Y/n] y
(3/3) проверка ключей                              [#####################] 100%
(3/3) проверяется целостность пакета               [#####################] 100%
(3/3) загрузка файлов пакетов                      [#####################] 100%
(3/3) проверка конфликтов файлов                   [#####################] 100%
(3/3) проверяется доступное место                  [#####################] 100%
:: Processing package changes...
(1/3) переустановка mingw-w64-i686-python2         [#####################] 100%
(2/3) переустановка mingw-w64-i686-cmake           [#####################] 100%
(3/3) переустановка mingw-w64-i686-gcc             [#####################] 100%

Кот@DESKTOP-0G54NVG MINGW32 ~
$ which gcc
/mingw32/bin/gcc

Кот@DESKTOP-0G54NVG MINGW32 ~
$ export PATH="/e/Rust stable GNU 1.12\bin":$PATH

Кот@DESKTOP-0G54NVG MINGW32 ~
$ cd /e/how2-rs

Кот@DESKTOP-0G54NVG MINGW32 /e/how2-rs
$ cargo build --release
   Compiling how2-rs v0.3.0 (file:///E:/how2-rs)
warning: method is never used: `per_page`, #[warn(dead_code)] on by default
  --> src\google.rs:49:5
   |
49 |     pub fn per_page(&self) -> usize {
   |     ^

error: linking with `gcc` failed: exit code: 1
  |
  = note: "gcc" "-Wl,--enable-long-section-names" "-fno-use-linker-plugin" "-Wl,--nxcompat" "-nostdlib" "-Wl,--large-address-aware" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\crt2.o" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsbegin.o" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "E:\\how2-rs\\target\\release\\how2_rs.0.o" "-o" "E:\\how2-rs\\target\\release\\how2_rs.exe" "-Wl,--gc-sections" "-nodefaultlibs" "-L" "E:\\how2-rs\\target\\release\\deps" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-34127e457ba772b1\\out" "-L" "E:\\how2-rs\\target\\release\\build\\openssl-sys-extras-0ba92f782c10427a\\out" "-L" "E:\\how2-rs\\target\\release\\build\\miniz-sys-1d7d7097dd3d0ee2\\out" "-L" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib" "-Wl,-Bstatic" "-Wl,-Bdynamic" "E:\\how2-rs\\target\\release\\deps\\libselect-7710e81498947153.rlib" "E:\\how2-rs\\target\\release\\deps\\libhtml5ever-2ae4f358027648e1.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf-45e34e1e9ec3d87b.rlib" "E:\\how2-rs\\target\\release\\deps\\libflate2-626108cd41090547.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_set-d8346cf643e1e667.rlib" "E:\\how2-rs\\target\\release\\deps\\libhyper-aa158ef95fe89354.rlib" "E:\\how2-rs\\target\\release\\deps\\libsolicit-0072c507dd13ae93.rlib" "E:\\how2-rs\\target\\release\\deps\\libnum_cpus-b518557783936899.rlib" "E:\\how2-rs\\target\\release\\deps\\libhttparse-cd707f3397416210.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicase-0e34f9f0aceda196.rlib" "E:\\how2-rs\\target\\release\\deps\\libcookie-564508d6303c9fa6.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl-ed37f5113edb4a2b.rlib" "E:\\how2-rs\\target\\release\\deps\\libbitflags-2dd0c81d457fcc54.rlib" "E:\\how2-rs\\target\\release\\deps\\libmime-e161a1600a69e3b5.rlib" "E:\\how2-rs\\target\\release\\deps\\liblanguage_tags-1618bd815fd1995d.rlib" "E:\\how2-rs\\target\\release\\deps\\libtime-f01ed343ca29ba40.rlib" "E:\\how2-rs\\target\\release\\deps\\libhpack-c612da05c2873fe4.rlib" "E:\\how2-rs\\target\\release\\deps\\libtendril-dfdc44e8438af5e2.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding-1d9ba043e2ef29cb.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_tradchinese-c5d16ec08b1121d3.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_simpchinese-466772518c53cf4e.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_japanese-bd0e30e1dd0f56a4.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_singlebyte-9144d03b7a1020cf.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8-f6516539158d39aa.rlib" "E:\\how2-rs\\target\\release\\deps\\libencoding_index_korean-d65ebe36954df3cb.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-3c21b53d50931e68.rlib" "E:\\how2-rs\\target\\release\\deps\\libidna-d49dac6bdef4ce56.rlib" "E:\\how2-rs\\target\\release\\deps\\libstring_cache-a3900d4de14e1a10.rlib" "E:\\how2-rs\\target\\release\\deps\\libphf_shared-ea8eda63ce3e3df1.rlib" "E:\\how2-rs\\target\\release\\deps\\libserde-cf1957ea86155854.rlib" "E:\\how2-rs\\target\\release\\deps\\liblazy_static-c4d0c6f844c89335.rlib" "E:\\how2-rs\\target\\release\\deps\\liburl-9253d325b2949e2d.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_bidi-8b4998f15dff6ebb.rlib" "E:\\how2-rs\\target\\release\\deps\\libunicode_normalization-57bf4f7e307b7c87.rlib" "E:\\how2-rs\\target\\release\\deps\\libuuid-7ab2a5b6610c9d42.rlib" "E:\\how2-rs\\target\\release\\deps\\librand-dc0d8b5a0b199a98.rlib" "E:\\how2-rs\\target\\release\\deps\\librustc_serialize-7ce9989bca0848e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libmatches-282f04acaeea3353.rlib" "E:\\how2-rs\\target\\release\\deps\\libtraitobject-db2838e831a57fce.rlib" "E:\\how2-rs\\target\\release\\deps\\libfutf-24cfc626bccb8fc7.rlib" "E:\\how2-rs\\target\\release\\deps\\libminiz_sys-73c5de1a332b6128.rlib" "E:\\how2-rs\\target\\release\\deps\\libdebug_unreachable-80aad8a7ec635ad5.rlib" "E:\\how2-rs\\target\\release\\deps\\libunreachable-23b3be27355035e6.rlib" "E:\\how2-rs\\target\\release\\deps\\libvoid-1e8d6565de5fc7d1.rlib" "E:\\how2-rs\\target\\release\\deps\\libmac-8e303e7283d515f7.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex-e6d1b29afaea8ab2.rlib" "E:\\how2-rs\\target\\release\\deps\\libutf8_ranges-283a6c72392caa0b.rlib" "E:\\how2-rs\\target\\release\\deps\\libregex_syntax-cb1efd458e22cca0.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_local-9ce31b030b883d96.rlib" "E:\\how2-rs\\target\\release\\deps\\libaho_corasick-ae9cdeb55ec4942a.rlib" "E:\\how2-rs\\target\\release\\deps\\libmemchr-2ed56662bb38c345.rlib" "E:\\how2-rs\\target\\release\\deps\\liblog-d4d733002993b980.rlib" "E:\\how2-rs\\target\\release\\deps\\libtypeable-d6d631c5bfc7bfe9.rlib" "E:\\how2-rs\\target\\release\\deps\\libbit_vec-066b83cb029dd3e8.rlib" "E:\\how2-rs\\target\\release\\deps\\libthread_id-150fe2f77391d728.rlib" "E:\\how2-rs\\target\\release\\deps\\libkernel32-509fa9765cc5df81.rlib" "E:\\how2-rs\\target\\release\\deps\\libwinapi-cadf002e62789fde.rlib" "E:\\how2-rs\\target\\release\\deps\\libgetopts-38b5f0c3319266b1.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys_extras-0736125f03ee4592.rlib" "E:\\how2-rs\\target\\release\\deps\\libopenssl_sys-4a3524ef1bc5ab61.rlib" "E:\\how2-rs\\target\\release\\deps\\liblibc-2b61e37508f49e74.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libstd-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libpanic_unwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libunwind-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liblibc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librand-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcollections-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\liballoc_system-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\librustc_unicode-5c6cf767.rlib" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\libcore-5c6cf767.rlib" "-l" "advapi32" "-l" "kernel32" "-l" "ssl32" "-l" "eay32" "-l" "ws2_32" "-l" "userenv" "-l" "shell32" "-l" "advapi32" "-l" "gcc_eh" "-l" "gcc_eh" "-l" "compiler-rt" "-lmingwex" "-lmingw32" "-lgcc" "-lmsvcrt" "-luser32" "-lkernel32" "E:\\Rust stable GNU 1.12\\lib\\rustlib\\i686-pc-windows-gnu\\lib\\rsend.o"
  = note: ld: cannot find -lssl32
ld: cannot find -leay32

error: aborting due to previous error

error: Could not compile `how2-rs`.

To learn more, run the command again with --verbose.

Кот@DESKTOP-0G54NVG MINGW32 /e/how2-rs
$
0nkery commented 7 years ago

Something went wrong somewhere. I can't say no more. :)

I can upload pre-built version of how2-rs for Windows, if you want.

Kristinita commented 7 years ago

I can upload pre-built version of how2-rs for Windows, if you want.

It's would be nice 👍 .

0nkery commented 7 years ago

So, here it is.

PS. Говорю по-русски, кстати.

Kristinita commented 7 years ago

Спасибо! Если можно, буду говорить по-русски. Теперь непонятно, как пользоваться.

Клонировал репозиторий c how2-rs → в папке, где находится файл how2rs.exe, запустил командную строку → получаю ошибку.

E:\how2-rs\build\windows_i686>how2-rs PHP
thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', ../src/libcore\option.rs:326
note: Run with `RUST_BACKTRACE=1` for a backtrace.

E:\how2-rs\build\windows_i686>how2-rs PHP RUST_BACKTRACE=1
The RUST_BACKTRACE environment variable will give you a backtrace. Try

$ RUST_BACKTRACE=1 ./target/ecmiwc -i www.google.com -u testuser -v test

===-----===
There is a pull request merged into main rust repo which adds file names and line numbers to backtrace. As far as I can see it was a part of rust 1.0.0 stable release.

You have to enable backtraces and build executable using cargo profile which includes debug symbols into executable (with debug = true option in cargo manifest). AFAIK cargo run is using debug profile by default now.

Here is example trace output with file names and line numbers:

[user@salikhov ~/workspace/mqtt-rust $ RUST_BACKTRACE=1 cargo run
   Compiling mqtt v0.1.0 (file:///home/user/workspace/mqtt-rust)

     Running `target/debug/mqtt`
thread '<main>' panicked at 'I want line numbers!', src/proto/client.rs:33
stack backtrace:
   1:     0x7ff049fa47d9 - sys::backtrace::tracing::imp::write::he18882fa84e6b00ePnt
   2:     0x7ff049fa39b8 - panicking::on_panic::h495226a97f084523enx
   3:     0x7ff049f9dcce - sys_common::unwind::begin_unwind_inner::h7a4ee06c0d57e26affs
   4:     0x7ff049f95f47 - sys_common::unwind::begin_unwind::h13029855766851973181
                        at ../src/libstd/sys/common/unwind/mod.rs:232
   5:     0x7ff049f95e8a - proto::client::MqttConnection::connect::h633d3d42c15a3dedgYa
                        at /home/user/workspace/mqtt-rust/<std macros>:3
   6:     0x7ff049f80416 - main::h1d77c75265710f92gaa
                        at src/main.rs:5
   7:     0x7ff049fa6084 - sys_common::unwind::try::try_fn::h4848098439110500489
   8:     0x7ff049fa3098 - __rust_try
   9:     0x7ff049fa5cf8 - rt::lang_start::hcf64c98c1a7c0031Zkx
  10:     0x7ff049f834f6 - main
  11:     0x7ff049170ec4 - __libc_start_main
  12:     0x7ff049f802a8 - <unknown>
  13:                0x0 - <unknown>
An unknown error occurred

Unfortunately, this is broken on some platforms like MacOS X. There is open issue about this in rust github issue tracker.

===-----===
If you actually look at the headers that Google returns:

HTTP/1.1 200 OK
Date: Fri, 22 Jul 2016 20:45:54 GMT
Expires: -1
Cache-Control: private, max-age=0
Content-Type: text/html; charset=ISO-8859-1
P3P: CP="This is not a P3P policy! See https://www.google.com/support/accounts/answer/151657?hl=en for more info."
Server: gws
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Set-Cookie: NID=82=YwAD4Rj09u6gUA8OtQH73BUz6UlNdeRc9Z_iGjyaDqFdRGMdslypu1zsSDWQ4xRJFyEn9-UtR7U6G7HKehoyxvy9HItnDlg8iLsxzlhNcg01luW3_-HWs3l9S3dmHIVh; expires=Sat, 21-Jan-2017 20:45:54 GMT; path=/; domain=.google.ca; HttpOnly
Alternate-Protocol: 443:quic
Alt-Svc: quic=":443"; ma=2592000; v="36,35,34,33,32,31,30,29,28,27,26,25"
Accept-Ranges: none
Vary: Accept-Encoding
Transfer-Encoding: chunked

You can see

  Content-Type: text/html; charset=ISO-8859-1

Additionally

  Therefore, the error must be caused by me incorrectly converting the byte sequence into an UTF-8 string.

There is no conversion to UTF-8 happening. read_to_string simply ensures that the data is UTF-8.

Simply put, assuming that an arbitrary HTML page is encoded in UTF-8 is completely incorrect. At best, you have to parse the headers to find the encoding and then convert the data. This is complicated because there's no real definition for what encoding the headers are in.

Once you have found the correct encoding, you can use a crate such as encoding to properly transform the result into UTF-8, if the result is even text! Remember that HTTP can return binary files such as images.

===-----===
We can confirm with the iconv command that the data returned from http://www.google.com is not valid UTF-8:

$ wget http://google.com -O page.html
$ iconv -f utf-8 page.html > /dev/null
iconv: illegal input sequence at position 5591

For some other urls (like http://www.reddit.com) the code works fine.

If we assume that the most part of the data is valid UTF-8, we can use String::from_utf8_lossy to workaround the problem:

pub fn print_html(url: &str) {
    let client = Client::new();
    let req = client.get(url).send();

    match req {
        Ok(mut res) => {
            println!("{}", res.status);

            let mut body = Vec::new();

            match res.read_to_end(&mut body) {
                Ok(_) => println!("{:?}", String::from_utf8_lossy(&*body)),
                Err(why) => panic!("String conversion failure: {:?}", why),
            }
        }
        Err(why) => panic!("{:?}", why),
    }
}

Note that that Read::read_to_string and Read::read_to_end  return Ok with the number of read bytes on success, not the read data.

===-----===
I asked about this in #rust-internals, and sfackler said

  I believe it has no effect except during a panic

===-----===

E:\how2-rs\build\windows_i686>
0nkery commented 7 years ago

Все верно, просто в первом запросе (how2-rs PHP) закрался баг.

Если не затруднит, можно открыть новый тикет?

Kristinita commented 7 years ago

@0nkery , хорошо.

Если программа будет корректно работать, было бы неплохо, если бы добавили её в Chocolatey — пакетный менеджер для Windows.

Спасибо.