1. Phix, IUP issues

Anybody else having IUP libraryissues, specifically on Mint 20.1?

/home/crylex/phix/demo/pGUI/pGUI.e:1091 in procedure iup_link_error() 
crash(`link error: libiupcontrols.so`) 
    name = `libiupcontrols.so` 
... called from /home/crylex/phix/demo/pGUI/pGUI.e:1148 in function iup_open_dll() 
    libs = {`iupcontrols.dll`,`libiupcontrols.so`,`libiupcontrols.dylib`} 
    path = `libiupcontrols.so` 
    res = 0 
    curr_dir = <novalue> 
... called from /home/crylex/phix/demo/pGUI/pGUI.e:1817 in procedure iup_init1() 
    dll_root = 0 
    s = {`/home/crylex/phix/builtins/`,`/home/crylex/phix/builtins/VM/`,`/home/crylex/phix/`,`/home/crylex/phix/demo/pGUI/`} 
    dll_dir = `lnx64` 
    i = 5 
    sip = {`/home`,`crylex`,`phix`,`demo`,`pGUI`,`lnx64`} 
    curr_dir = <novalue> 
... called from /home/crylex/phix/demo/pGUI/pGUI.e:1883 in procedure IupOpen() 
    dll_root = 0 
... called from /home/crylex/phix/demo/pGUI/alarm.exw:7 
 

, output of ldd libiucontrols.so

root@Mancave:/lib64# ldd libiupcontrols.so 
	linux-vdso.so.1 (0x00007fff46768000) 
	libiup.so => /lib64/libiup.so (0x00007f942ebad000) 
	libiupcd.so => /lib64/libiupcd.so (0x00007f942eba5000) 
	libcd.so => not found                                                                                   ???issues ??? 
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f942e9b3000) 
	libgtk-3.so.0 => /lib/x86_64-linux-gnu/libgtk-3.so.0 (0x00007f942e202000) 
	libgdk-3.so.0 => /lib/x86_64-linux-gnu/libgdk-3.so.0 (0x00007f942e0fd000) 
	libpangocairo-1.0.so.0 => /lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x00007f942e0e9000) 
	libcairo.so.2 => /lib/x86_64-linux-gnu/libcairo.so.2 (0x00007f942dfc6000) 
	libgdk_pixbuf-2.0.so.0 => /lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007f942df9e000) 
	libpango-1.0.so.0 => /lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x00007f942df4f000) 
	libgobject-2.0.so.0 => /lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007f942deef000) 
	libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f942ddc6000) 
	libX11.so.6 => /lib/x86_64-linux-gnu/libX11.so.6 (0x00007f942dc87000) 
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f942db38000) 
	libcd.so => not found                                                                                    ???issues ??? 
	libfontconfig.so.1 => /lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007f942daf1000) 
	/lib64/ld-linux-x86-64.so.2 (0x00007f942ed9b000) 
	libgmodule-2.0.so.0 => /lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007f942daeb000) 
	libXi.so.6 => /lib/x86_64-linux-gnu/libXi.so.6 (0x00007f942dad9000) 
	libXfixes.so.3 => /lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f942dacf000) 
	libcairo-gobject.so.2 => /lib/x86_64-linux-gnu/libcairo-gobject.so.2 (0x00007f942dac3000) 
	libatk-1.0.so.0 => /lib/x86_64-linux-gnu/libatk-1.0.so.0 (0x00007f942da99000) 
	libatk-bridge-2.0.so.0 => /lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0 (0x00007f942da62000) 
	libepoxy.so.0 => /lib/x86_64-linux-gnu/libepoxy.so.0 (0x00007f942d92f000) 
	libfribidi.so.0 => /lib/x86_64-linux-gnu/libfribidi.so.0 (0x00007f942d912000) 
	libgio-2.0.so.0 => /lib/x86_64-linux-gnu/libgio-2.0.so.0 (0x00007f942d72f000) 
	libpangoft2-1.0.so.0 => /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 (0x00007f942d716000) 
	libharfbuzz.so.0 => /lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007f942d611000) 
	libfreetype.so.6 => /lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007f942d552000) 
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f942d52f000) 
	libXinerama.so.1 => /lib/x86_64-linux-gnu/libXinerama.so.1 (0x00007f942d528000) 
	libXrandr.so.2 => /lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007f942d51b000) 
	libXcursor.so.1 => /lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007f942d50e000) 
	libXcomposite.so.1 => /lib/x86_64-linux-gnu/libXcomposite.so.1 (0x00007f942d509000) 
	libXdamage.so.1 => /lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007f942d504000) 
	libxkbcommon.so.0 => /lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x00007f942d4c2000) 
	libwayland-cursor.so.0 => /lib/x86_64-linux-gnu/libwayland-cursor.so.0 (0x00007f942d4b7000) 
	libwayland-egl.so.1 => /lib/x86_64-linux-gnu/libwayland-egl.so.1 (0x00007f942d4b0000) 
	libwayland-client.so.0 => /lib/x86_64-linux-gnu/libwayland-client.so.0 (0x00007f942d49f000) 
	libXext.so.6 => /lib/x86_64-linux-gnu/libXext.so.6 (0x00007f942d48a000) 
	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f942d47f000) 
	libpixman-1.so.0 => /lib/x86_64-linux-gnu/libpixman-1.so.0 (0x00007f942d3d8000) 
	libpng16.so.16 => /lib/x86_64-linux-gnu/libpng16.so.16 (0x00007f942d39e000) 
	libxcb-shm.so.0 => /lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007f942d399000) 
	libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f942d36f000) 
	libxcb-render.so.0 => /lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007f942d360000) 
	libXrender.so.1 => /lib/x86_64-linux-gnu/libXrender.so.1 (0x00007f942d156000) 
	libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f942d13a000) 
	libthai.so.0 => /lib/x86_64-linux-gnu/libthai.so.0 (0x00007f942d12d000) 
	libffi.so.7 => /lib/x86_64-linux-gnu/libffi.so.7 (0x00007f942d121000) 
	libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f942d0ae000) 
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f942d0a8000) 
	libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f942d07a000) 
	libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007f942d071000) 
	libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007f942d01e000) 
	libatspi.so.0 => /lib/x86_64-linux-gnu/libatspi.so.0 (0x00007f942cfe7000) 
	libmount.so.1 => /lib/x86_64-linux-gnu/libmount.so.1 (0x00007f942cf87000) 
	libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007f942cf5c000) 
	libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f942cf40000) 
	libgraphite2.so.3 => /lib/x86_64-linux-gnu/libgraphite2.so.3 (0x00007f942cf11000) 
	libXau.so.6 => /lib/x86_64-linux-gnu/libXau.so.6 (0x00007f942cf0b000) 
	libXdmcp.so.6 => /lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f942cf03000) 
	libdatrie.so.1 => /lib/x86_64-linux-gnu/libdatrie.so.1 (0x00007f942cef9000) 
	libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007f942ce48000) 
	libblkid.so.1 => /lib/x86_64-linux-gnu/libblkid.so.1 (0x00007f942cdf1000) 
	libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0 (0x00007f942cd61000) 
	libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007f942cd47000) 
	liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f942cd1e000) 
	liblz4.so.1 => /lib/x86_64-linux-gnu/liblz4.so.1 (0x00007f942ccfb000) 
	libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007f942cbdd000) 
	libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007f942cbba000) 
 

64 bit phix, 64 bit iup libs, tried other iup versions.

new topic     » topic index » view message » categorize

2. Re: Phix, IUP issues

ChrisB said...

root@Mancave:/lib64# ldd libiupcontrols.so 
	linux-vdso.so.1 (0x00007fff46768000) 
	libiup.so => /lib64/libiup.so (0x00007f942ebad000) 
	libiupcd.so => /lib64/libiupcd.so (0x00007f942eba5000) 
	libcd.so => not found                                                                                   ???issues ??? 
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f942e9b3000) 
	libgtk-3.so.0 => /lib/x86_64-linux-gnu/libgtk-3.so.0 (0x00007f942e202000) 
	libgdk-3.so.0 => /lib/x86_64-linux-gnu/libgdk-3.so.0 (0x00007f942e0fd000) 
	libpangocairo-1.0.so.0 => /lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x00007f942e0e9000) 
	libcairo.so.2 => /lib/x86_64-linux-gnu/libcairo.so.2 (0x00007f942dfc6000) 
	libgdk_pixbuf-2.0.so.0 => /lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007f942df9e000) 
	libpango-1.0.so.0 => /lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x00007f942df4f000) 
	libgobject-2.0.so.0 => /lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007f942deef000) 
	libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f942ddc6000) 
	libX11.so.6 => /lib/x86_64-linux-gnu/libX11.so.6 (0x00007f942dc87000) 
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f942db38000) 
	libcd.so => not found                                                                                    ???issues ??? 
	libfontconfig.so.1 => /lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007f942daf1000) 
	/lib64/ld-linux-x86-64.so.2 (0x00007f942ed9b000) 
	... 

64 bit phix, 64 bit iup libs, tried other iup versions.

Looks like you're missing the Canvas Draw (libcd) libraries.

-Greg

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

3. Re: Phix, IUP issues

Ah, thanks for that link, will explore tomorrow. Thought it was a stdlib library.

Cheers

Chris

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

4. Re: Phix, IUP issues

Indeed, you have to install IUP, CD, and IM.

Sadly, automating or even just checking that is way beyond my skillset.

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

5. Re: Phix, IUP issues

Nope, tried installing all three libraries, still no joy.

libiupcontrols.so still can't find libcd.so all library files are in /usr/lib64, shortcut /lib64 using most up to date version of lib, compiled for Linux54_64: Ubuntu 20.04 (x64) / Kernel 5.4 / gcc 9.3 (GTK 3.24)

Pete, what version of the libs did you install? Can you pack up your load of .so s and dropbox / mediafire them to me?

This is the pain of Linux, dependency hunting!

Cheers

Chris

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

6. Re: Phix, IUP issues

ChrisB said...

Nope, tried installing all three libraries, still no joy.

libiupcontrols.so still can't find libcd.so all library files are in /usr/lib64, shortcut /lib64 using most up to date version of lib, compiled for Linux54_64: Ubuntu 20.04 (x64) / Kernel 5.4 / gcc 9.3 (GTK 3.24)

Pete, what version of the libs did you install? Can you pack up your load of .so s and dropbox / mediafire them to me?

I don't have a /usr/lib64/ directory. It know it is a 64 bit version of Ubuntu, but which I cannot say. uname -a gives me
Linux pete-VirtualBox 3.5.0-54-generic #81~precise1-Ubuntu SMP Tue Jul 15 04:02:22 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

IupVersion() yields "3.21", so that's 8 versions or more out of date, whereas cdVersion() segfaults on me.

My libcd.so is four and a half years old, so it is hardly surprising that I can't remember how it got there, but I think I can safely guarantee it (and however many friends it might need) would not help you...
Maybe I installed it via the ubuntu software center, but that just crashes on me, so I can't even check that.

ChrisB said...

This is the pain of Linux, dependency hunting!

Oh, I know all about that!

Ah: is there a thingymuhjig you have to run, "sudo ldconfig" or "sudo ldconfig /usr/lib64/" or something like that? Or reboot?

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

7. Re: Phix, IUP issues

Hi

ldconfig, no difference

will try the reboot tomorrow, not hopeful though. If that fails will try the latest 32 bit version. Can I just swap p over to a 32 bit version? - but then that ties me to using 32 bit versions of other libraries (sqlite for instance)

Cheers

Chris

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

8. Re: Phix, IUP issues

petelomax said...

I don't have a /usr/lib64/ directory. It know it is a 64 bit version of Ubuntu, but which I cannot say. uname -a gives me

Linux pete-VirtualBox 3.5.0-54-generic #81~precise1-Ubuntu SMP Tue Jul 15 04:02:22 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux 

The kernel version and "#81~precise1-Ubuntu" tells me you're running Ubuntu 12.04 "Precise Pangolin". That's a ten year old release. Might be time for an upgrade (or four, if we're counting LTS releases).

-Greg

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

9. Re: Phix, IUP issues

Reboot didn't work, still can't link iupcontrols.so (it's there, I think it's because it can't link iupcd.so)

Cheers

Chris

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

10. Re: Phix, IUP issues

ghaberek said...
petelomax said...

I don't have a /usr/lib64/ directory. It know it is a 64 bit version of Ubuntu, but which I cannot say. uname -a gives me

Linux pete-VirtualBox 3.5.0-54-generic #81~precise1-Ubuntu SMP Tue Jul 15 04:02:22 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux 

The kernel version and "#81~precise1-Ubuntu" tells me you're running Ubuntu 12.04 "Precise Pangolin". That's a ten year old release. Might be time for an upgrade (or four, if we're counting LTS releases).

-Greg

Don't do it - it'll all break!

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

11. Re: Phix, IUP issues - FIXED

Fixed!

I initially put the unpacked .so s (herein referred to as libs) in /usr/lib64, because that's where the tecgraf install program put them. There was also a link to /lib64.

Ignore those - phix can't find them there.

I added symlinks in /usr/lib/iuplib.so => /lib64/iuplib.so where iuplib.so points to the real file in /lib64/iuplib.so.

Imagine my surprise and smile when a window with stuff on it popped up.

I think I've had this issue before with other dynamic linked libraries, kind of staring me in the face!

Cheers

Chris

edit - with most of them .... iupglcontrols - all opengl functions .... is having .... problems!

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

12. Re: Phix, IUP issues - FIXED

ChrisB said...

Fixed!

I initially put the unpacked .so s (herein referred to as libs) in /usr/lib64, because that's where the tecgraf install program put them. There was also a link to /lib64.

Ignore those - phix can't find them there.

I added symlinks in /usr/lib/iuplib.so => /lib64/iuplib.so where iuplib.so points to the real file in /lib64/iuplib.so.

Imagine my surprise and smile when a window with stuff on it popped up.

I think I've had this issue before with other dynamic linked libraries, kind of staring me in the face!

edit - with most of them .... iupglcontrols - all opengl functions .... is having .... problems!

I recommend putting any "user installed" things into /usr/local. Move your IUP libraries to /usr/local/lib and you should be good. Let the package manager handle putting things into /usr and /lib64, etc.

-Greg

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

13. Re: Phix, IUP issues - FIXED

Ok, will try that - still have dependency issues - just chasing down and compiling where I can / have to.

Nope, didn't like /usr/local/lib

Cheers

Chris

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

14. Re: Phix, IUP issues - FIXED

Hi Pete

What version of IUP are you using?

I've run a lot of the demos, but some openGL, and CD (Canvas Draw) ones are falling over, particularly the CDPDF ones.

If you are running a 64 bit version, could you send me your libcdpdf.so, libpdflib.so, libftgl.so (don't worry about the version, it's an experiment), and if anyone else has them too, I would be grateful.

crylex at gmail dot com

Cheers

Chris

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

15. Re: Phix, IUP issues - FIXED

I wonder if you have some out-of-date demos there. I recently renamed a bunch of files in demo/pGUI/ such as calendar.exw -> IupCalendar.exw.

Here, only plot.exw, plot3.exw, and simple_play.exw reference CD_PDF, and all three of those have the CD_PDF lines commented out, which raises some alarms...

On Windows, my demo/pGUI/IupSimpleWindow.exw/About shows IUP 3.29, CD 5.13

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

16. Re: Phix, IUP issues - FIXED - sort of

No, it was an absolutely pristine install, in my home folder.

It does seem to be libcdpdf.so every time for those that don't run. Also, the order they are in loaded in pGUI, the other CD libs don't produce the linking error, so they must be linkable.

I have no plot3 - only plot5.exw, and that one works.

Cheers

Chris

ps - you probably have the directory listing already, but just to confirm

https://openeuphoria.org/pastey/354.wc

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

17. Re: Phix, IUP issues - FIXED

ChrisB said...

Fixed!

I added symlinks in /usr/lib/iuplib.so => /lib64/iuplib.so where iuplib.so points to the real file in /lib64/iuplib.so.

Remind me, that's some kind of "ln -s" command, right?
As per the other thread I'll have a bash (pun intended) on that refracra iso and try to write a proper [Phix] script, and hopefully end up with something that will also work on Mint (etc).

I suppose I c/should also try improving on the existing

mkdir -p phix 
rm -r phix 
wget http://phix.x10.mx/phix.1.0.1.zip 
wget http://phix.x10.mx/phix.1.0.1.1.zip 
wget http://phix.x10.mx/phix.1.0.1.2.zip 
wget http://phix.x10.mx/phix.1.0.1.3.zip 
wget http://phix.x10.mx/p64 
unzip phix.1.0.1.zip -d phix 
unzip phix.1.0.1.1.zip -d phix 
unzip phix.1.0.1.2.zip -d phix 
unzip phix.1.0.1.3.zip -d phix 
mv p64 phix/p 
cd phix 
chmod 777 p 
./p -test 

Meanwhile can you list that actual demos which are failing, so I can test them here, ta.

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

18. Re: Phix, IUP issues - FIXED

Will do, but may not be straight away.

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

19. Re: Phix, IUP issues - FIXED

So these are the ones that don't work, or work with issues

                        works?      issue 
3d_text.exw             no          probably windows only 
aaline.exw              no          libcdpdf.so 
boids3d.exw             no          libcdpdf.so 
boidsc.exw              partial     no window display, iterating numbers on console 
buffer.exw              no          libcdpdf.so 
cdtest.exw              no          libcdpdf.so 
Chat.exw                no          though other issues 
getparam.exw            yes         seg fault        
glcanvas_cube.exw       yes/no      displays then seg faults on mouse click and move 
graph1.exw              no          libcdpdf.so 
graph2.exw              no          libcdpdf.so 
GraphR.exw              no          libcdpdf.so 
imgdisp.exw             yes         provided image location is Linux freindly 
IupFlatTabs.exw         yes         all Iup[prefices] work 
lesson6.exw             yes         but won't load bitmap for texturing 
mandelbrot.exw          no          libcdpdf.so 
matrix.exw              no          not sure 
mglplotdemo.exw         no 
NeHe.bmp 
PhixLogo.exw            no          libcdpdf 
r3d.exw                 no 
rubik.exw               no          libcdpdf.so 
simple_paint.exw        no          libcdpdf.so 
teselation.exw          yes         once got a readable filename (png, apparently, not bmp) 
triangle.exw            yes         no movement 

I just need to try out different pre compiled libcdpdfs now.

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

20. Re: Phix, IUP issues - FIXED

Well, as promised I made some notes....
First a Linux VM, obviously skip this part if you've got the real thing.

On Windows 10: 
Download linuxmint-20.3-cinnamon-64bit.iso (2.09GB) 
Create a new VirtualBox Machine. I have put everything (iso + vdi) in E:\downloads\misc\Phix101\mint 
Make sure you've got <del>1024MB</del> 2048MB ram, 20G (>13G anyway) vdi 
Using the default C:\Program Files\Oracle\VirtualBox\VBoxGuestAdditions.iso 
Add a shared folder ( mine is C:\Users\Pete\Downloads\qman70\Share ) 
Enable clipboard (and drag 'n drop, why not) 
Boot, right-click open the 'Install Linux Mint' desktop icon 
 (6:15pm...crashed @6:30pm, increased mem to 2GB:) 
 (6:40pm...files copied 6:52pm, installing... rebooted 7:05ish) 
Right-click open the guest additions and install that (top right button). Reboot. 
--sudo mkdir /mnt/share 
--sudo chmod 777 /mnt/share 
--sudo mount -t vboxsf -o uid=1000,gid=1000 share /mnt/share 
--sudo chmod 777 /media/sf_Share 
usermod -aG vboxsf pete (Reboot) 

Then onto what we came here for.

OK, so I installed (via my shared folder) a pre-release of 1.0.2... 
mkdir -p phix  
rm -r phix  
unzip phix.1.0.2.zip -d phix  
unzip phix.1.0.2.1.zip -d phix  
unzip phix.1.0.2.2.zip -d phix  
unzip phix.1.0.2.3.zip -d phix  
mv p64 phix/p  
cd phix  
chmod 777 p  
./p -test  
./p -c p 
./p -test  
 
cd .. 
 
Following IUP instructions (I had to do these in three parts, and manually 'cd ..' each time) 
mkdir cd 
cd cd 
tar -xpvzf ../cd-5.13_Linux54_64_lib.tar.gz 
sudo ./install 
cd .. 
 
mkdir im 
cd im 
tar -xpvzf ../im-3.14_Linux54_64_lib.tar.gz 
sudo ./install 
cd .. 
 
mkdir iup 
cd iup 
tar -xpvzf ../iup-3.29_Linux54_64_lib.tar.gz 
sudo ./install 
cd .. 
 
cd phix 
 
Now we get the predicted error from './p pdemo'... 
pete@pete-VirtualBox:~/phix$ ./p pdemo 
 
/home/pete/phix/demo/pGUI/pGUI.e:1091 
link error: libiup.so 
 
--> see /home/pete/phix/ex.err 
 
pete@pete-VirtualBox:~/phix$ ldd libiup.so 
ldd: ./libiup.so: No such file or directory 
pete@pete-VirtualBox:~/phix$ ldd /usr/lib64/libiup.so 
        linux-vdso.so.1 (0x00007ffc4106d000) 
        libgtk-3.so.0 => /lib/x86_64-linux-gnu/libgtk-3.so.0 (0x00007ff5489ca000) 
        libgdk-3.so.0 => /lib/x86_64-linux-gnu/libgdk-3.so.0 (0x00007ff5488c5000) 
        libpangocairo-1.0.so.0 => /lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x00007ff5488b3000) 
        libcairo.so.2 => /lib/x86_64-linux-gnu/libcairo.so.2 (0x00007ff548790000) 
        libgdk_pixbuf-2.0.so.0 => /lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007ff548768000) 
        libpango-1.0.so.0 => /lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x00007ff548719000) 
        libgobject-2.0.so.0 => /lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007ff5486b7000) 
        libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007ff54858e000) 
        libX11.so.6 => /lib/x86_64-linux-gnu/libX11.so.6 (0x00007ff548451000) 
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007ff548302000) 
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ff548110000) 
        libgmodule-2.0.so.0 => /lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007ff54810a000) 
        libXi.so.6 => /lib/x86_64-linux-gnu/libXi.so.6 (0x00007ff5480f6000) 
        libXfixes.so.3 => /lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007ff5480ee000) 
        libcairo-gobject.so.2 => /lib/x86_64-linux-gnu/libcairo-gobject.so.2 (0x00007ff5480e2000) 
        libatk-1.0.so.0 => /lib/x86_64-linux-gnu/libatk-1.0.so.0 (0x00007ff5480b8000) 
        libatk-bridge-2.0.so.0 => /lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0 (0x00007ff548081000) 
        libepoxy.so.0 => /lib/x86_64-linux-gnu/libepoxy.so.0 (0x00007ff547f4e000) 
        libfribidi.so.0 => /lib/x86_64-linux-gnu/libfribidi.so.0 (0x00007ff547f2f000) 
        libgio-2.0.so.0 => /lib/x86_64-linux-gnu/libgio-2.0.so.0 (0x00007ff547d4e000) 
        libpangoft2-1.0.so.0 => /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 (0x00007ff547d35000) 
        libharfbuzz.so.0 => /lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007ff547c30000) 
        libfontconfig.so.1 => /lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007ff547be9000) 
        libfreetype.so.6 => /lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007ff547b2a000) 
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ff547b05000) 
        libXinerama.so.1 => /lib/x86_64-linux-gnu/libXinerama.so.1 (0x00007ff547b00000) 
        libXrandr.so.2 => /lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007ff547af3000) 
        libXcursor.so.1 => /lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007ff547ae6000) 
        libXcomposite.so.1 => /lib/x86_64-linux-gnu/libXcomposite.so.1 (0x00007ff547ae1000) 
        libXdamage.so.1 => /lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007ff547adc000) 
        libxkbcommon.so.0 => /lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x00007ff547a98000) 
        libwayland-cursor.so.0 => /lib/x86_64-linux-gnu/libwayland-cursor.so.0 (0x00007ff547a8d000) 
        libwayland-egl.so.1 => /lib/x86_64-linux-gnu/libwayland-egl.so.1 (0x00007ff547a88000) 
        libwayland-client.so.0 => /lib/x86_64-linux-gnu/libwayland-client.so.0 (0x00007ff547a77000) 
        libXext.so.6 => /lib/x86_64-linux-gnu/libXext.so.6 (0x00007ff547a62000) 
        librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007ff547a57000) 
        libpixman-1.so.0 => /lib/x86_64-linux-gnu/libpixman-1.so.0 (0x00007ff5479ae000) 
        libpng16.so.16 => /lib/x86_64-linux-gnu/libpng16.so.16 (0x00007ff547976000) 
        libxcb-shm.so.0 => /lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007ff547971000) 
        libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x00007ff547947000) 
        libxcb-render.so.0 => /lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007ff547938000) 
        libXrender.so.1 => /lib/x86_64-linux-gnu/libXrender.so.1 (0x00007ff54772c000) 
        libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007ff547710000) 
        libthai.so.0 => /lib/x86_64-linux-gnu/libthai.so.0 (0x00007ff547705000) 
        libffi.so.7 => /lib/x86_64-linux-gnu/libffi.so.7 (0x00007ff5476f9000) 
        libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007ff547686000) 
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007ff54767e000) 
        /lib64/ld-linux-x86-64.so.2 (0x00007ff54930e000) 
        libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007ff54762d000) 
        libatspi.so.0 => /lib/x86_64-linux-gnu/libatspi.so.0 (0x00007ff5475f6000) 
        libmount.so.1 => /lib/x86_64-linux-gnu/libmount.so.1 (0x00007ff547596000) 
        libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007ff54756b000) 
        libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007ff54754d000) 
        libgraphite2.so.3 => /lib/x86_64-linux-gnu/libgraphite2.so.3 (0x00007ff547520000) 
        libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007ff5474f2000) 
        libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007ff5474e9000) 
        libXau.so.6 => /lib/x86_64-linux-gnu/libXau.so.6 (0x00007ff5474e3000) 
        libXdmcp.so.6 => /lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007ff5474d9000) 
        libdatrie.so.1 => /lib/x86_64-linux-gnu/libdatrie.so.1 (0x00007ff5474cf000) 
        libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007ff547420000) 
        libblkid.so.1 => /lib/x86_64-linux-gnu/libblkid.so.1 (0x00007ff5473c9000) 
        libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0 (0x00007ff547339000) 
        libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007ff54731d000) 
        liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007ff5472f4000) 
        liblz4.so.1 => /lib/x86_64-linux-gnu/liblz4.so.1 (0x00007ff5472d3000) 
        libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007ff5471b5000) 
        libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007ff547192000) 
 
Hmm, that looks pretty good to me... 
so how do I make /lib/x86_64-linux-gnu/xxx.so look at /usr/lib64/xxx.so ??? 
 
--I then ran sudo chmod 777 /etc/ld.so.conf.d/fakeroot-x86_64-linux-gnu.conf 
--so that I could add /usr/lib64 to that file, no joy. (Since undone) 
 
Anyway, I changed line 147 in (cd|iup|im)/tec_uname files from TEC_SYSTEM_LIB=/usr/lib64 
to TEC_SYSTEM_LIB=/lib/x86_64-linux-gnu and re-ran sudo (cd|iup|im)/install  
[I cd'd into and out of each directory]. More no joy. 
 
So, let's just change demo/pGUI/pGUI.e line 1140: 
--        res = open_dll(path) 
res = open_dll("/lib/x86_64-linux-gnu/"&path) 
And yet still more no joy. Rebooted. It all works. Ish: 
 
sudo cp iup/ftgl/lib/Linux54_64/libftgl.so /lib/x86_64-linux-gnu 
and then ./p demo/pGUI/aaline.exw works, as do cdtest, graph1/2/R,  
r3d, rubik, simple_paint, triangle (which is not meant to move), 
mandelbrot (but very slow, see also boids3D), and matrix (but only 
if I comment out both the DROPSELECT_CB and DRAW_CB callbacks as  
those have >6 args and need some work doing in builtins/pcfunc.e.) 
 
boids3d does not show a window, but I do get a taskbar icon, and it responds to Escape.  
On Windows the mandlebrot window appears straight away in white, then is slowly painted  
left-to-right, whereas on Linux it does not appear until drawing completely finishes,  
and maybe since boids3d never stops drawing, it could well be the very same bug, and the 
same can perhaps be said for teselation. 
 
change demo/pGUI/opengl.e line 1502 and boidscs gets a smigde further: 
--string dll_so = iff(platform()=LINUX?GL_LIBPATH & "libGL.so":"opengl32.dll") 
string dll_so = iff(platform()=LINUX?GL_LIBPATH & "libiupgl.so":"opengl32.dll") 
 
buffer.exw gives me an all-red screen, should be a faint cross... 
 
Chat: builtins\sockets.e is currently windows-only, though getting it to work  
on Linux should in theory be a little more straightforward than average. 
 
getparam and glcanvas_cube crash here too. mglplotdemo is incomplete anyway, as is 
PhixLogo which is really just a copy of aaline, and now they both work. 

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

21. Re: Phix, IUP issues - FIXED

A few further things I will say:
The target directory of /usr/lib64 in the install scripts may be the thing that is in error.
It might all have worked if I'd just rebooted immediately after running the install scripts (and running sudo ldconfig).
A new /etc/ld.so.conf.d/iup.conf containing /usr/lib64 (ie a simple ten byte text file) might have been the right way to go.

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

22. Re: Phix, IUP issues - FIXED - but not quite there yet!

Hi Pete, thanks for that, and sorry for taking up so much of your time.

It's the IUP libraries that get installed /usr/lib64, with a symlink in the root directory (I use mc to generate softlinks where I need to, but this was already done).

As I said, I copied /usr/lib64/IUP*.so to /usr/lib , and that got some working, but reboots didn't help.

I'll experiment with those other suggestions too.

Cheers

Chris

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

23. Re: Phix, IUP issues - FIXED - but not quite there yet!

Hi,

So I got the some of the CD programs to work, and I sis it a different way (again).

The issue was libcdpdf.so was not linking

it was not linking, because libcdpdf/so was calling a function in libpdflib.so, which it couldn't find (as shown by ldd libcdpdf.so)

so I had to find libpdflib.so

I couldn't. libpdflib.so is part of the pdflib utilities, and is a commercial program, but there is a PDFlib-lite package, which you have to compile from source.

so I got the is from github, did the usual make, configure, make-install

Still didn't work.

It had put libpdf.so in /usr/local so of course libcdpdf couldn't find it.
1. -it's in /usr/local
2. - it's a different name!

Hmm, so I put a symlink to libpdf.so in /usr/lib, so that now /usr/lib/libpdflib.so => /usr/local/libpdf.so

so now libcdpdf.so can open libpdflib.so symlinked to /usr/local/libpdf.so, even if the functions in it aren't the same in libpdflib (it was a guess)

It works! At least with the mandelbrot, no changes in the program

                        works?      issue                                              works now? 
3d_text.exw             no          probably windows only  
aaline.exw              no          libcdpdf.so                                         no - p: symbol lookup error: /usr/lib/libcdgl.so: undefined symbol: ftglSetNearestFilter 
boids3d.exw             no          libcdpdf.so                                         no - redraw_cb issue  
boidsc.exw              partial     no window display, iterating numbers on console  
buffer.exw              no          libcdpdf.so                                         no - redraw_cb issue 
cdtest.exw              no          libcdpdf.so                                         yes, I think, sometimes white background, sometimes takes nackground as background 
Chat.exw                no          though other issues                                 no - phix/builtins/cffi.e:1157 in function open_lib() 
                                                                                             attempt to divide by 0 
getparam.exw            yes         seg fault                                           no 
glcanvas_cube.exw       yes/no      displays then seg faults on mouse click and move    no change 
graph1.exw              no          libcdpdf.so                                         no - redraw_cb issue 
graph2.exw              no          libcdpdf.so                                         no - redraw_cb issue 
GraphR.exw              no          libcdpdf.so                                         no - redraw_cb issue 
imgdisp.exw             yes         provided image location is Linux freindly  
IupFlatTabs.exw         yes         all Iup[prefices] work  
lesson6.exw             yes         but won't load bitmap for texturing                 yes, but no change 
mandelbrot.exw          no          libcdpdf.so                                         yes - updates as goes, and semi transparent window 
matrix.exw              no          not sure                                            no change - call back issue 
mglplotdemo.exw         no                                                              no change - call back issue 
PhixLogo.exw            no          libcdpdf                                            yes 
r3d.exw                 no                                                              yes 
rubik.exw               no          libcdpdf.so                                         no - p: symbol lookup error: /usr/lib/libcdgl.so: undefined symbol: ftglSetNearestFilter 
simple_paint.exw        no          libcdpdf.so                                         starts, the p: symbol lookup error: /usr/lib/libcdgl.so: undefined symbol: ftglSetNearestFilter 
                                                                                        when click on 'New' button 
teselation.exw          yes         once got a readable filename (png, apparently, not bmp)  
triangle.exw            yes         no movement                                         yes - no change then 

nm -gD libcdgl.so tells me that that symbol, ftglSetNearestFilter, is there in the library - hmmm,

Cheers

Chris

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

24. Re: Phix, IUP issues - FIXED - but not quite there yet!

ChrisB said...

The issue was libcdpdf.so was not linking

it was not linking, because libcdpdf/so was calling a function in libpdflib.so, which it couldn't find (as shown by ldd libcdpdf.so)

so I had to find libpdflib.so

I couldn't. libpdflib.so is part of the pdflib utilities, and is a commercial program, but there is a PDFlib-lite package, which you have to compile from source.

so I got the is from github, did the usual make, configure, make-install

Still didn't work.

That library is present in the download package...?

$ tar tzf cd-5.14_Linux54_64_lib.tar.gz | grep libpdflib.so 
pdflib7/lib/Linux54_64/libpdflib.so 

I still think all of your libs should go in /usr/local/lib.

-Greg

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

25. Re: Phix, IUP issues - FIXED - but not quite there yet!

Hi Gregg

I'll have a look at that over the nxt couple of days.

As far as putting them /usr/local/lib, you may well be right, but the techgraph install doesn't put them there, and in my experience, even though that may be in the path, sometimes you have to specify exactly the location of the libraries, or symlink to wherever they may be.

Cheers

Chris

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

Search



Quick Links

User menu

Not signed in.

Misc Menu