Author Topic: build bot in the github, I see one nice project  (Read 52764 times)

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 6034
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: build bot in the github, I see one nice project
« Reply #105 on: October 17, 2024, 12:47:29 am »
Can this build bot work outside of GitHub (e.g. Gitea Runner, Woodpecker CI)?

Do you know if those CI systems support running msys2 environment, I think they can be used if msys2 is supported.
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline Grit Clef

  • Multiple posting newcomer
  • *
  • Posts: 107
  • Where there is a will, there is a way.
Re: build bot in the github, I see one nice project
« Reply #106 on: October 17, 2024, 12:11:49 pm »
Now it might work; my hope.

In the latest error message from github action, I see this:

Code
g++.exe -std=gnu++11  -pipe -mthreads -fmessage-length=0 -fexceptions -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DNOPCH -DwxUSE_UNICODE -DBOOST_SYSTEM_NO_DEPRECATED  -I..\..\..\include -I..\..\..\include\tinyxml -I..\..\..\sdk\wxscintilla\include -ID:/msys64/opt/wxwidgets3.2/include -ID:/msys64/opt/wxwidgets3.2/lib\gcc_dll\mswu -ID:/msys64/opt/boost_1_86_0/boost -c CParser.cpp -o ..\\..\\..\\.objs32\\plugins\\contrib\\NassiShneiderman\\CParser.o
CParser.cpp:5:10: fatal error: boost/spirit/include/classic.hpp: No such file or directory
    5 | #include <boost/spirit/include/classic.hpp>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
mingw32-make[1]: *** [NassiShneiderman_wx32.cbp.mak:108: ..\\..\\..\\.objs32\\plugins\\contrib\\NassiShneiderman\\CParser.o] Error 1
mingw32-make[1]: Leaving directory 'D:/a/winstyle-codeblocks-bins/winstyle-codeblocks-bins/codeblocks_sfmirror/src/plugins/contrib/NassiShneiderman'
mingw32-make: *** [Makefile_plugins:40: plugins_contrib_nassishneiderman_nassishneiderman_wx32] Error 2
Error: Process completed with exit code 2.

You have already installed the header files from the boost library?
Maybe you need to tweak the compiler search paths of the boost, as I can see that this search path is already included.

Code
D:/msys64/opt/boost_1_86_0/

So, do you have a folder named below?

Code
D:/msys64/opt/boost_1_86_0/boost/spirit/include/classic.hpp

Maybe, as a workaround, you can exclude this plugin from the workspace to makefile generation.
That might be a further problem; now the cland_client still can't be built.
Code
cmd /c "cd src\resources && zip -rq9 ..\..\clangd_client.zip images && cd ..\.."
Microsoft Windows [Version 10.0.20348.2700]
(c) Microsoft Corporation. All rights reserved.

D:\a\winstyle-codeblocks-bins\winstyle-codeblocks-bins\codeblocks_sfmirror\src\plugins\contrib\clangd_client>cmd /c copy ./clangd_client.zip ../../../devel32/share/CodeBlocks/clangd_client.zip
The syntax of the command is incorrect.
mingw32-make[1]: *** [clangd_client_wx32.cbp.mak:63: after_default] Error 1

I found that if you call cmd.exe inside MSYS2, there will be a strange problem; in some cases there're no errors, though. I'm not clear what made that.
« Last Edit: October 17, 2024, 12:15:39 pm by Grit Clef »
-Windows 7, 32-bit
-CodeBlocks r13542, gcc 14.2.0, debug version

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 6034
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: build bot in the github, I see one nice project
« Reply #107 on: October 17, 2024, 05:05:28 pm »
I think you can run the mingw32-make.exe inside the cmd.exe shell, not the msys2's shell.
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline Михаил Агарков

  • Multiple posting newcomer
  • *
  • Posts: 22
  • Highly sensitive programmer. ☮☯
    • Website
Re: build bot in the github, I see one nice project
« Reply #108 on: October 19, 2024, 09:55:36 am »
I made a repo in codeberg to test if the build bot can work in Woodpecker CI, just need to wait for the repo to get approved to use actions.
https://codeberg.org/MichaelAgarkov/x86-codeblocks-builds

Edit: removed the repo because they didn't respond, if it works on GitHub then it probably will work in any GitHub Actions' compatible CI/CD.
« Last Edit: October 20, 2024, 06:33:29 pm by Михаил Агарков »

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 6034
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: build bot in the github, I see one nice project
« Reply #109 on: October 19, 2024, 10:21:06 am »
I made a repo in codeberg to test if the build bot can work in Woodpecker CI, just need to wait for the repo to get approved to use actions.
https://codeberg.org/MichaelAgarkov/x86-codeblocks-builds

Good work.

Why the repo should "get approved" to use the actions?  :)
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline Михаил Агарков

  • Multiple posting newcomer
  • *
  • Posts: 22
  • Highly sensitive programmer. ☮☯
    • Website
Re: build bot in the github, I see one nice project
« Reply #110 on: October 19, 2024, 10:22:58 am »
I made a repo in codeberg to test if the build bot can work in Woodpecker CI, just need to wait for the repo to get approved to use actions.
https://codeberg.org/MichaelAgarkov/x86-codeblocks-builds

Good work.

Why the repo should "get approved" to use the actions?  :)

https://docs.codeberg.org/ci/#using-codeberg's-instance-of-woodpecker-ci

Offline Grit Clef

  • Multiple posting newcomer
  • *
  • Posts: 107
  • Where there is a will, there is a way.
Re: build bot in the github, I see one nice project
« Reply #111 on: October 19, 2024, 12:15:31 pm »
Uhh, you might have used the wrong repository. It is https://github.com/zxunge/winstyle-codeblocks-bins , not the original x86-codeblocks-bins which is successful.
-Windows 7, 32-bit
-CodeBlocks r13542, gcc 14.2.0, debug version

Offline Grit Clef

  • Multiple posting newcomer
  • *
  • Posts: 107
  • Where there is a will, there is a way.
Re: build bot in the github, I see one nice project
« Reply #112 on: October 19, 2024, 12:32:53 pm »
The fact is, those Makefiles generated by cbp2make are not so perfect that there are lots of bugs in build process. Many plugins can't be built owing to this or that reasons.
One problem I see often is like
Code
...........
xcopy /Y index.ini ..\..\..\output32\share\CodeBlocks\docs
D:index.ini
1 File(s) copied
g++.exe   -Wl,--enable-auto-image-base -Wl,--add-stdcall-alias -Wl,--enable-auto-import  help_plugin.cpp before_help_plugin out_help_plugin after_help_plugin   -o help_plugin
help_plugin.cpp:10:10: fatal error: sdk.h: No such file or directory
   10 | #include "sdk.h"
      |          ^~~~~~~
compilation terminated.
mingw32-make[1]: *** [<builtin>: help_plugin] Error 1
mingw32-make[1]: Leaving directory 'D:/a/winstyle-codeblocks-bins/winstyle-codeblocks-bins/codeblocks_sfmirror/src/plugins/contrib/help_plugin'
mingw32-make: *** [Makefile_plugins:25: plugins_contrib_help_plugin_help_plugin_wx32] Error 2
............
The build commands were polluted, due to unknown reasons. The plugin had been already built, but the linking command was executed again, which was wrong.
« Last Edit: October 19, 2024, 12:37:35 pm by Grit Clef »
-Windows 7, 32-bit
-CodeBlocks r13542, gcc 14.2.0, debug version

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 6034
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: build bot in the github, I see one nice project
« Reply #113 on: October 19, 2024, 12:46:06 pm »
The fact is, those Makefiles generated by cbp2make are not so perfect that there are lots of bugs in build process. Many plugins can't be built owing to this or that reasons.
One problem I see often is like
Code
...........
xcopy /Y index.ini ..\..\..\output32\share\CodeBlocks\docs
D:index.ini
1 File(s) copied
g++.exe   -Wl,--enable-auto-image-base -Wl,--add-stdcall-alias -Wl,--enable-auto-import  help_plugin.cpp before_help_plugin out_help_plugin after_help_plugin   -o help_plugin
help_plugin.cpp:10:10: fatal error: sdk.h: No such file or directory
   10 | #include "sdk.h"
      |          ^~~~~~~
compilation terminated.
mingw32-make[1]: *** [<builtin>: help_plugin] Error 1
mingw32-make[1]: Leaving directory 'D:/a/winstyle-codeblocks-bins/winstyle-codeblocks-bins/codeblocks_sfmirror/src/plugins/contrib/help_plugin'
mingw32-make: *** [Makefile_plugins:25: plugins_contrib_help_plugin_help_plugin_wx32] Error 2
............
The build commands were polluted, due to unknown reasons. The plugin had been already built, but the linking command was executed again, which was wrong.

Maybe you can show us the generated makefile? So that the cb2make author or other devs can help on this.
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline Grit Clef

  • Multiple posting newcomer
  • *
  • Posts: 107
  • Where there is a will, there is a way.
Re: build bot in the github, I see one nice project
« Reply #114 on: October 19, 2024, 12:48:46 pm »
Hey, does anyone know what packages to install to obtain TeX?
Code
'epstopdf' is not recognized as an internal or external command,
operable program or batch file.
error: Problems running epstopdf. Check your TeX installation!
'epstopdf' is not recognized as an internal or external command,
operable program or batch file.
error: Problems running epstopdf. Check your TeX installation!
'epstopdf' is not recognized as an internal or external command,
operable program or batch file.
error: Problems running epstopdf. Check your TeX installation!
'epstopdf' is not recognized as an internal or external command,
operable program or batch file.
-Windows 7, 32-bit
-CodeBlocks r13542, gcc 14.2.0, debug version

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 6034
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: build bot in the github, I see one nice project
« Reply #115 on: October 19, 2024, 12:56:19 pm »
Hey, does anyone know what packages to install to obtain TeX?
Code
'epstopdf' is not recognized as an internal or external command,
operable program or batch file.
error: Problems running epstopdf. Check your TeX installation!
'epstopdf' is not recognized as an internal or external command,
operable program or batch file.
error: Problems running epstopdf. Check your TeX installation!
'epstopdf' is not recognized as an internal or external command,
operable program or batch file.
error: Problems running epstopdf. Check your TeX installation!
'epstopdf' is not recognized as an internal or external command,
operable program or batch file.

My guess under msys2, it is the texlive package.

Package: mingw-w64-x86_64-texlive-bin - MSYS2 Packages

But please note that this package(group of packages) are huge, I guess it should takes about 4G or 8G bytes size.
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline Grit Clef

  • Multiple posting newcomer
  • *
  • Posts: 107
  • Where there is a will, there is a way.
Re: build bot in the github, I see one nice project
« Reply #116 on: October 19, 2024, 01:26:24 pm »
Makefile for help_plugin.
-Windows 7, 32-bit
-CodeBlocks r13542, gcc 14.2.0, debug version

Offline Grit Clef

  • Multiple posting newcomer
  • *
  • Posts: 107
  • Where there is a will, there is a way.
Re: build bot in the github, I see one nice project
« Reply #117 on: October 19, 2024, 01:29:10 pm »
Another common problem is:
Code
g++.exe -shared  -L..\..\..\devel32 -LD:/msys64/opt/wxwidgets3.2/lib -LD:/msys64/opt/wxwidgets3.2/lib\gcc_dll ..\\..\\..\\.objs32\\plugins\\contrib\\DoxyBlocks\\DoxyBlocksLogger.o ..\\..\\..\\.objs32\\plugins\\contrib\\DoxyBlocks\\ExtractDocs.o ..\\..\\..\\.objs32\\plugins\\contrib\\DoxyBlocks\\AutoDoc.o ..\\..\\..\\.objs32\\plugins\\contrib\\DoxyBlocks\\DoxyBlocks.o 
                                                                                     ∧∧∧∧∧∧
..\\..\\..\\.objs32\\plugins\\contrib\\DoxyBlocks\\DoxyBlocks.o ..\\..\\..\\.objs32\\plugins\\contrib\\DoxyBlocks\\ConfigPanel.o ..\\..\\..\\.objs32\\plugins\\contrib\\DoxyBlocks\\Config.o  -o ..\\..\\..\\devel32\\share\\CodeBlocks\\plugins\\DoxyBlocks.dll  -Wl,--enable-auto-import -mthreads  -lcodeblocks -lwxmsw32u
D:/msys64/opt/mingw32/bin/../lib/gcc/i686-w64-mingw32/14.2.0/../../../../i686-w64-mingw32/bin/ld.exe: ..\..\..\.objs32\plugins\contrib\DoxyBlocks\DoxyBlocks.o:DoxyBlocks.cpp:(.text+0x0): multiple definition of `DoxyBlocks::GetEventTable() const'; ..\..\..\.objs32\plugins\contrib\DoxyBlocks\DoxyBlocks.o:DoxyBlocks.cpp:(.text+0x0): first defined here
D:/msys64/opt/mingw32/bin/../lib/gcc/i686-w64-mingw32/14.2.0/../../../../i686-w64-mingw32/bin/ld.exe: ..\..\..\.objs32\plugins\contrib\DoxyBlocks\DoxyBlocks.o:DoxyBlocks.cpp:(.text+0x10): multiple definition of `DoxyBlocks::GetEventHashTable() const'; ..\..\..\.objs32\plugins\contrib\DoxyBlocks\DoxyBlocks.o:DoxyBlocks.cpp:(.text+0x10): first defined here
...........
There are multiple same object files provided.
-Windows 7, 32-bit
-CodeBlocks r13542, gcc 14.2.0, debug version

Offline Grit Clef

  • Multiple posting newcomer
  • *
  • Posts: 107
  • Where there is a will, there is a way.
Re: build bot in the github, I see one nice project
« Reply #118 on: October 19, 2024, 03:07:18 pm »
Hey, does anyone know what packages to install to obtain TeX?
Code
'epstopdf' is not recognized as an internal or external command,
operable program or batch file.
error: Problems running epstopdf. Check your TeX installation!
'epstopdf' is not recognized as an internal or external command,
operable program or batch file.
error: Problems running epstopdf. Check your TeX installation!
'epstopdf' is not recognized as an internal or external command,
operable program or batch file.
error: Problems running epstopdf. Check your TeX installation!
'epstopdf' is not recognized as an internal or external command,
operable program or batch file.

My guess under msys2, it is the texlive package.

Package: mingw-w64-x86_64-texlive-bin - MSYS2 Packages

But please note that this package(group of packages) are huge, I guess it should takes about 4G or 8G bytes size.
No, there's no 'epstopdf' in those packages; but an 'epspdf'. However, doxygen needs 'epstopdf'.
-Windows 7, 32-bit
-CodeBlocks r13542, gcc 14.2.0, debug version

Offline stahta01

  • Lives here!
  • ****
  • Posts: 7696
    • My Best Post
Re: build bot in the github, I see one nice project
« Reply #119 on: October 19, 2024, 04:50:14 pm »
Code
$ pacman -Qo /mingw64/bin/repstopdf.exe
/mingw64/bin/repstopdf.exe is owned by mingw-w64-x86_64-texlive-core 2023.20230404-1

Some places use "repstopdf" instead of "epstopdf"

Edit: But, it did not work for me.
Code
C:\msys64\mingw64\bin\runscript.tlu:922: C:\msys64\mingw64\bin\runscript.tlu:853: no appropriate script or program found
: epstopdf

${MINGW_PACKAGE_PREFIX}-ghostscript should have missing scripts.

But, I still could not find script

Tim S.
« Last Edit: October 19, 2024, 05:00:13 pm by stahta01 »
C Programmer working to learn more about C++ and Git.
On Windows 7 64 bit and Windows 10 64 bit.
--
When in doubt, read the CB WiKi FAQ. http://wiki.codeblocks.org