2015-07-10 2 views
5

Я пытаюсь построить rust-sfml с грузом, но мой gcc не находит нужные библиотеки.Как передать параметры gcc в Rust with Cargo?

Я хочу решить это, передав опции -L для gcc, но я не могу найти удобный способ для этого.

Есть ли какие-либо возможные простые решения, кроме использования скрипта сборки?

$ cargo run 
    Compiling sfml v0.9.3 (https://github.com/jeremyletang/rust-sfml#358f076a) 
error: linking with `gcc` failed: exit code: 1 
note: "gcc" "-Wl,--enable-long-section-names" "-fno-use-linker-plugin" "-Wl,--nxcompat" "-static-libgcc" "-m64" "-L" "C:\Program Files\Rust stable 1.1\bin\rustlib\x86_64-pc-windows-gnu\lib" "-o" "D:\Programming\Rust\test_proj\target\debug\deps\sfml-4cd3c268d09fd120.dll" "D:\Programming\Rust\test_proj\target\debug\deps\sfml-4cd3c268d09fd120.o" "D:\Programming\Rust\test_proj\target\debug\deps\sfml-4cd3c268d09fd120.metadata.o" "D:\Programming\Rust\test_proj\target\debug\deps\libbitflags-ab4a647a363172d8.rlib" "D:\Programming\Rust\test_proj\target\debug\deps\liblibc-2eda841eb12a3090.rlib" "-L" "C:\Program Files\Rust stable 1.1\bin\rustlib\x86_64-pc-windows-gnu\lib" "-lstd-7d23ff90" "-L" "D:\Programming\Rust\test_proj\target\debug\deps" "-L" "D:\Programming\Rust\test_proj\target\debug\deps" "-L" "C:\Program Files\Rust stable 1.1\bin\rustlib\x86_64-pc-windows-gnu\lib" "-L" "D:\Programming\Rust\test_proj\.rust\bin\x86_64-pc-windows-gnu" "-L" "D:\Programming\Rust\test_proj\bin\x86_64-pc-windows-gnu" "-Wl,--whole-archive" "-Wl,-Bstatic" "-Wl,--no-whole-archive" "-Wl,-Bdynamic" "-lcsfml-system" "-lcsfml-window" "-lcsfml-audio" "-lcsfml-graphics" "-lcsfml-network" "-lws2_32" "-luserenv" "-shared" "-lcompiler-rt" 
note: ld: cannot find -lcsfml-system 
ld: cannot find -lcsfml-window 
ld: cannot find -lcsfml-audio 
ld: cannot find -lcsfml-graphics 
ld: cannot find -lcsfml-network 

ответ

3

Возможно, вам придется установить библиотеки SFML C, прежде чем пытаться скомпилировать привязки Rust. rust-sfml - это только привязка Rust, он не устанавливает SFML.

+0

Я уже установил библиотеку CSFML, но в другом каталоге. Больше объяснений - отредактированный вопрос. – Yang

0

Установите переменную окружения LIBRARY_PATH, которая содержит каталог, который вы пытаетесь установить.