I am writing a multi-language project (a Java library which loads and calls Rust functions through the FFI), and so I want to divide my code files up a little bit. Rather than just putting everything in src, I've made folders src/rust and src/java. How can I tell Cargo that my lib.rs file (and all of my other source files) is in src/rust rather than src? Additionally, how can I tell it to output to out/rust rather than target?
Specify Non-Standard Source Folder
2.8k Views Asked by Woodrow Barlow At
1
There are 1 best solutions below
Related Questions in BUILD
- Ionic cordova build
- Force GHC using local files
- RPM spec files with rpmbuild can have errors
- (automake, libtool) build fails in automake when using same source file name in different directory
- Backup strategy for build tool hosted on Azure VM
- include typescript file in output result build with TFS
- Android Build failed at ':app:dexDebug' with exception ( library and app project )
- GNU make - depend only on file existence and not modification time
- Error code 31 returned from mt.exe when building C++ projects in Visual Studio 2013
- IONIC FRAMEWORK Build Xcode Error :(
- Jenkins - Stage before "Source Code Management"
- Python: Trouble with dill installation
- Execution failed for task 'app:mergeDebugResources' Crunching Cruncher....png failed
- Android: Execution failed for task ':app:processDebugResources'
- Change assets urls to cdn adding absolute path in Grunt
Related Questions in RUST
- Borrow mutable and immutable reference in the same block
- Linking to a static lib compiled with MSVC
- Using a no-method trait implementation in a different module
- No error for two traits implementing the same method
- How are the generic functions and types stored in an rlib?
- Is it possible to find an element in a Vec<T> and remove it?
- What does & actually do?
- unresolved name rand::thread_rng
- Use of undeclared type that is defined in another file
- Creating byte buffers in rust
- What's the difference between filter(|x|) and filter(|&x|)?
- How to convert iterator of chars to String?
- Correct idiom for freeing repr(C) structs using Drop trait
- Rust String concatenation
- Can I mark a function as deprecated?
Related Questions in RUST-CARGO
- Right way to set up Rust using Vim
- Global feature gates in Cargo
- What is the syntax for specifying dependency versions in Cargo?
- Specify Non-Standard Source Folder
- Disable registry update in Cargo
- Copy files to the target directory after build
- How to link against Rust crate from integration tests in 'tests' folder when building static library?
- What exactly is considered a breaking change to a library crate?
- Out of source builds (external build directory) with Cargo?
- How can I make Cargo execute a build script and use a target-specific linker at the same time?
- How can you compile a Rust library to target asm.js?
- Rust cargo: how to use different features for a dep when a particular feature is enabled?
- Is there a simpler way to run clippy on my build script?
- Package with both a library and a binary?
- Only show first screenful of compile errors in Rust when building with Cargo?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
To manually set the path to your
lib.rsyou can create a[lib]section in yourCargo.tomland setpathtosrc/rust/lib.rs. The relevant Documentation can be found here: http://doc.crates.io/manifest.html#configuring-a-targetFor the output, you can set the environment variable
CARGO_TARGET_DIRtoout. Relevant documentation can be found here: http://doc.crates.io/config.html#environment-variablesOr you can create a
.cargo/configfile (also atoml-file, but no file extension) and add a[build]section with the keytarget-dirset toout. Relevant documentation can be found here: http://doc.crates.io/config.html#configuration-keys