On Mon, May 23, 2016 at 12:09 PM, Ján Adamčák <[email protected]> wrote:
> Thanks Yichao Yu,
>
> Can you tell me which macro did you mean and where to place it?

You need -DJULIA_ENABLE_THREADING=1 when compiling the C/C++ code if
julia is built with threading enabled (which is the default now).

>
> Thanks
>
> Dňa 23.5.2016 17:37 používateľ "Yichao Yu" <[email protected]> napísal:
>
>>
>> On May 23, 2016 10:30 AM, "Ján Adamčák" <[email protected]> wrote:
>> >
>> > Thanks @Jameson,
>> >
>> > Another error I'm getting while compiling c example is
>> >
>> > C://Users//Adam//AppData//Local//Julia-0.5.0-dev//start_func.c:111:
>> > undefined reference to `__imp_jl_tls_states'
>> > collect2.exe: error: ld returned 1 exit status
>> >
>> > This error is caused by JL_GC_PUSH1(&x);
>>
>> Looks like you are missing threading enabling macro while building your
>> code
>>
>> >
>> > Is there some workaround or is it just a bug?
>> >
>> > Thanks.
>> >
>> > Dňa pondelok, 23. mája 2016 4:56:52 UTC+2 Jameson napísal(-a):
>> >>
>> >> I tried building a new system image on v0.4 starting from an existing
>> >> sys.so library (as you tried below), and found that it failed with the 
>> >> same
>> >> "Task cannot be serialized" error.  So I guess that use case must have 
>> >> been
>> >> fixed during v0.5 development. The workaround is to start with 
>> >> inference.ji
>> >> and load all of the extra code through userimg.jl. That worked for me (and
>> >> is just a bit slower for incremental development), so I didn't investigate
>> >> further.
>> >>
>> >>
>> >> On Tuesday, May 10, 2016 at 4:13:57 PM UTC-4, Jameson wrote:
>> >>>
>> >>> The compile-all flag is only partially functional on v0.4. I think
>> >>> it's best to just leave it off. I tested on master and fixed a bug with
>> >>> emitting `@ccallable`, but that's unrelated. From the command line 
>> >>> below, it
>> >>> looks like you are not adding any code to the system image (`--eval
>> >>> nothing`) which would also means there are no `ccallable` declarations 
>> >>> being
>> >>> emitted into the current compile.
>> >>>
>> >>> Other than that, I don't see anything wrong with that command. You
>> >>> shouldn't see that error unless you tried to make a Task or use `@async`
>> >>> from the compile host. It's ambiguous how that would be serialized, so 
>> >>> it's
>> >>> simply an error and any parallel workers should be created / started by 
>> >>> an
>> >>> `__init__` method.
>> >>>
>> >>>
>> >>> On Tuesday, May 10, 2016 at 2:53:22 AM UTC-4, Ján Adamčák wrote:
>> >>>>
>> >>>> Hello guys,
>> >>>>
>> >>>> Thank you for your comments, though we were more optimistic...
>> >>>>
>> >>>>
>> >>>> Dňa piatok, 6. mája 2016 16:27:28 UTC+2 Ján Adamčák napísal(-a):
>> >>>>>
>> >>>>> Sorry, my fault.
>> >>>>>
>> >>>>> During last week I created build_sysimg2.jl from julia 0.4.5
>> >>>>> build_sysimg.jl and when I run it, at line 86 (build_sysimg2.jl)
>> >>>>>
>> >>>>> run(`$julia -C $cpu_target --output-o sysimg_all.o --sysimage
>> >>>>> $sysimg_path.$(Libdl.dlext) --startup-file=no --compile=all --eval 
>> >>>>> nothing`)
>> >>>>>
>> >>>>> I got this error:
>> >>>>>
>> >>>>> fatal: error thrown and no exception handler available.
>> >>>>> ErrorException("Task cannot be serialized")
>> >>>>> jl_unprotect_stack at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_throw at C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll
>> >>>>> (unknown line)
>> >>>>> jl_error at C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll
>> >>>>> (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_compress_ast at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_save_system_image_to_stream at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_create_system_image at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> jl_atexit_hook at
>> >>>>> C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\libjulia.dll (unknown line)
>> >>>>> unknown function (ip: 00000000004028B5)
>> >>>>> unknown function (ip: 000000000040140C)
>> >>>>> unknown function (ip: 000000000040153B)
>> >>>>> BaseThreadInitThunk at C:\WINDOWS\system32\KERNEL32.DLL (unknown
>> >>>>> line)
>> >>>>> RtlUserThreadStart at C:\WINDOWS\SYSTEM32\ntdll.dll (unknown line)
>> >>>>> ERROR: LoadError: failed process:
>> >>>>> Process(`'C:\Users\Adam\AppData\Local\Julia-0.4.5\bin\julia' -C native
>> >>>>> --output-o sysimg_all.o --sysimage my_img.dll --startup-file=no
>> >>>>> --compile=all --eval nothing`, ProcessExited(1)) [1]
>> >>>>>  in run at process.jl:531
>> >>>>> while loading
>> >>>>> c:\Users\Adam\AppData\Local\Julia-0.4.5\share\julia\build_sysimg2.jl, 
>> >>>>> in
>> >>>>> expression starting on line 191
>> >>>>>
>> >>>>>  Before this error, julia wrote some warnings:
>> >>>>>
>> >>>>> WARNING: could not attach metadata for @simd loop.
>> >>>>>
>> >>>>> Same error I got on Ubuntu 16.04...
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> Dňa piatok, 6. mája 2016 15:48:19 UTC+2 Jeff Bezanson napísal(-a):
>> >>>>>>
>> >>>>>> That command line in build_sysimg.jl:77 looks strange. Actually I
>> >>>>>> can't find that line anywhere; our build_sysimg and
>> >>>>>> BuildExecutable.jl
>> >>>>>> now have something slightly different.
>> >>>>>>
>> >>>>>> On Fri, May 6, 2016 at 9:25 AM, Tom Breloff <[email protected]>
>> >>>>>> wrote:
>> >>>>>> > Also, I think there's even fewer people that are experts on the
>> >>>>>> > Windows
>> >>>>>> > build process.  I think the community tends to be more linux/osx
>> >>>>>> > focused.
>> >>>>>> >
>> >>>>>> > On Fri, May 6, 2016 at 4:08 AM, Andreas Lobinger
>> >>>>>> > <[email protected]>
>> >>>>>> > wrote:
>> >>>>>> >>
>> >>>>>> >> Hello colleague,
>> >>>>>> >>
>> >>>>>> >> this topic is still seen as experimental and not that many of
>> >>>>>> >> julia users
>> >>>>>> >> could be considered expert on this...
>> >>>>>> >> If the recipe given (long time ago i tried to follow this on a
>> >>>>>> >> linux
>> >>>>>> >> installation which i general has more tooling to get shared
>> >>>>>> >> libraries and
>> >>>>>> >> compilation working...) doesn't work, you could raise a concrete
>> >>>>>> >> issue on
>> >>>>>> >> github - there you get more audience with julia internal
>> >>>>>> >> know-how.
>> >>>>>> >>
>> >>>>>> >> Wishing a happy day,
>> >>>>>> >>
>> >>>>>> >>        Andreas
>> >>>>>> >>
>> >>>>>> >>
>> >>>>>> >> On Friday, May 6, 2016 at 8:51:47 AM UTC+2, Ján Adamčák wrote:
>> >>>>>> >>>
>> >>>>>> >>> Nobody???
>> >>>>>> >>>
>> >>>>>> >>> Dňa pondelok, 2. mája 2016 11:30:11 UTC+2 Ján Adamčák
>> >>>>>> >>> napísal(-a):
>> >>>>>> >>>>
>> >>>>>> >>>>
>> >>>>>> >>>> Hello,
>> >>>>>> >>>>
>> >>>>>> >>>> Trying to create an executable from Julia source, there are
>> >>>>>> >>>> questions
>> >>>>>> >>>> that raised... The process of exporting functions wasn't
>> >>>>>> >>>> successful,
>> >>>>>> >>>> function(s) was not exported to dll, and even the generated
>> >>>>>> >>>> dll cant be
>> >>>>>> >>>> loaded in c++ code. Below is the process explained in details:
>> >>>>>> >>>>
>> >>>>>> >>>> Can anybody bring more insight, how to build a standalone
>> >>>>>> >>>> executable
>> >>>>>> >>>> from Julia source?
>> >>>>>> >>>>
>> >>>>>> >

Reply via email to