jherekhealy / AQFED.jl

Julia package for the book "Applied Quantitative Finance for Equity Derivatives"
MIT License
30 stars 12 forks source link

Julia (1.7.x) fails to precompile the project #3

Open eo1989 opened 2 years ago

eo1989 commented 2 years ago

Specifically Pkg.precompile() fails on PPInterpolation and subsequently AQFED entirely.

Output: """ Failed to precompile PPInterpolation [0bf8acf5-7f56-4370-abee-dfc0c3b7d49e] to C:\Users\eorlo.julia\compiled\v1.7\PPInterpolation\jl_2A5D.tmp. ERROR: LoadError: InitError: could not load library "C:\Users\eorlo.julia\artifacts\1f46d928046fae3cb2bbaffcc0589b7935d7dc76\bin\libClp-1.dll" The specified module could not be found. Stacktrace: [1] dlopen(s::String, flags::UInt32; throw_error::Bool) @ Base.Libc.Libdl .\libdl.jl:117 [2] dlopen(s::String, flags::UInt32) @ Base.Libc.Libdl .\libdl.jl:117 [3] macro expansion @ C:\Users\eorlo.julia\packages\JLLWrappers\QpMQW\src\products\library_generators.jl:54 [inlined] [4] init() @ Clp_jll C:\Users\eorlo.julia\packages\Clp_jll\ihKVc\src\wrappers\x86_64-w64-mingw32-libgfortran5-cxx11.jl:22 [5] _include_from_serialized(path::String, depmods::Vector{Any}) @ Base .\loading.jl:768 [6] _require_search_from_serialized(pkg::Base.PkgId, sourcepath::String) @ Base .\loading.jl:854 [7] _require(pkg::Base.PkgId) @ Base .\loading.jl:1097 [8] require(uuidkey::Base.PkgId) @ Base .\loading.jl:1013 [9] require(into::Module, mod::Symbol) @ Base .\loading.jl:997 [10] include(mod::Module, _path::String) @ Base .\Base.jl:418 [11] top-level scope @ C:\Users\eorlo.julia\packages\JLLWrappers\QpMQW\src\toplevel_generators.jl:188 [12] include @ .\Base.jl:418 [inlined] [13] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::String) @ Base .\loading.jl:1318 [14] top-level scope @ none:1 [15] eval @ .\boot.jl:373 [inlined] [16] eval(x::Expr) @ Base.MainInclude .\client.jl:453 [17] top-level scope @ none:1 during initialization of module Clp_jll in expression starting at C:\Users\eorlo.julia\packages\Cgl_jll\PomnD\src\wrappers\x86_64-w64-mingw32-cxx11.jl:4 in expression starting at C:\Users\eorlo.julia\packages\Cgl_jll\PomnD\src\Cgl_jll.jl:2 ERROR: LoadError: Failed to precompile Cgl_jll [3830e938-1dd0-5f3e-8b8e-b3ee43226782] to C:\Users\eorlo.julia\compiled\v1.7\Cgl_jll\jl_3C36.tmp. Stacktrace: [1] error(s::String) @ Base .\error.jl:33 [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, ignore_loaded_modules::Bool) @ Base .\loading.jl:1466 [3] compilecache(pkg::Base.PkgId, path::String) @ Base .\loading.jl:1410 [4] _require(pkg::Base.PkgId) @ Base .\loading.jl:1120 [5] require(uuidkey::Base.PkgId) @ Base .\loading.jl:1013 [6] require(into::Module, mod::Symbol) @ Base .\loading.jl:997 [7] include(mod::Module, _path::String) @ Base .\Base.jl:418 [8] top-level scope @ C:\Users\eorlo.julia\packages\JLLWrappers\QpMQW\src\toplevel_generators.jl:188 [9] include @ .\Base.jl:418 [inlined] [10] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::String) @ Base .\loading.jl:1318 [11] top-level scope @ none:1 [12] eval @ .\boot.jl:373 [inlined] [13] eval(x::Expr) @ Base.MainInclude .\client.jl:453 [14] top-level scope @ none:1 in expression starting at C:\Users\eorlo.julia\packages\Cbc_jll\szzPm\src\wrappers\x86_64-w64-mingw32-libgfortran5-cxx11.jl:5 in expression starting at C:\Users\eorlo.julia\packages\Cbc_jll\szzPm\src\Cbc_jll.jl:2 ERROR: LoadError: Failed to precompile Cbc_jll [38041ee0-ae04-5750-a4d2-bb4d0d83d27d] to C:\Users\eorlo.julia\compiled\v1.7\Cbc_jll\jl_38EA.tmp. Stacktrace: [1] error(s::String) @ Base .\error.jl:33 [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, ignore_loaded_modules::Bool) @ Base .\loading.jl:1466 [3] compilecache(pkg::Base.PkgId, path::String) @ Base .\loading.jl:1410 [4] _require(pkg::Base.PkgId) @ Base .\loading.jl:1120 [5] require(uuidkey::Base.PkgId) @ Base .\loading.jl:1013 [6] require(into::Module, mod::Symbol) @ Base .\loading.jl:997 [7] top-level scope @ C:\Users\eorlo.julia\packages\Cbc\2Npgr\src\Cbc.jl:15 [8] include @ .\Base.jl:418 [inlined] [9] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::String) @ Base .\loading.jl:1318 [10] top-level scope @ none:1 [11] eval @ .\boot.jl:373 [inlined] [12] eval(x::Expr) @ Base.MainInclude .\client.jl:453 [13] top-level scope @ none:1 in expression starting at C:\Users\eorlo.julia\packages\Cbc\2Npgr\src\Cbc.jl:1 ERROR: LoadError: Failed to precompile Cbc [9961bab8-2fa3-5c5a-9d89-47fab24efd76] to C:\Users\eorlo.julia\compiled\v1.7\Cbc\jl_3800.tmp. Stacktrace: [1] error(s::String) @ Base .\error.jl:33 [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, ignore_loaded_modules::Bool) @ Base .\loading.jl:1466 [3] compilecache(pkg::Base.PkgId, path::String) @ Base .\loading.jl:1410 [4] _require(pkg::Base.PkgId) @ Base .\loading.jl:1120 [5] require(uuidkey::Base.PkgId) @ Base .\loading.jl:1013 [6] require(into::Module, mod::Symbol) @ Base .\loading.jl:997 [7] include(mod::Module, _path::String) @ Base .\Base.jl:418 [8] include(x::String) @ PPInterpolation C:\Users\eorlo.julia\packages\PPInterpolation\0NZXx\src\PPInterpolation.jl:1 [9] top-level scope @ C:\Users\eorlo.julia\packages\PPInterpolation\0NZXx\src\PPInterpolation.jl:5 [10] include @ .\Base.jl:418 [inlined] [11] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::Nothing) @ Base .\loading.jl:1318 [12] top-level scope @ none:1 [13] eval @ .\boot.jl:373 [inlined] [14] eval(x::Expr) @ Base.MainInclude .\client.jl:453 [15] top-level scope @ none:1 in expression starting at C:\Users\eorlo.julia\packages\PPInterpolation\0NZXx\src\LaverySpline.jl:2 in expression starting at C:\Users\eorlo.julia\packages\PPInterpolation\0NZXx\src\PPInterpolation.jl:1

AQFED [75f7dc1a-7be9-4868-9021-6cf8f4c7ff3a]

Failed to precompile AQFED [75f7dc1a-7be9-4868-9021-6cf8f4c7ff3a] to C:\Users\eorlo.julia\compiled\v1.7\AQFED\jl_4A89.tmp. ERROR: LoadError: InitError: could not load library "C:\Users\eorlo.julia\artifacts\1f46d928046fae3cb2bbaffcc0589b7935d7dc76\bin\libClp-1.dll" The specified module could not be found. Stacktrace: [1] dlopen(s::String, flags::UInt32; throw_error::Bool) @ Base.Libc.Libdl .\libdl.jl:117 [2] dlopen(s::String, flags::UInt32) @ Base.Libc.Libdl .\libdl.jl:117 [3] macro expansion @ C:\Users\eorlo.julia\packages\JLLWrappers\QpMQW\src\products\library_generators.jl:54 [inlined] [4] init() @ Clp_jll C:\Users\eorlo.julia\packages\Clp_jll\ihKVc\src\wrappers\x86_64-w64-mingw32-libgfortran5-cxx11.jl:22 [5] _include_from_serialized(path::String, depmods::Vector{Any}) @ Base .\loading.jl:768 [6] _require_search_from_serialized(pkg::Base.PkgId, sourcepath::String) @ Base .\loading.jl:854 [7] _require(pkg::Base.PkgId) @ Base .\loading.jl:1097 [8] require(uuidkey::Base.PkgId) @ Base .\loading.jl:1013 [9] require(into::Module, mod::Symbol) @ Base .\loading.jl:997 [10] include(mod::Module, _path::String) @ Base .\Base.jl:418 [11] top-level scope @ C:\Users\eorlo.julia\packages\JLLWrappers\QpMQW\src\toplevel_generators.jl:188 [12] include @ .\Base.jl:418 [inlined] [13] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::String) @ Base .\loading.jl:1318 [14] top-level scope @ none:1 [15] eval @ .\boot.jl:373 [inlined] [16] eval(x::Expr) @ Base.MainInclude .\client.jl:453 [17] top-level scope @ none:1 during initialization of module Clp_jll in expression starting at C:\Users\eorlo.julia\packages\Cgl_jll\PomnD\src\wrappers\x86_64-w64-mingw32-cxx11.jl:4 in expression starting at C:\Users\eorlo.julia\packages\Cgl_jll\PomnD\src\Cgl_jll.jl:2 ERROR: LoadError: Failed to precompile Cgl_jll [3830e938-1dd0-5f3e-8b8e-b3ee43226782] to C:\Users\eorlo.julia\compiled\v1.7\Cgl_jll\jl_69FD.tmp. Stacktrace: [1] error(s::String) @ Base .\error.jl:33 [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, ignore_loaded_modules::Bool) @ Base .\loading.jl:1466 [3] compilecache(pkg::Base.PkgId, path::String) @ Base .\loading.jl:1410 [4] _require(pkg::Base.PkgId) @ Base .\loading.jl:1120 [5] require(uuidkey::Base.PkgId) @ Base .\loading.jl:1013 [6] require(into::Module, mod::Symbol) @ Base .\loading.jl:997 [7] include(mod::Module, _path::String) @ Base .\Base.jl:418 [8] top-level scope @ C:\Users\eorlo.julia\packages\JLLWrappers\QpMQW\src\toplevel_generators.jl:188 [9] include @ .\Base.jl:418 [inlined] [10] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::String) @ Base .\loading.jl:1318 [11] top-level scope @ none:1 [12] eval @ .\boot.jl:373 [inlined] [13] eval(x::Expr) @ Base.MainInclude .\client.jl:453 [14] top-level scope @ none:1 in expression starting at C:\Users\eorlo.julia\packages\Cbc_jll\szzPm\src\wrappers\x86_64-w64-mingw32-libgfortran5-cxx11.jl:5 in expression starting at C:\Users\eorlo.julia\packages\Cbc_jll\szzPm\src\Cbc_jll.jl:2 ERROR: LoadError: Failed to precompile Cbc_jll [38041ee0-ae04-5750-a4d2-bb4d0d83d27d] to C:\Users\eorlo.julia\compiled\v1.7\Cbc_jll\jl_6692.tmp. Stacktrace: [1] error(s::String) @ Base .\error.jl:33 [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, ignore_loaded_modules::Bool) @ Base .\loading.jl:1466 [3] compilecache(pkg::Base.PkgId, path::String) @ Base .\loading.jl:1410 [4] _require(pkg::Base.PkgId) @ Base .\loading.jl:1120 [5] require(uuidkey::Base.PkgId) @ Base .\loading.jl:1013 [6] require(into::Module, mod::Symbol) @ Base .\loading.jl:997 [7] top-level scope @ C:\Users\eorlo.julia\packages\Cbc\2Npgr\src\Cbc.jl:15 [8] include @ .\Base.jl:418 [inlined] [9] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::String) @ Base .\loading.jl:1318 [10] top-level scope @ none:1 [11] eval @ .\boot.jl:373 [inlined] [12] eval(x::Expr) @ Base.MainInclude .\client.jl:453 [13] top-level scope @ none:1 in expression starting at C:\Users\eorlo.julia\packages\Cbc\2Npgr\src\Cbc.jl:1 ERROR: LoadError: Failed to precompile Cbc [9961bab8-2fa3-5c5a-9d89-47fab24efd76] to C:\Users\eorlo.julia\compiled\v1.7\Cbc\jl_6598.tmp. Stacktrace: [1] error(s::String) @ Base .\error.jl:33 [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, ignore_loaded_modules::Bool) @ Base .\loading.jl:1466 [3] compilecache(pkg::Base.PkgId, path::String) @ Base .\loading.jl:1410 [4] _require(pkg::Base.PkgId) @ Base .\loading.jl:1120 [5] require(uuidkey::Base.PkgId) @ Base .\loading.jl:1013 [6] require(into::Module, mod::Symbol) @ Base .\loading.jl:997 [7] include(mod::Module, _path::String) @ Base .\Base.jl:418 [8] include(x::String) @ PPInterpolation C:\Users\eorlo.julia\packages\PPInterpolation\0NZXx\src\PPInterpolation.jl:1 [9] top-level scope @ C:\Users\eorlo.julia\packages\PPInterpolation\0NZXx\src\PPInterpolation.jl:5 [10] include @ .\Base.jl:418 [inlined] [11] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::String) @ Base .\loading.jl:1318 [12] top-level scope @ none:1 [13] eval @ .\boot.jl:373 [inlined] [14] eval(x::Expr) @ Base.MainInclude .\client.jl:453 [15] top-level scope @ none:1 in expression starting at C:\Users\eorlo.julia\packages\PPInterpolation\0NZXx\src\LaverySpline.jl:2 in expression starting at C:\Users\eorlo.julia\packages\PPInterpolation\0NZXx\src\PPInterpolation.jl:1 ERROR: LoadError: Failed to precompile PPInterpolation [0bf8acf5-7f56-4370-abee-dfc0c3b7d49e] to C:\Users\eorlo.julia\compiled\v1.7\PPInterpolation\jl_577E.tmp. Stacktrace: [1] error(s::String) @ Base .\error.jl:33 [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, ignore_loaded_modules::Bool) @ Base .\loading.jl:1466 [3] compilecache(pkg::Base.PkgId, path::String) @ Base .\loading.jl:1410 [4] _require(pkg::Base.PkgId) @ Base .\loading.jl:1120 [5] require(uuidkey::Base.PkgId) @ Base .\loading.jl:1013 [6] require(into::Module, mod::Symbol) @ Base .\loading.jl:997 [7] include(mod::Module, _path::String) @ Base .\Base.jl:418 [8] include(x::String) @ AQFED.American C:\Users\eorlo\Dev\jlProj\repos\AQFED.jl\src\AQFED.jl:54 [9] top-level scope @ C:\Users\eorlo\Dev\jlProj\repos\AQFED.jl\src\AQFED.jl:58 [10] include @ .\Base.jl:418 [inlined] [11] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::Nothing) @ Base .\loading.jl:1318 [12] top-level scope @ none:1 [13] eval @ .\boot.jl:373 [inlined] [14] eval(x::Expr) @ Base.MainInclude .\client.jl:453 [15] top-level scope @ none:1 in expression starting at C:\Users\eorlo\Dev\jlProj\repos\AQFED.jl\src\american\rkl.jl:1 in expression starting at C:\Users\eorlo\Dev\jlProj\repos\AQFED.jl\src\AQFED.jl:1

Stacktrace: [1] pkgerror(msg::String) @ Pkg.Types C:\Users\eorlo\AppData\Local\Programs\Julia-1.7.1\share\julia\stdlib\v1.7\Pkg\src\Types.jl:68 [2] precompile(ctx::Pkg.Types.Context; internal_call::Bool, strict::Bool, warn_loaded::Bool, already_instantiated::Bool, kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Pkg.API C:\Users\eorlo\AppData\Local\Programs\Julia-1.7.1\share\julia\stdlib\v1.7\Pkg\src\API.jl:1362 [3] precompile @ C:\Users\eorlo\AppData\Local\Programs\Julia-1.7.1\share\julia\stdlib\v1.7\Pkg\src\API.jl:1013 [inlined] [4] #precompile#220 @ C:\Users\eorlo\AppData\Local\Programs\Julia-1.7.1\share\julia\stdlib\v1.7\Pkg\src\API.jl:1011 [inlined] [5] precompile() @ Pkg.API C:\Users\eorlo\AppData\Local\Programs\Julia-1.7.1\share\julia\stdlib\v1.7\Pkg\src\API.jl:1011 [6] top-level scope @ REPL[5]:1 """

breiddal commented 2 years ago

Seems to me like you're loading an older version of PPInterpolation which is in turn dependent on cbc / JuMP - this is where the stack traces you've posted seem to be originating, and it would correspond with the most recent change committed to PPInterpolation which removed those as dependencies.