diff --git a/lib/motion/project/builder.rb b/lib/motion/project/builder.rb index 035e291e..ae73b1d5 100644 --- a/lib/motion/project/builder.rb +++ b/lib/motion/project/builder.rb @@ -317,7 +317,8 @@ EOS objs_file = Tempfile.new('linker-objs-list') objs_list.each { |obj| objs_file.puts(obj) } objs_file.close # flush - sh "#{cxx} -o \"#{main_exec}\" -filelist \"#{objs_file.path}\" #{config.ldflags(platform)} -L#{File.join(datadir, platform)} -lrubymotion-static -lobjc -licucore #{linker_option} #{framework_search_paths} #{frameworks} #{weak_frameworks} #{config.libs.join(' ')} #{vendor_libs}" + kernel = File.join(datadir, platform, "kernel.o") + sh "#{cxx} -o \"#{main_exec}\" \"#{kernel}\" -filelist \"#{objs_file.path}\" #{config.ldflags(platform)} -L#{File.join(datadir, platform)} -lrubymotion-static -lobjc -licucore #{linker_option} #{framework_search_paths} #{frameworks} #{weak_frameworks} #{config.libs.join(' ')} #{vendor_libs}" main_exec_created = true # Change the install name of embedded frameworks. diff --git a/lib/motion/project/template/ios-extension-builder.rb b/lib/motion/project/template/ios-extension-builder.rb index af996e15..ac8e40f0 100644 --- a/lib/motion/project/template/ios-extension-builder.rb +++ b/lib/motion/project/template/ios-extension-builder.rb @@ -349,7 +349,8 @@ EOS "-stdlib=libstdc++" end end || "" - sh "#{cxx} -o \"#{main_exec}\" #{objs_list} #{config.ldflags(platform)} -L#{File.join(datadir, platform)} -lrubymotion-static -lobjc -licucore #{linker_option} #{framework_search_paths} #{frameworks} #{weak_frameworks} #{config.libs.join(' ')} #{vendor_libs}" + kernel = File.join(datadir, platform, "kernel.o") + sh "#{cxx} -o \"#{main_exec}\" \"#{kernel}\" #{objs_list} #{config.ldflags(platform)} -L#{File.join(datadir, platform)} -lrubymotion-static -lobjc -licucore #{linker_option} #{framework_search_paths} #{frameworks} #{weak_frameworks} #{config.libs.join(' ')} #{vendor_libs}" main_exec_created = true end