1. Phix 0.7.2 released

better handling for command line help options (-? --help etc)
many linux64 mods (more may be needed, uploading a new version will make my next round of testing easier)
zip file split into phiz1.zip and phix2.zip (makes wget of them much easier)
problem with empty one-line procedures fixed.
declaring routine_ids mid-self of routines with >2 params crash fixed.
trace(3) added. Exposed a bug in file i/o which is still outstanding.
Added builtins\ipc.e and builtins\serialize.e (see docs/other libs)
int_to_bytes() now has an optional size parameter.
bytes_to_int() now has an optional signed parameter.
Added crash_routine(), pad_head(), pad_tail() and vslice().
time() should now be compatible with windows XP.

http://phix.x10.mx (0.7.1 notes: https://openeuphoria.org/forum/130654.wc )

Pete

EDIT: pad_head and pad_tail did not make it into the docs, but have now been added, ready for the next release.

new topic     » topic index » view message » categorize

2. Re: Phix 0.7.2 released

PhixWebpage said...

Latest version: 0.7.2 Release date: 10th February 2017 Status: IUP now works on Linux.

Source code: Incuded. No other tools are required to modify and rebuild Phix.

On Linux simply unpack either of the above to $HOME/phix

Regarding the one line of Linux instructions, I think Pete might have meant "unpack both of the above to $HOME/phix. At any rate that is what I did on my Ubuntu 16.04 LNX 64-bit system.

ken@ken-desktop:~/phix$ ls 
bench          Listdir.bat  pcore.e     pe32.fmt   p.exw       phix         pltype.e  profile.e  ptok.e      test 
builtins       Listdir.reg  pcross.ico  peama.ew   p.fmt       phixzip.bat  pmain.e   psched.e   pttree.e 
copyright.txt  ok.ico       pdebug.e    pEmit2.e   pgets0.ew   pilasm.e     pmsgs.e   psym.e     pw.exe 
demo           p2asm.e      pdemo.exw   pemit.e    pglobals.e  pilx86.e     pops.e    pth.exw    readme.txt 
docs           pbinary.e    pdiag.e     perror.ew  pgui.exw    plist.e      ppw.bat   ptick.ico  sfx 
 

I made phix and pw.exe executable files. My attempts to execute them failed:

ken@ken-desktop:~/phix$ ./phix 
-bash: ./phix: No such file or directory 
ken@ken-desktop:~/phix$ ./pw.exe 
-bash: ./pw.exe: cannot execute binary file: Exec format error 
ken@ken-desktop:~/phix$  

I suspected that the download files were windows specific and that I might have to recompile for Linux. I was encouraged by the bold assertions:

PhixWebPage said...

No other tools are required to modify and rebuild Phix... To recompile Phix itself, simply run "p -cp"."

No Joy:

ken@ken-desktop:~/phix$ p -cp 
p: command not found 
ken@ken-desktop:~/phix$ ./p -cp 
-bash: ./p: No such file or directory 
ken@ken-desktop:~/phix$  

I suspect that a Linux installation requires more than simply unpacking files into to $HOME/phix.

Regards,
Ken Rhodes

new topic     » goto parent     » topic index » view message » categorize

3. Re: Phix 0.7.2 released

I'll have to give this new version a try. The more I play around with Phix, the more I like it.

new topic     » goto parent     » topic index » view message » categorize

4. Re: Phix 0.7.2 released

Senator said...

Regarding the one line of Linux instructions, I think Pete might have meant "unpack both of the above to $HOME/phix.

Yes, I'll update the page

PhixWebPage said...

No other tools are required to modify and rebuild Phix... To recompile Phix itself, simply run "p -cp"."

And that should also say or "./phix -cp". (on windows p.exe should be created during the install process, btw)

Senator said...

I made phix and pw.exe executable files. My attempts to execute them failed:

ken@ken-desktop:~/phix$ ./phix 
-bash: ./phix: No such file or directory 
ken@ken-desktop:~/phix$ ./pw.exe 
-bash: ./pw.exe: cannot execute binary file: Exec format error 
ken@ken-desktop:~/phix$  

pw.exe is a windows executable; you can delete that.
phix is a 32-bit linux executable.
I have just uploaded http://phix.x10.mx/p64, a wholly untested 64-bit version (of that one file, which I plan to test tomorrow, and fairly confidently predict I will find problems with it).
Alternatively you could try following http://askubuntu.com/questions/454253/how-to-run-32-bit-app-in-ubuntu-64-bit

Thanks for trying,
Pete

new topic     » goto parent     » topic index » view message » categorize

5. Re: Phix 0.7.2 released

petelomax said...

I have just uploaded http://phix.x10.mx/p64, a wholly untested 64-bit version

$ ./p64 
Trace/breakpoint trap 

_tom

new topic     » goto parent     » topic index » view message » categorize

6. Re: Phix 0.7.2 released

Hi Pete

Just dropped it in (overwrote everything), all seems to be working fine.

However, may I request the return of without warning - it does generate a lot of warnings for unused functions and variables. I could do it myself (I have found where it prints them, and just need to find where it reads it in the program, then set a global variable to not print them), but this deviates from 'core' Phix, which is something I don't want to do.

Cheers

Chris

PS - I also found in the help file where to modify pmain.e (just commented out elsif testall then), but that didn't seem to make any difference.

new topic     » goto parent     » topic index » view message » categorize

7. Re: Phix 0.7.2 released

ChrisB said...

Just dropped it in (overwrote everything), all seems to be working fine.

Good to hear

ChrisB said...

may I request the return of without warning

consider it done

ChrisB said...

PS - I also found in the help file where to modify pmain.e (just commented out elsif testall then), but that didn't seem to make any difference.

Try editing it like this (comment out 14 lines, and put the 4 from pre-22/5/2016 back in):

--/* 
----added 7/7/16: 
--                optset[k] = OptOn 
----DEV (spotted in passing) 28/6/16: I think I messed up for profile/profile_time... 
----          elsif k=OptWarning then 
----              finalOptWarn[fileno] = OptOn 
----          end if 
----          optset[k] = OptOn 
--            elsif testall then 
--                if k=OptWarning then 
--                    finalOptWarn[fileno] = OptOn 
--                end if 
--                optset[k] = OptOn 
--            elsif k!=OptWarning then 
--                optset[k] = OptOn 
--            end if 
--*/ 
            elsif k=OptWarning then 
                finalOptWarn[fileno] = OptOn 
            end if 
            optset[k] = OptOn 

(if I ever need something like that again, maybe I'll see whether builtins\warnings.ini exists or somesuch)

Pete

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu