JuliaPy / JuliaPy/PyCall.jl

using PyCall assertion error on ARM (julia master, crouton)

Open
#286 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
Julia
Stars
1.5k
Forks
186
PR merge metrics
No merged PRs in 30d

Description

Probably a stupid questions, but what is the purpose of all the assertions? and Is there an easy way to compile /run julia, pycall, etc disabling assertions? (or is that a "bad idea"). **thanks!** -- perrin

``` julia
WARNING: deprecated syntax "call(::Type{PyAny}, ...)".
Use "(::Type{PyAny})(...)" instead.
WARNING: Base.writemime is deprecated.
likely near /home/perrin/.julia/v0.5/PyCall/src/PyCall.jl:604
WARNING: Base.writemime is deprecated.
likely near /home/perrin/.julia/v0.5/PyCall/src/PyCall.jl:604
WARNING: Base.writemime is deprecated.
likely near /home/perrin/.julia/v0.5/PyCall/src/PyCall.jl:604
WARNING: Base.writemime is deprecated.
likely near /home/perrin/.julia/v0.5/PyCall/src/PyCall.jl:604
WARNING: Base.writemime is deprecated.
likely near /home/perrin/.julia/v0.5/PyCall/src/PyCall.jl:604
WARNING: bytestring(s::AbstractString...) is deprecated, use string(s...) instead.
while loading /home/perrin/.julia/v0.5/PyCall/src/PyCall.jl, in expression starting on line 625
julia: /home/psmsd/julia_builds/julia_gitrocks/src/ccall.cpp:162: llvm::Value* llvm_type_rewrite(llvm::Value*, llvm::Type*, llvm::Type*, bool, bool, bool, jl_codectx_t*): Assertion `from_type->isPointerTy() == target_type->isPointerTy()' failed.

signal (6): Aborted
while loading /home/perrin/.julia/v0.5/PyCall/src/PyCall.jl, in expression starting on line 670
Allocations: 2732815 (Pool: 2731387; Big: 1428); GC: 10
ERROR: Failed to precompile PyCall to /home/perrin/.julia/lib/v0.5/PyCall.ji
```

**system info**

``` julia
(trusty)perrin@localhost:~/bin$ julia5
_
_ _ _(_)_ | A fresh approach to technical computing
(_) | (_) (_) | Documentation: http://docs.julialang.org
_ _ _| |_ __ _ | Type "?help" for help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 0.5.0-dev+4489 (2016-06-03 16:42 UTC)
_/ |\__'_|_|_|\__'_| | Commit fc22418 (0 days old master)
|__/ | arm-linux-gnueabihf

julia> versioninfo(true)
Julia Version 0.5.0-dev+4489
Commit fc22418 (2016-06-03 16:42 UTC)
Platform Info:
System: Linux (arm-linux-gnueabihf)
CPU: ARMv7 Processor rev 3 (v7l)
WORD_SIZE: 32
Ubuntu 14.04.4 LTS
uname: Linux 3.8.11 #1 SMP Thu May 12 00:22:47 PDT 2016 armv7l armv7l
Memory: 3.4568443298339844 GB (356.796875 MB free)
Uptime: 11337.0 sec
Load Avg: 1.236328125 1.01953125 0.9521484375
ARMv7 Processor rev 3 (v7l):
speed user nice sys idle irq
#1 2000 MHz 472447 s 123 s 82656 s 529776 s 19 s
#2 2000 MHz 476965 s 111 s 71431 s 559844 s 3 s
#3 2000 MHz 491658 s 108 s 70487 s 547001 s 2 s
#4 2000 MHz 458781 s 106 s 70051 s 581954 s 1 s

BLAS: libopenblas (NO_AFFINITY ARMV7)
LAPACK: libopenblas
LIBM: libm
LLVM: libLLVM-3.7.1 (ORCJIT, cortex-a15)
Environment:
TERM = xterm
PATH = /home/perrin/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/home/perrin/bin/
HOME = /home/perrin

Package Directory: /home/perrin/.julia/v0.5
1 required packages:
- PyPlot 2.1.1
13 additional packages:
- BinDeps 0.3.21
- ColorTypes 0.2.2
- Colors 0.6.4
- Compat 0.7.20
- Conda 0.2.0
- FixedPointNumbers 0.1.3
- JSON 0.5.1
- LaTeXStrings 0.1.6
- MacroTools 0.3.0
- PyCall 1.6.1
- Reexport 0.0.3
- SHA 0.1.2
- URIParser 0.1.3
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the PyCall precompilation failure on the reported ARMv7 environment, starting with PyCall/src/PyCall.jl around lines 604, 625, and 670. Inspect Julia's ccall.cpp at line 162 and determine why the pointer-type assertion fails; done means the failure is understood and PyCall precompiles successfully on the affected setup.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia, python
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.