So I am using the iced
crate and I am trying to do a simple hello world example
This is my code:
use iced::{Text, Sandbox, Element, Settings};
fn main() -> iced::Result
{
Hello::run(Settings::default())
}
struct Hello;
impl Sandbox for Hello
{
type Message = ();
fn new() -> Self
{
Self
}
fn title(&self) -> String
{
String::from("Title")
}
fn update(&mut self, _message: Self::Message)
{
}
fn view(&mut self) -> Element<Self::Message>
{
Text::new("Hello world").into()
}
}
So when I run cargo build
I get a whole bunch of errors, starting of with
error: linking with `link.exe` failed: exit code: 1120
Then I get a huge list of directory then I get this:
= note: LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library
LINK : warning LNK4286: symbol '_invalid_parameter_noinfo_noreturn' defined in 'libucrt.lib(invalid_parameter.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_parser.o)'
LINK : warning LNK4286: symbol '_invalid_parameter_noinfo_noreturn' defined in 'libucrt.lib(invalid_parameter.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_hlsl.o)'
LINK : warning LNK4286: symbol '_invalid_parameter_noinfo_noreturn' defined in 'libucrt.lib(invalid_parameter.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_msl.o)'
LINK : warning LNK4286: symbol '_invalid_parameter_noinfo_noreturn' defined in 'libucrt.lib(invalid_parameter.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cfg.o)'
LINK : warning LNK4286: symbol '_invalid_parameter_noinfo_noreturn' defined in 'libucrt.lib(invalid_parameter.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_parsed_ir.o)'
LINK : warning LNK4217: symbol '_invalid_parameter_noinfo_noreturn' defined in 'libucrt.lib(invalid_parameter.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(wrapper.o)' in function '"void * __cdecl std::_Allocate_manually_vector_aligned<struct std::_Default_allocate_traits>(unsigned __int64)" (??$_Allocate_manually_vector_aligned@U_Default_allocate_traits@std@@@std@@YAPEAX_K@Z)'
LINK : warning LNK4286: symbol '_invalid_parameter_noinfo_noreturn' defined in 'libucrt.lib(invalid_parameter.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross.o)'
LINK : warning LNK4286: symbol '_invalid_parameter_noinfo_noreturn' defined in 'libucrt.lib(invalid_parameter.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_util.o)'
LINK : warning LNK4286: symbol '_invalid_parameter_noinfo_noreturn' defined in 'libucrt.lib(invalid_parameter.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o)'
LINK : warning LNK4286: symbol '__acrt_iob_func' defined in 'libucrt.lib(_file.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_parser.o)'
LINK : warning LNK4286: symbol '__acrt_iob_func' defined in 'libucrt.lib(_file.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_hlsl.o)'
LINK : warning LNK4286: symbol '__acrt_iob_func' defined in 'libucrt.lib(_file.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_msl.o)'
LINK : warning LNK4286: symbol '__acrt_iob_func' defined in 'libucrt.lib(_file.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cfg.o)'
LINK : warning LNK4286: symbol '__acrt_iob_func' defined in 'libucrt.lib(_file.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_parsed_ir.o)'
LINK : warning LNK4217: symbol '__acrt_iob_func' defined in 'libucrt.lib(_file.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(wrapper.o)' in function '"void __cdecl spirv_cross::report_and_abort(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?report_and_abort@spirv_cross@@YAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)'
LINK : warning LNK4286: symbol '__acrt_iob_func' defined in 'libucrt.lib(_file.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross.o)'
LINK : warning LNK4286: symbol '__acrt_iob_func' defined in 'libucrt.lib(_file.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_util.o)'
LINK : warning LNK4286: symbol '__acrt_iob_func' defined in 'libucrt.lib(_file.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o)'
LINK : warning LNK4286: symbol 'fflush' defined in 'libucrt.lib(fflush.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_parser.o)'
LINK : warning LNK4286: symbol 'fflush' defined in 'libucrt.lib(fflush.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_hlsl.o)'
LINK : warning LNK4286: symbol 'fflush' defined in 'libucrt.lib(fflush.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_msl.o)'
LINK : warning LNK4286: symbol 'fflush' defined in 'libucrt.lib(fflush.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cfg.o)'
LINK : warning LNK4286: symbol 'fflush' defined in 'libucrt.lib(fflush.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_parsed_ir.o)'
LINK : warning LNK4217: symbol 'fflush' defined in 'libucrt.lib(fflush.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(wrapper.o)' in function '"void __cdecl spirv_cross::report_and_abort(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?report_and_abort@spirv_cross@@YAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)'
LINK : warning LNK4286: symbol 'fflush' defined in 'libucrt.lib(fflush.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross.o)'
LINK : warning LNK4286: symbol 'fflush' defined in 'libucrt.lib(fflush.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_util.o)'
LINK : warning LNK4286: symbol 'fflush' defined in 'libucrt.lib(fflush.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o)'
LINK : warning LNK4286: symbol '__stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_parser.o)'
LINK : warning LNK4286: symbol '__stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_hlsl.o)'
LINK : warning LNK4286: symbol '__stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_msl.o)'
LINK : warning LNK4286: symbol '__stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cfg.o)'
LINK : warning LNK4286: symbol '__stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_parsed_ir.o)'
LINK : warning LNK4217: symbol '__stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(wrapper.o)' in function '_vfprintf_l'
LINK : warning LNK4286: symbol '__stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross.o)'
LINK : warning LNK4286: symbol '__stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_util.o)'
LINK : warning LNK4286: symbol '__stdio_common_vfprintf' defined in 'libucrt.lib(output.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o)'
LINK : warning LNK4286: symbol 'free' defined in 'libucrt.lib(free.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_parser.o)'
LINK : warning LNK4286: symbol 'free' defined in 'libucrt.lib(free.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_hlsl.o)'
LINK : warning LNK4286: symbol 'free' defined in 'libucrt.lib(free.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_msl.o)'
LINK : warning LNK4286: symbol 'free' defined in 'libucrt.lib(free.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cfg.o)'
LINK : warning LNK4286: symbol 'free' defined in 'libucrt.lib(free.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_parsed_ir.o)'
LINK : warning LNK4217: symbol 'free' defined in 'libucrt.lib(free.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(wrapper.o)' in function 'sc_internal_free_pointer'
LINK : warning LNK4286: symbol 'free' defined in 'libucrt.lib(free.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross.o)'
LINK : warning LNK4286: symbol 'free' defined in 'libucrt.lib(free.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_util.o)'
LINK : warning LNK4286: symbol 'free' defined in 'libucrt.lib(free.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o)'
LINK : warning LNK4286: symbol 'malloc' defined in 'libucrt.lib(malloc.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_parser.o)'
LINK : warning LNK4286: symbol 'malloc' defined in 'libucrt.lib(malloc.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_hlsl.o)'
LINK : warning LNK4286: symbol 'malloc' defined in 'libucrt.lib(malloc.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_msl.o)'
LINK : warning LNK4286: symbol 'malloc' defined in 'libucrt.lib(malloc.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cfg.o)'
LINK : warning LNK4286: symbol 'malloc' defined in 'libucrt.lib(malloc.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_parsed_ir.o)'
LINK : warning LNK4217: symbol 'malloc' defined in 'libucrt.lib(malloc.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(wrapper.o)' in function 'sc_internal_compiler_get_entry_points'
LINK : warning LNK4286: symbol 'malloc' defined in 'libucrt.lib(malloc.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross.o)'
LINK : warning LNK4286: symbol 'malloc' defined in 'libucrt.lib(malloc.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_util.o)'
LINK : warning LNK4286: symbol 'malloc' defined in 'libucrt.lib(malloc.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o)'
LINK : warning LNK4286: symbol 'abort' defined in 'libucrt.lib(abort.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_parser.o)'
LINK : warning LNK4286: symbol 'abort' defined in 'libucrt.lib(abort.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_hlsl.o)'
LINK : warning LNK4286: symbol 'abort' defined in 'libucrt.lib(abort.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_msl.o)'
LINK : warning LNK4286: symbol 'abort' defined in 'libucrt.lib(abort.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cfg.o)'
LINK : warning LNK4286: symbol 'abort' defined in 'libucrt.lib(abort.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_parsed_ir.o)'
LINK : warning LNK4217: symbol 'abort' defined in 'libucrt.lib(abort.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(wrapper.o)' in function '"void __cdecl spirv_cross::report_and_abort(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?report_and_abort@spirv_cross@@YAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)'
LINK : warning LNK4286: symbol 'abort' defined in 'libucrt.lib(abort.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross.o)'
LINK : warning LNK4286: symbol 'abort' defined in 'libucrt.lib(abort.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_util.o)'
LINK : warning LNK4286: symbol 'abort' defined in 'libucrt.lib(abort.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o)'
LINK : warning LNK4286: symbol 'terminate' defined in 'libucrt.lib(terminate.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_parser.o)'
LINK : warning LNK4286: symbol 'terminate' defined in 'libucrt.lib(terminate.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_hlsl.o)'
LINK : warning LNK4286: symbol 'terminate' defined in 'libucrt.lib(terminate.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_msl.o)'
LINK : warning LNK4286: symbol 'terminate' defined in 'libucrt.lib(terminate.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cfg.o)'
LINK : warning LNK4286: symbol 'terminate' defined in 'libucrt.lib(terminate.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_parsed_ir.o)'
LINK : warning LNK4217: symbol 'terminate' defined in 'libucrt.lib(terminate.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(wrapper.o)' in function '"public: void __cdecl spirv_cross::SmallVector<struct spirv_cross::StringStream<4096,4096>::Buffer,8>::reserve(unsigned __int64)" (?reserve@?$SmallVector@UBuffer@?$StringStream@$0BAAA@$0BAAA@@spirv_cross@@$07@spirv_cross@@QEAAX_K@Z)'
LINK : warning LNK4286: symbol 'terminate' defined in 'libucrt.lib(terminate.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross.o)'
LINK : warning LNK4286: symbol 'terminate' defined in 'libucrt.lib(terminate.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_util.o)'
LINK : warning LNK4286: symbol 'terminate' defined in 'libucrt.lib(terminate.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o)'
LINK : warning LNK4286: symbol 'ceilf' defined in 'libucrt.lib(ceilf.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cfg.o)'
LINK : warning LNK4286: symbol 'ceilf' defined in 'libucrt.lib(ceilf.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_parsed_ir.o)'
LINK : warning LNK4286: symbol 'ceilf' defined in 'libucrt.lib(ceilf.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_parser.o)'
LINK : warning LNK4217: symbol 'ceilf' defined in 'libucrt.lib(ceilf.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_cross.o)' in function '"protected: unsigned __int64 __cdecl std::_Hash<class std::_Umap_traits<unsigned int,unsigned int,class std::_Uhash_compare<unsigned int,struct std::hash<unsigned int>,struct std::equal_to<unsigned int> >,class std::allocator<struct std::pair<unsigned int const ,unsigned int> >,0> >::_Min_load_factor_buckets(unsigned __int64)const " (?_Min_load_factor_buckets@?$_Hash@V?$_Umap_traits@IIV?$_Uhash_compare@IU?$hash@I@std@@U?$equal_to@I@2@@std@@V?$allocator@U?$pair@$$CBII@std@@@2@$0A@@std@@@std@@IEBA_K_K@Z)'
LINK : warning LNK4286: symbol 'ceilf' defined in 'libucrt.lib(ceilf.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o)'
LINK : warning LNK4286: symbol 'ceilf' defined in 'libucrt.lib(ceilf.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_hlsl.o)'
LINK : warning LNK4286: symbol 'ceilf' defined in 'libucrt.lib(ceilf.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_msl.o)'
LINK : warning LNK4217: symbol '__stdio_common_vsprintf' defined in 'libucrt.lib(output.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o)' in function '_vsnprintf_l'
LINK : warning LNK4286: symbol '__stdio_common_vsprintf' defined in 'libucrt.lib(output.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_msl.o)'
LINK : warning LNK4217: symbol '_dtest' defined in 'libucrt.lib(_test.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o)' in function '"int __cdecl fpclassify(double)" (?fpclassify@@YAHN@Z)'
LINK : warning LNK4217: symbol '_fdtest' defined in 'libucrt.lib(_test.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o)' in function '"int __cdecl fpclassify(float)" (?fpclassify@@YAHM@Z)'
LINK : warning LNK4217: symbol 'localeconv' defined in 'libucrt.lib(localeconv.obj)' is imported by 'libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o)' in function '"private: void __cdecl spirv_cross::CompilerGLSL::init(void)" (?init@CompilerGLSL@spirv_cross@@AEAAXXZ)'
libspirv_cross-60856a2a86c1268c.rlib(wrapper.o) : error LNK2019: unresolved external symbol __imp_strdup referenced in function sc_internal_compiler_msl_compile
OLDNAMES.lib(strdup.obi) : error LNK2001: unresolved external symbol __imp_strdup
libspirv_cross-60856a2a86c1268c.rlib(spirv_cfg.o) : error LNK2001: unresolved external symbol __imp__wassert
libspirv_cross-60856a2a86c1268c.rlib(spirv_cross_parsed_ir.o) : error LNK2001: unresolved external symbol __imp__wassert
libspirv_cross-60856a2a86c1268c.rlib(spirv_cross.o) : error LNK2001: unresolved external symbol __imp__wassert
libspirv_cross-60856a2a86c1268c.rlib(spirv_glsl.o) : error LNK2001: unresolved external symbol __imp__wassert
libspirv_cross-60856a2a86c1268c.rlib(spirv_hlsl.o) : error LNK2001: unresolved external symbol __imp__wassert
libspirv_cross-60856a2a86c1268c.rlib(spirv_msl.o) : error LNK2001: unresolved external symbol __imp__wassert
libspirv_cross-60856a2a86c1268c.rlib(spirv_msl.o) : error LNK2019: unresolved external symbol __imp_isdigit referenced in function "protected: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl spirv_cross::CompilerMSL::ensure_valid_name(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?ensure_valid_name@CompilerMSL@spirv_cross@@IEAA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V34@0@Z)
OLDNAMES.lib(strdup.obi) : error LNK2001: unresolved external symbol __imp__strdup
C:\Users\joe\Desktop\rust\target\debug\deps\rust.exe : fatal error LNK1120: 4 unresolved externals
error: aborting due to previous error
error: could not compile `rust`
I am currently using Windows 10.
Not too sure why this is happening?