I am looking for complete guide how to compile wxMax

Started by takis76, July 17, 2019, 18:17:36

Previous topic - Next topic

Derron

There is no difference but as I do not use Blide I do not knwo what commands it calls.


With your other modules you should consider to post the error messages.


But as said: the actively "BlitzMax developing" users moved on to NG. So chances for fixes are higher with NG than with vanilla.


Bye
Ron

takis76

The srs encounter a problem.
It looks like it compiled but when I try to run one old game it says:


Compile Error: Can't find interface for module 'srs.d3d11max2d'
Build Error: failed to compile (-1) E:/Dlb2/d3d11renderimage.bmxCompile Error: Unable to find overload for memcopy(Byte Ptr,Byte Ptr,Int). Argument #3 is "Int" but declaration is "size_t".
[E:/Dlb2/d3d9renderimage.bmx;66;0]


Will you help me to fix and the srs module?
Am I missing some file or need to download something which is more updated?

Derron

It says it cannot find srs.mod/d3d11max2d.mod

Depending on the bmk you use (vanilla or bruceys updated one) you need to compile the module first.
Similar to how you compiled wx.mod.


Bye
Ron

takis76

I think I compiled it.
I used this command: bmk makemods -a srs

Derron

As said multiple times: the bmk.exe of NG does automatically compile all the required modules. So eg. it would only compile from wx.mod what is needed in the application. Means initial compilation times are cut by a huge amount.


Glad you got it sorted out.

Bye
Ron

takis76

#50
I recompiled it and I re set the BlitzMax folder and now it seems it recognized it and new error present.


Compile Error: Identifier 'AddDeviceLostCallback' not found
Build Error: failed to compile E:/Dlb2/d3d9renderimagecontext.bmx


The d3drenderimagecontext.bmx is the source code I am placing in my project folder to use the render2texture.
I copied the file d3d9graphics.bmx from render2texture and I replaced it in my brl\dxgraphics.mod and I re compiled the brl again
and maybe it was fixed but a new error appeared in koriolis mod.


Compile Error: Identifier 'SetZipStreamPasssword' not found


This is a command from Koriolis zipstream what is missing again? I have already compiled it.

It was a type the Password was with 3 sss "Passsword" (Is very strange it was working for a long time with 3 sss).
Now the command it was turn blue. But now it says:


Compile Error: Duplicate identifier 'SetZipStreamPassword' in modules 'koriolis.zipstream' and 'ifsogui.gui'


It seems the SetZipStreamPassword functions were set 2 times in both mods ifsogui and ZipStream.
Do I need to remove it from ifsoGui?

Derron

I wont be able (and willed - if it are answers you can give yourself) to answer all questions.

It seems aif you use two modules which both have similar named functions - open one of the modules and rename the function and ALL occourencies within the module (so "search and replace in open files" within your favorite text editor - like notepad++).

Wonder how it should have been working _before_.


@ sss
Maybe this was working for this very reason - someone added another "s" just to make the duplicate identifier go ... now you corrected it but this leads to the duplicate.


bye
Ron

takis76

#52
Strange. I was fixed it.
In the ifsoGui module they are importing the Koriolis.ZipStream module.
And in my game importing the Koriolis.ZipStrem module too.

Look what is happening now.
If you use the ifsoGui module the module imports the Koriolis.ZipStraem and you don't need to import it again. (But you don't know it).
But if you don't use the ifsoGui you will need to import the Koriolis mod.

Long before this wasn't happened. It seems the newest versions of IfsoGUI they use new functions which have to do with zip and they have dependences from Koriolis.

So if I will not import the Koriolis in my game and Import the IfsoGui only, Koriolis is getting imported from IfsoGui automatically.

Derron

So what are you trying to say?

project imports moduleA
if moduleA imports moduleB then project does not need to import moduleB separately
if moduleA does not import moduleB but your project wants to use stuff from moduleB then you need to import moduleB.

This is common practice in BlitzMax.

Of course it does not raise problems if you import both modules (A and B) in your project even if moduleA imports moduleB already.


bye
Ron

takis76

It seems everything was compiled and run.

My game was run.
The wxMax was run.
And all my current modules were compiled and run in my game.

So I have the BlitzMax 1.52 which uses the i686-8.1.0-release-win32-sjlj-rt_v6-rev0 as MinGW. No Environment Variables were set but the MinGw32 folder is in the system path.
All modules compiled using BMK command prompt (But from inside the Advance Module Builder of Blide they encountered errors).
Maybe the BMK of BlitzMax 1.52 was newer and the Pub and Brl needed to be updated.

I will keep this setup in a safe place and we will need to put it in some repository or in gitHub with the current version of MinGW and all current modules compiled and run as I have them now to help other people and save them from this long hussle.

Also I will need to replicate this installation again just to write a nice instruction manual for other people to have, to able to follow all of this long proccess to install BlitzMax. (Which I haven't understood whole process exactly yet regardless if it was succed).

One final correction when a wxMax application closes presents on debug error message.


A debuggin check in this application has failed.

This happens when you are exiting the program.

takis76

#55
Quote
project imports moduleA
if moduleA imports moduleB then project does not need to import moduleB separately
if moduleA does not import moduleB but your project wants to use stuff from moduleB then you need to import moduleB.

The ifsoGui wasn't import the ZipStream and I was import the ZipStream if I would like to import it.
So when I was importing the IfsoGui and ZipStream both were imported once.

For some reason now, hidden the IfsoGui Imports the ZipStream because it needs it and I was used to import and the ZipStream separately causing to import the same module twice but I didn't know it.

So if someone uses the ifsoGui uses and the ZipStream. But if will not use ifsoGui will not use ZipStream. (Regardless if you want the ZipStream in your program).

I know each module will call and other modules too.

Derron

wx "notices" are similar to GTK warnings with maxgui I think. Something is not properly handled.


@ instructions
For all others I would suggest to use what dawlane wrote. Do not ride the dead horse if you do not really need it (I only use it to check for discrepancies to NG behaviour).


bye
Ron

takis76

Don't the BlitzMax 1.52 be good?

Later I will try to install and the NG. But this will be a very long run with lots of questions.
For now it seems 1.52 it will work. (Thank all of you, you helped me at least to compile my current modules and add some now ones which I wasn't have them before).
Maybe the NG will be matured even more and there will be less problems in the future. But a detailed instructions and separated repositories in github with the correct working versions of MinGW and BMK together with the specific BlitzMax Versions are needed.
I will zip all of these and I will store them in the app.box.com for people to download and have everything precompiled and program without need to pass whole of this process. But if someone is interesting to do whole of this thing manually I will have and detailed instructions.

I will need tutorials how to use wxMax but I will take and some look in the examples.

For now this gives me a new hope to use the BlitzMax for many years and I will try to compile and the new NG version, maybe tommorrow.
But with the version 1.52 (I had the 1.50 vanilla) things have refreshed a little).

Derron

Until https://github.com/bmx-ng/bmk/issues/86 is fixed I do not suggest to run multiple BlitzMax installations (with Brucey's BMK and BlitzMax-local MinGW versions) during the same session as long as the MinGWs differ. BMK sets some variables which "brl.mod/maxutil.mod" prioritizes higher than local directories.


bye
Ron

takis76

Do BlitzMax 1.52 the current one we have installed can use the same MinGw (i686-8.1.0-release-win32-sjlj-rt_v6-rev0)?
If we assume I will move the installed BlitzMax to a safe place a different directory and I will try to install the NG can be installed propertly along with all modules I have here?

We have used all updated modules from GitHub and it suppose they are the same and can be used in the NG version of BlitzMax.
I am planning to install and NG too.