Не могу использовать FITSIO в Юлии - PullRequest
0 голосов
/ 11 сентября 2018

Я только начал использовать Julia и установил пакет FITSIO.При загрузке я получаю следующую ошибку

julia> using FITSIO
[ Info: Precompiling FITSIO [525bcba6-941b-5504-bd06-fd0dc1a4d2eb]
ERROR: LoadError: syntax: extra token "ImageHDU" after end of expression
Stacktrace:
 [1] include at .\boot.jl:317 [inlined]
 [2] include_relative(::Module, ::String) at .\loading.jl:1038
 [3] include(::Module, ::String) at .\sysimg.jl:29
 [4] top-level scope at none:2
 [5] eval at .\boot.jl:319 [inlined]
 [6] eval(::Expr) at .\client.jl:389
 [7] top-level scope at .\none:3
in expression starting at C:\Users\romain\.julia\packages\FITSIO\WueGk\src\FITSIO.jl:54
ERROR: Failed to precompile FITSIO [525bcba6-941b-5504-bd06-fd0dc1a4d2eb] to C:\Users\romain\.julia\compiled\v1.0\FITSIO\mbga9.ji.
Stacktrace:
 [1] error(::String) at .\error.jl:33
 [2] macro expansion at .\logging.jl:313 [inlined]
 [3] compilecache(::Base.PkgId, ::String) at .\loading.jl:1184
 [4] macro expansion at .\logging.jl:311 [inlined]
 [5] _require(::Base.PkgId) at .\loading.jl:941
 [6] require(::Base.PkgId) at .\loading.jl:852
 [7] macro expansion at .\logging.jl:311 [inlined]
 [8] require(::Module, ::Symbol) at .\loading.jl:834

Я пытался удалить и снова добавить пакет FITSIO, но всегда получаю ту же ошибку.Похоже, что трассировка стека идет в строку 54 файла FITSIO.jl. Итак, вот содержимое этого файла от строки 46 до 57

import .Libcfitsio: libcfitsio,
                    fits_assert_ok,
                    fits_assert_isascii,
                    TYPE_FROM_BITPIX

# HDU Types
@compat abstract type HDU end

type ImageHDU <: HDU
    fitsfile::FITSFile
    ext::Int
end

Знаете ли вы, как заставить этот пакет работать?Спасибо:)

Ответы [ 2 ]

0 голосов
/ 13 сентября 2018

Вот ответ от разработчиков FITSIO:

Последняя стабильная версия этого пакета не совместима с Джулией 1,0. Это уже исправлено в версии для разработчиков, но мы не помечали новую версию с тех пор.

Удалить FITSIO.jl с помощью

pkg> rm FITSIO
pkg> update
pkg> add FITSIO
pkg> dev FITSIO

После rm убедитесь, что у вас нет остатков FITSIO.jl, затем Вы можете переустановить и перейти на версию для разработки в менеджер пакетов, без установки другого пакета

0 голосов
/ 11 сентября 2018

Похоже, что Джулия автоматически загрузила неправильный пакет с

add FITSIO

Я решил проблему, установив URL-адрес для загрузки

add https://github.com/JuliaAstro/FITSIO.jl
...