lucaschess icon indicating copy to clipboard operation
lucaschess copied to clipboard

Please publish instructions how to build from scratch

Open yurivict opened this issue 7 years ago • 11 comments

There are some shared libraries in the repository, that I can't use. So I delete them. Then this command LCEngine/xcython_linux.sh fails:

rm: LCEngineV1.so: No such file or directory
running build_ext
building 'LCEngineV1' extension
cc -DNDEBUG -O2 -pipe -fno-omit-frame-pointer -fstack-protector -fno-strict-aliasing -fno-omit-frame-pointer -fPIC -I/usr/local/include/python2.7 -c LCEngineV1.c -o build/temp.freebsd-11.2-STABLE-amd64-2.7/LCEngineV1.o
cc -shared -lpthread -L/usr/local/lib -fstack-protector -fstack-protector -O2 -pipe -fno-omit-frame-pointer -fstack-protector -fno-strict-aliasing -fno-omit-frame-pointer build/temp.freebsd-11.2-STABLE-amd64-2.7/LCEngineV1.o -L/usr/local/lib -lirina -lpython2.7 -o /usr/ports/games/lucaschess/work/lucaschess-11.06-14-g69ead13/LCEngine/LCEngineV1.so
/usr/bin/ld: cannot find -lirina
cc: error: linker command failed with exit code 1 (use -v to see invocation)
error: command 'cc' failed with exit status 1
amd64
cp: LCEngineV1.so: No such file or directory
cp: libirina.so: No such file or directory
cp: LCEngineV1.so: No such file or directory
cp: libirina.so: No such file or directory
*** Error code 1

Could you please publish how to build from scratch?

OS: FreeBSD 11.2 Version: 11.06-14

yurivict avatar Sep 05 '18 02:09 yurivict

You must edit the script and change line 20 with cd ..

32 or 64 bits ?

lukasmonk avatar Sep 05 '18 22:09 lukasmonk

32 or 64 bits ?

Both. I am trying to create a FreeBSD port, and there are both 32 and 64 bit systems.

yurivict avatar Sep 05 '18 22:09 yurivict

Ok.

Tomorrow, I´ll try to install virtual machines of both systems.

I have found virtual machines to 11.1 version, some problem about use this ?

lukasmonk avatar Sep 05 '18 22:09 lukasmonk

No problems. Just please make it easy to build from scratch. FYI, linux shared libs don't work on BSDs. They have to be rebuilt from source.

Thank you.

yurivict avatar Sep 05 '18 23:09 yurivict

There is a problem, this OS needs specific versions of engines, and these are not inlcuded with the distribution.

lukasmonk avatar Sep 06 '18 21:09 lukasmonk

Why can't they be rebuilt?

yurivict avatar Sep 06 '18 21:09 yurivict

I believe that needs a lot of work to compile all engines.

To compile libirina.so, you must go to folder LCEngine/irina, and edit the file xmk_linux.sh and change gcc with cc. Then go to LCEngine folder and edit xcython_linux.sh changing python to python2.7.

This creates two files needed to launch the program, LCEngineV1.so and libirina.so That must be copied to the root of Lucas Chess.

lukasmonk avatar Sep 06 '18 22:09 lukasmonk

Build scripts should do this.

yurivict avatar Sep 06 '18 22:09 yurivict

I use a PC with Windows 8.1 as my work computer, also I have a couple of virtual machines installed with two Linux 32 and 64 bits (version Cinnamon). I have installed FreeBSD, but if with Linux I have many difficulties due to lack of use, with FreeBSD the problems are greater (by example "vi" does not work the same, that has dislocated me). In this moment my idea is that in the next version I will eliminate everything related to Linux, and that the version in Linux or FreeBSD or macOS will be supported by someone who knows python and this operating system, by means of a fork, dedicating myself only to the version in Windows, which is the one I know, and helping whoever is encouraged to support the other operating systems, if there is anyone. In Spanish it is called zapatero to your shoes.

To FreeBSD, it is needed to know the way to compile all the engines, or a group of engines that works in the OS, then compile LCEngine via cython and irina.so via cc, also poliglot in Engines/.../_Tools. I can't help in the work to compile all of these.

lukasmonk avatar Sep 07 '18 20:09 lukasmonk

by example "vi" does not work the same

'pkg install vim' installs the command 'vim' that is the same as in linux.

gnu make and cmake scripts work the same on all systems, including windows, linux and FreeBSD. If they are written right, they will be same for all systems.

yurivict avatar Sep 07 '18 22:09 yurivict

I used "edit" at the end, which works well and is simple to use.

With version 12 I will try that everything related to each operating system, is in a separate folder, both code and engines, so it will be clearer for those who want to support other OS than Windows.

lukasmonk avatar Sep 08 '18 05:09 lukasmonk