unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* Build Guile 1.8 with CMake
@ 2020-08-09  8:44 pikachuhy
  0 siblings, 0 replies; 4+ messages in thread
From: pikachuhy @ 2020-08-09  8:44 UTC (permalink / raw)
  To: guile-devel, texmacs-dev, sadhen


hi,
I'd like to introduce my guile cmake build scripts to you: 
https://github.com/PikachuHy/guile
Its final target is to provide an MSVC-version guile, which is basic work of MSVC-version TeXmacs.
At present, you can use my cmake scripts to build guile 1.8 in ubuntu 20.04 and Windows mingw32.
In the future, I will continue to explore the way of providing well-running version guile 1.8 in Windows.


TL;DR


Motivation


TeXmacs is an useful scientific editing platform, which depends on Guile 1.8 now.
I'm a heavy user of TeXmacs and almost use it everyday.
When the error occurs in TeXmacs, it's a terrible user experience.
Thus, I want to debug TeXmacs and custom it. Unfortunately, building a debug environment 
is not easy, especially my work heavily depends on Windows System.
There are many mingw version guiles in GitHub(search with keywords: guile mingw).
https://github.com/jralls/guile
https://github.com/mkeeter/guile-mingw/
https://github.com/cygwinports-extras/mingw64-i686-guile
https://github.com/slowphil/mingw-w64-guile1.8
My work bases on mingw-w64-guile1.8, which is used by Windows-version TeXmacs and use the mirror of guile
https://github.com/texmacs/guile


Implementation


Current code host in:
https://github.com/PikachuHy/guile
Main scripts:
CMakeLists.txt
libguile/CMakeLists.txt
cmake/*
and others for test

Main difficulty: How to generate config.h?
I use a stupid but useful way, write all check cases one by one.
https://github.com/PikachuHy/guile/blob/1.8-cmake/cmake/AutotoolCheck.cmake
I think this maybe helpful for other projects when writing cmake script.

Another difficulty: How to generate xxx.x (e.g. alist.x)
In original code, it used a generated sh script named guile-snarf.
I write a python script with the same function to finish this work.
https://github.com/PikachuHy/guile/blob/1.8-cmake/cmake/gen_dot_x.py
Notice that, I also write cmd scripts and sh scripts for the same work. 
But finally, I choose python-version scripts as my default scripts.


Result


My development IDE is CLion 2020.2 with its bundled cmake.

In ubuntu 20.04
Guile is built successfully and all examples run well.
All tests run successfully except document-related test.
I build the latest TeXmacs successfully and it runs well with both static and dynamic Guile library. 

In windows 10 Version 10.0.19041 Build 19041, msys2/mingw64 (CLion check: w64 8.0)
Guile is built successfully, but crashes.
https://github.com/PikachuHy/guile/issues/5
The main problem is the lengths of long and pointers differ.

In windows 10 Version 10.0.19041 Build 19041, msys2/mingw32 (CLion check: w64 8.0)
Guile is built successfully and run well.
Howerver, some examples run crash. (e.g. box-dynamic)
When I built the latest TeXmacs, I met the problem: sys/socket.h: No such file or directory
https://github.com/PikachuHy/guile/issues/12
https://stackoverflow.com/questions/13694233/sys-socket-h-in-mingw32

In windows 10 Version 10.0.19041 Build 19041, MSVC
Guile is compiled fail for no MSVC gmp library.
https://github.com/PikachuHy/guile/issues/10
We should firstly compile the MSVC-version gmp. I find that,
https://wiki.sagemath.org/windows/msvc32-2008-gmp


Conclusion and Future work


This is just the first step to build MSVC-version guile(and MSVC-version TeXmacs).
Now we can use cmake to build guile, it is convenient to debug in CLion. (Although CLion supports Makefile in 2020.2).
Next work is to write cmake scripts for gmp and provide a well-running version guile in Windows.


Happy Hacking
PikachuHy




^ permalink raw reply	[flat|nested] 4+ messages in thread

* Build Guile 1.8 with CMake
@ 2020-08-09 11:51 Pikachu Hy via Developers list for Guile, the GNU extensibility library
  0 siblings, 0 replies; 4+ messages in thread
From: Pikachu Hy via Developers list for Guile, the GNU extensibility library @ 2020-08-09 11:51 UTC (permalink / raw)
  To: guile-devel

hi,
I'd like to introduce my guile cmake build scripts to you:
https://github.com/PikachuHy/guile
Its final target is to provide an MSVC-version guile, which is basic work of MSVC-version TeXmacs.
At present, you can use my cmake scripts to build guile 1.8 in ubuntu 20.04 and Windows mingw32.
In the future, I will continue to explore the way of providing well-running version guile 1.8 in Windows.


TL;DR


Motivation


TeXmacs is an useful scientific editing platform, which depends on Guile 1.8 now.
I'm a heavy user of TeXmacs and almost use it everyday.
When the error occurs in TeXmacs, it's a terrible user experience.
Thus, I want to debug TeXmacs and custom it. Unfortunately, building a debug environment
is not easy, especially my work heavily depends on Windows System.
There are many mingw version guiles in GitHub(search with keywords: guile mingw).
https://github.com/jralls/guile
https://github.com/mkeeter/guile-mingw/
https://github.com/cygwinports-extras/mingw64-i686-guile
https://github.com/slowphil/mingw-w64-guile1.8
My work bases on mingw-w64-guile1.8, which is used by Windows-version TeXmacs and use the mirror of guile
https://github.com/texmacs/guile


Implementation


Current code host in:
https://github.com/PikachuHy/guile
Main scripts:
CMakeLists.txt
libguile/CMakeLists.txt
cmake/*
and others for test

Main difficulty: How to generate config.h?
I use a stupid but useful way, write all check cases one by one.
https://github.com/PikachuHy/guile/blob/1.8-cmake/cmake/AutotoolCheck.cmake
I think this maybe helpful for other projects when writing cmake script.

Another difficulty: How to generate xxx.x (e.g. alist.x)
In original code, it used a generated sh script named guile-snarf.
I write a python script with the same function to finish this work.
https://github.com/PikachuHy/guile/blob/1.8-cmake/cmake/gen_dot_x.py
Notice that, I also write cmd scripts and sh scripts for the same work.
But finally, I choose python-version scripts as my default scripts.


Result


My development IDE is CLion 2020.2 with its bundled cmake.

In ubuntu 20.04
Guile is built successfully and all examples run well.
All tests run successfully except document-related test.
I build the latest TeXmacs successfully and it runs well with both static and dynamic Guile library.

In windows 10 Version 10.0.19041 Build 19041, msys2/mingw64 (CLion check: w64 8.0)
Guile is built successfully, but crashes.
https://github.com/PikachuHy/guile/issues/5
The main problem is the lengths of long and pointers differ.

In windows 10 Version 10.0.19041 Build 19041, msys2/mingw32 (CLion check: w64 8.0)
Guile is built successfully and run well.
Howerver, some examples run crash. (e.g. box-dynamic)
When I built the latest TeXmacs, I met the problem: sys/socket.h: No such file or directory
https://github.com/PikachuHy/guile/issues/12
https://stackoverflow.com/questions/13694233/sys-socket-h-in-mingw32

In windows 10 Version 10.0.19041 Build 19041, MSVC
Guile is compiled fail for no MSVC gmp library.
https://github.com/PikachuHy/guile/issues/10
We should firstly compile the MSVC-version gmp. I find that,
https://wiki.sagemath.org/windows/msvc32-2008-gmp


Conclusion and Future work


This is just the first step to build MSVC-version guile(and MSVC-version TeXmacs).
Now we can use cmake to build guile, it is convenient to debug in CLion. (Although CLion supports Makefile in 2020.2).
Next work is to write cmake scripts for gmp and provide a well-running version guile in Windows.


Happy Hacking
PikachuHy









^ permalink raw reply	[flat|nested] 4+ messages in thread

* Build Guile 1.8 with CMake
@ 2020-08-09  9:30 Pikachu Hy via Texmacs-dev
  0 siblings, 0 replies; 4+ messages in thread
From: Pikachu Hy via Texmacs-dev @ 2020-08-09  9:30 UTC (permalink / raw)
  To: guile-devel, texmacs-dev, sadhen; +Cc: Pikachu Hy

hi,
I'd like to introduce my guile cmake build scripts to you: 
https://github.com/PikachuHy/guile
Its final target is to provide an MSVC-version guile, which is basic work of MSVC-version TeXmacs.
At present, you can use my cmake scripts to build guile 1.8 in ubuntu 20.04 and Windows mingw32.
In the future, I will continue to explore the way of providing well-running version guile 1.8 in Windows.


TL;DR


Motivation


TeXmacs is an useful scientific editing platform, which depends on Guile 1.8 now.
I'm a heavy user of TeXmacs and almost use it everyday.
When the error occurs in TeXmacs, it's a terrible user experience.
Thus, I want to debug TeXmacs and custom it. Unfortunately, building a debug environment 
is not easy, especially my work heavily depends on Windows System.
There are many mingw version guiles in GitHub(search with keywords: guile mingw).
https://github.com/jralls/guile
https://github.com/mkeeter/guile-mingw/
https://github.com/cygwinports-extras/mingw64-i686-guile
https://github.com/slowphil/mingw-w64-guile1.8
My work bases on mingw-w64-guile1.8, which is used by Windows-version TeXmacs and use the mirror of guile
https://github.com/texmacs/guile


Implementation


Current code host in:
https://github.com/PikachuHy/guile
Main scripts:
CMakeLists.txt
libguile/CMakeLists.txt
cmake/*
and others for test

Main difficulty: How to generate config.h?
I use a stupid but useful way, write all check cases one by one.
https://github.com/PikachuHy/guile/blob/1.8-cmake/cmake/AutotoolCheck.cmake
I think this maybe helpful for other projects when writing cmake script.

Another difficulty: How to generate xxx.x (e.g. alist.x)
In original code, it used a generated sh script named guile-snarf.
I write a python script with the same function to finish this work.
https://github.com/PikachuHy/guile/blob/1.8-cmake/cmake/gen_dot_x.py
Notice that, I also write cmd scripts and sh scripts for the same work. 
But finally, I choose python-version scripts as my default scripts.


Result


My development IDE is CLion 2020.2 with its bundled cmake.

In ubuntu 20.04
Guile is built successfully and all examples run well.
All tests run successfully except document-related test.
I build the latest TeXmacs successfully and it runs well with both static and dynamic Guile library. 

In windows 10 Version 10.0.19041 Build 19041, msys2/mingw64 (CLion check: w64 8.0)
Guile is built successfully, but crashes.
https://github.com/PikachuHy/guile/issues/5
The main problem is the lengths of long and pointers differ.

In windows 10 Version 10.0.19041 Build 19041, msys2/mingw32 (CLion check: w64 8.0)
Guile is built successfully and run well.
Howerver, some examples run crash. (e.g. box-dynamic)
When I built the latest TeXmacs, I met the problem: sys/socket.h: No such file or directory
https://github.com/PikachuHy/guile/issues/12
https://stackoverflow.com/questions/13694233/sys-socket-h-in-mingw32

In windows 10 Version 10.0.19041 Build 19041, MSVC
Guile is compiled fail for no MSVC gmp library.
https://github.com/PikachuHy/guile/issues/10
We should firstly compile the MSVC-version gmp. I find that,
https://wiki.sagemath.org/windows/msvc32-2008-gmp


Conclusion and Future work


This is just the first step to build MSVC-version guile(and MSVC-version TeXmacs).
Now we can use cmake to build guile, it is convenient to debug in CLion. (Although CLion supports Makefile in 2020.2).
Next work is to write cmake scripts for gmp and provide a well-running version guile in Windows.


Happy Hacking
PikachuHy







_______________________________________________
Texmacs-dev mailing list
Texmacs-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/texmacs-dev

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Build Guile 1.8 with CMake
@ 2020-08-09  8:12 pikachuhy
  0 siblings, 0 replies; 4+ messages in thread
From: pikachuhy @ 2020-08-09  8:12 UTC (permalink / raw)
  To: guile-devel; +Cc: texmacs-dev


hi,
I'd like to introduce my guile cmake build scripts to you: 
https://github.com/PikachuHy/guile
Its final target is to provide an MSVC-version guile, which is basic work of MSVC-version TeXmacs.
At present, you can use my cmake scripts to build guile 1.8 in ubuntu 20.04 and Windows mingw32.
In the future, I will continue to explore the way of providing well-running version guile 1.8 in Windows.


TL;DR


Motivation


TeXmacs is an useful scientific editing platform, which depends on Guile 1.8 now.
I'm a heavy user of TeXmacs and almost use it everyday.
When the error occurs in TeXmacs, it's a terrible user experience.
Thus, I want to debug TeXmacs and custom it. Unfortunately, building a debug environment 
is not easy, especially my work heavily depends on Windows System.
There are many mingw version guiles in GitHub(search with keywords: guile mingw).
https://github.com/jralls/guile
https://github.com/mkeeter/guile-mingw/
https://github.com/cygwinports-extras/mingw64-i686-guile
https://github.com/slowphil/mingw-w64-guile1.8
My work bases on mingw-w64-guile1.8, which is used by Windows-version TeXmacs and use the mirror of guile
https://github.com/texmacs/guile


Implementation


Current code host in:
https://github.com/PikachuHy/guile
Main scripts:
CMakeLists.txt
libguile/CMakeLists.txt
cmake/*
and others for test

Main difficulty: How to generate config.h?
I use a stupid but useful way, write all check cases one by one.
https://github.com/PikachuHy/guile/blob/1.8-cmake/cmake/AutotoolCheck.cmake
I think this maybe helpful for other projects when writing cmake script.

Another difficulty: How to generate xxx.x (e.g. alist.x)
In original code, it used a generated sh script named guile-snarf.
I write a python script with the same function to finish this work.
https://github.com/PikachuHy/guile/blob/1.8-cmake/cmake/gen_dot_x.py
Notice that, I also write cmd scripts and sh scripts for the same work. 
But finally, I choose python-version scripts as my default scripts.


Result


My development IDE is CLion 2020.2 with its bundled cmake.

In ubuntu 20.04
Guile is built successfully and all examples run well.
All tests run successfully except document-related test.
I build the latest TeXmacs successfully and it runs well with both static and dynamic Guile library. 

In windows 10 Version 10.0.19041 Build 19041, msys2/mingw64 (CLion check: w64 8.0)
Guile is built successfully, but crashes.
https://github.com/PikachuHy/guile/issues/5
The main problem is the lengths of long and pointers differ.

In windows 10 Version 10.0.19041 Build 19041, msys2/mingw32 (CLion check: w64 8.0)
Guile is built successfully and run well.
Howerver, some examples run crash. (e.g. box-dynamic)
When I built the latest TeXmacs, I met the problem: sys/socket.h: No such file or directory
https://github.com/PikachuHy/guile/issues/12
https://stackoverflow.com/questions/13694233/sys-socket-h-in-mingw32

In windows 10 Version 10.0.19041 Build 19041, MSVC
Guile is compiled fail for no MSVC gmp library.
https://github.com/PikachuHy/guile/issues/10
We should firstly compile the MSVC-version gmp. I find that,
https://wiki.sagemath.org/windows/msvc32-2008-gmp


Conclusion and Future work


This is just the first step to build MSVC-version guile(and MSVC-version TeXmacs).
Now we can use cmake to build guile, it is convenient to debug in CLion. (Although CLion supports Makefile in 2020.2).
Next work is to write cmake scripts for gmp and provide a well-running version guile in Windows.


Happy Hacking
PikachuHy




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-08-09 11:51 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-09  8:44 Build Guile 1.8 with CMake pikachuhy
  -- strict thread matches above, loose matches on Subject: below --
2020-08-09 11:51 Pikachu Hy via Developers list for Guile, the GNU extensibility library
2020-08-09  9:30 Pikachu Hy via Texmacs-dev
2020-08-09  8:12 pikachuhy

unofficial mirror of guile-devel@gnu.org 

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://yhetil.org/guile-devel/0 guile-devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 guile-devel guile-devel/ https://yhetil.org/guile-devel \
		guile-devel@gnu.org
	public-inbox-index guile-devel

Example config snippet for mirrors.
Newsgroups are available over NNTP:
	nntp://news.yhetil.org/yhetil.lisp.guile.devel
	nntp://news.gmane.io/gmane.lisp.guile.devel


AGPL code for this site: git clone http://ou63pmih66umazou.onion/public-inbox.git