freebasic / fbc

FreeBASIC is a completely free, open-source, multi-platform BASIC compiler, with syntax similar to MS-QuickBASIC, that adds new features such as pointers, object orientation, unsigned data types, inline assembly, and many others.
https://www.freebasic.net
905 stars 139 forks source link

Not running properly on fedora 31 64bit #212

Open Plutonium5793 opened 4 years ago

Plutonium5793 commented 4 years ago

I installed fbc 1.07.1 according to the directions on this site. (./install.sh -i). It apparently was successful but I am finding it doesn't work right. When compiling I get two errors: fbc /lib64/libtinfo.so.5: no version information available (required by fbc) This library is available, but is installed in /usr/lib64 fbc: Symbol 'ospeed' has different size in shared object, consider relinking.

vilhelmgray commented 4 years ago

Is this related to the libtinfo linking issue in https://github.com/freebasic/fbc/issues/170?

Plutonium5793 commented 4 years ago

I read that over and don't know enough to say for certain. The behavior seems similar. That thread was for gentoo linux, this is for fedora 31. I can see that I have libtinfo.so.5 in my /lib64 directory so I am not certain why fbc cannot read it or get its version information. It is a pointer to libtinfo.so.5.9 There is also a libtinfo.so.6 there which points to libtinfo.so.6.1. I was told that ospeed message can be disregarded as it it the result of fbc being compiled in debian. I was also told in the forums that I cannot expect fbc to run properly without the libtinfo.so.5 being resolved so that other errors I am seeing may be related to this problem.

Plutonium5793 commented 4 years ago

The problems can be fixed by downloading the zip from github, and using the make file provided to compile fbc under fedora. copy fbc over the fbc installed using the directions from here and the problems (both the libtinfo.so.5 and the ospeed problem) disappear. I am used to there being a configure file but just using the makefile provided proved to solve it. Thanks, John

rversteegen commented 4 years ago

You wrote "When compiling I get two errors", but do you mean that fbc didn't run at all, or that it ran without arguments but threw errors when compiling, or that compiling seemed to work but these messages are printed?

The "no version information available" messge is apparently a non-fatal warning (see here).

ncurses/libtinfo is a disaster for portability. Ideally fbc would link binaries against these only when producing a commandline program that makes use of COLOR and other terminal commands, and not when making use of fbgfx instead either. Then the fbc binary itself would be portable, as would many FB programs.