AltME: R3 Building and Porting

Messages

GregP
I've downloaded the zip archive today from Saphirion/Saphir and tried to build with MSYS.
I get r3.dll and r3-core-host.exe built OK. But didn't compiled r3-view-host.exe OK, here is the error I get:
gcc -o r3-view-host.exe objs/host-main.o objs/host-core.o objs/host-args.o objs/host-device.o objs/host-stdio.o objs/dev-net.o objs/dev-dns.o objs/host-lib.o objs/dev-stdio.o objs/dev-file.o objs/dev-event.o objs/dev-clipboard.o objs/lodepng.o objs/rc4.o objs/aes.o objs/bigint.o objs/rsa.o objs/dh.o
objs/host-view.o objs/host-window.o objs/host-graphics.o objs/host-draw.o objs/host-draw-api.o objs/host-text.o objs/host-text-api.o objs/host-compositor.o objs/host-event.o r3.dll -L. -static-libgcc -lm -lwsock32 -lcomdlg32 -lgdi32 -lmsimg32 -lstdc++ -liphlpapi -Wl,--stack=4194300 -mwindows objs/a
gg_arc.o objs/agg_arrowhead.o objs/agg_bezier_arc.o objs/agg_bspline.o objs/agg_curves.o objs/agg_image_filters.o objs/agg_line_aa_basics.o objs/agg_path_storage.o objs/agg_rasterizer_scanline_aa.o objs/agg_rounded_rect.o objs/agg_sqrt_tables.o objs/agg_trans_affine.o objs/agg_trans_single_path.o ob
js/agg_vcgen_bspline.o objs/agg_vcgen_contour.o objs/agg_vcgen_dash.o objs/agg_vcgen_markers_term.o objs/agg_vcgen_smooth_poly1.o objs/agg_vcgen_stroke.o objs/agg_vpgen_segmentator.o objs/agg_graphics.o objs/agg_font_win32_tt.o objs/agg_truetype_text.o
objs/agg_graphics.o:agg_graphics.cpp:(.text+0x3610): undefined reference to `std::terminate()'
objs/agg_graphics.o:agg_graphics.cpp:(.rdata$_ZTIN3agg33gradient_polymorphic_wrapper_baseE[__ZTIN3agg33gradient_polymorphic_wrapper_baseE]+0x0): undefined reference to `vtable for __cxxabiv1::__class_type_info'
c:/mingw/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/ld.exe: objs/agg_graphics.o: bad reloc address 0x0 in section `.rdata$_ZTIN3agg33gradient_polymorphic_wrapper_baseE[__ZTIN3agg33gradient_polymorphic_wrapper_baseE]'
collect2.exe: error: ld returned 1 exit status
make[1]: *** [r3-view-host] Error 1
make[1]: Leaving directory `/c/persokeyfull/rebol3/saphir-master/saphir-master/make'
make: *** [all] Error 2
Any help appreciated!

Arie
@Cyphre thx!

Cyphre
GregP: try to compile all the cpp files and do the final linking with g++ instead of gcc (the next update on github will have the makefile improved)
GregP
Thanks a lot Cyphre, I only changed gcc into g++ to link the r3-view-host and r3-view and all compile!
My only issue now is this:
>> demo
Fetching demo...
Script: "Untitled" Version: none Date: none
Fetching GUI...
** Script error: / does not allow none! for its value2 argument
** Where: do resize-panel actor all foreach do-actor either -apply- apply case v
iew catch either either -apply- do try demo
** Near: do bind bind/copy [
    size: viewport-box/bottom-right
    ...
GregP
but I'm happy I can start playing with it anyway!

Cyphre
GregP: the error is fired because your compiled r3-view.exe contains more recent changes which are not reflected by the current public r3-gui build on our servers. We need to have the r3-gui build to be compatible with our current experimental binary builds. (ie. if you download our latest binary release it should always work with the latest r3-gui release)
So you are in a bit odd state now. To quickly fix that you can download the r3-gui from http://development.saphirion.com/resources/r3-gui.r3 (same link is used in the DEMO or LOAD-GUI commands) and replace all "unit-size" string occurences to "log-size". Then you can use the r3-gui with your custom saphir build.
Otherwise we'll be soon updating our build/releases/repositories with new versions (quite a lot things happened from the last public updates) so the multiple codebases will get in sync very soon.
GregP
Change done on r3-gui.r3: it works now :)

Maxim
is the community version always up to date with saphirion changes wrt core stuff?
Maxim
I should have said... is the community version  **currently**  up to date with latest changes from saphirion and atronix?
Pekr
I doubt it. Carl does not accept PRs, there is 37 PRs in the queue, dunno who can eventually accept them?
Josh
No, it's not up to date.  There are some diffferences in structure between the rebol repo and the other two in some places with the addition of the GUI code.
Josh
(didn't see 'wrt core stuff')  Well, mostly up to date I guess.  There are some bug fixes

Tomc
Q: Which is the most appropiate R3 GitHub repo for 64b Redhat, Debian & derivatives these days?

Andreas
Depends on if you need GUI.
If you don't need GUI support, I'd suggest going with the "community" repository. Which at the moment is basically mainline (i.e. the official codebase) + 64-bit support:
https://github.com/rebolsource/r3
A pre-built 64-bit Linux binary is also available under the "experimental" section on rebolsource:
http://www.rebolsource.net/
If you need GUI support as well, go with Atronix' version:
http://atronixengineering.com/downloads.html
Tomc
core is fine for now.
Goal is to have an established automated process to build an arbitrary version of rebolin a Docker container.
(which only suppotrs recent 64b kernels)
A fixed link to the current 64b linux binary at www.rebolsource.net  would help
something like a symlink from  r3-g25033f8  to r3-latest  
(asuming the -g25033f8 part changes and becomes unavailable after a while)

GrahamC
I think it would be nice to have a link that is easy to type as usually you have to use wget to download rebol.

GregP
I had about the same question as Maxim regarding keeping R3 source in sync between repositories. Carl open sourced R3, Saphirion brought the UI and other improvements, Atronix works on Linux. and I just wish we could consolidate all those contributions. Anyone has an insight on this?

Last message posted 78 weeks ago.