Allegro.cc - Online Community

Allegro.cc Forums » Allegro Development » Allegro 4.2.0 has been released!

This thread is locked; no one can reply to it. rss feed Print
 1   2   3   4 
Allegro 4.2.0 has been released!
ReyBrujo
Moderator
January 2001
avatar

Ronald, if you are still there, can you try make INFO=inf to see if it compiles without errors (except that warning, it is just a cast, a simple patch)? Do a make clean first. Also, can you check in the info directory of your djgpp to see if the files there have the .inf or .info extension? That would be a second patch if they only have the .inf extension.

--
RB
光子「あたしただ…奪う側に回ろうと思っただけよ」
Mitsuko's last words, Battle Royale

Rash
Member #2,374
May 2002
avatar

I don't understand. If you're using a system of release candidates, shouldn't the last one actually be equal to the main release (modulo version values)?

Thomas Fjellstrom
Member #476
June 2000
avatar

You'd like to think so, but it doens't really work that well for allegro. Usually when a RC goes well, it is made into the next release, but I think thats happend, like once. Otherwise it gets into a perpetual RC release, it'll never end ;)

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro TODO]
"If you can't think of a better solution, don't try to make a better solution." -- weapon_S
"The less evidence we have for what we believe is certain, the more violently we defend beliefs against those who don't agree" -- https://twitter.com/neiltyson/status/592870205409353730

Peter Wang
Member #23
April 2000

Well, there was an RC3 that was only announced on [AD]. But actually, we're just not formal about the release process. "Beta" and "RC" are just WIPs in disguise to encourage more testing ;)

Neil Walker
Member #210
April 2000
avatar

I guess I must be doing something really silly, but... I've downloaded and installed mingw 4.1 package , opened up a vs2005 command window (that sets up the path, include/lib directories, etc), ran 'fix msvc8', and on typing 'mingw32-make' I get the following:

D:\DATA\allegro42>mingw32-make
Compiling Allegro for MSVC, optimised. Please wait...
gcc -O -Wall -Werror -o obj/msvc/runner.exe src/misc/runner.c
f:\mingw\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: cannot find -luser32
collect2: ld returned 1 exit status
mingw32-make: *** [obj/msvc/runner.exe] Error 1

D:\DATA\allegro42>

Neil.

Neil.
MAME Cabinet Blog / AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

Dennis
Member #1,090
July 2003
avatar

Peter Wang said:

It's strange, because hline/vline are supposed to be using the same technique as fcos and friends.

I'm very sorry, it was all my own fault... some outdated header files from 4.20beta4 were somehow sitting in the 'include' directory of my MSVC installation and thus got used, instead of the true 4.20 headers to which i pointed with the additional include directory settings.
(I wonder how they got there, because normally i do NOT do 'make install' and prefer to set the needed 'include' and 'lib' directories manually in the MSVC configuration.)

It's working now, with full debug-info-creation('edit and continue' enabled) and 'inline' disabled.

I hope i did not waste too much of your time.:)
(I wasted two hours, combing through alconfig.h, almsvc.h, draw.inl, debug.h, base.h only to find nothing wrong with them. Then i clicked one of the allegro files in the MSVC 'external dependencies' tree of my project(because i was tired of reading them in 'notepad') and noticed that it showed a wrong drive letter. Then i immediately knew what was wrong.)

Neil Walker
Member #210
April 2000
avatar

Hello,
Is this a mistake in the documentation:

Quote:

MinGW: compiler (mingw-runtime, gcc, binutils).
GNU make.
Optional: GNU sed. Used by "make depend" and "fixdll.bat".
Optional: GNU sort (textutils). Used by "fixdll.bat".
Optional: w32api. See next section about details.

If you don't have w32api you don't get user32 (amongst others) so you can't compile allegro. So it's not optional, it's mandatory :)

After installing w32api allegro 4.2 makes the libs and dlls like a dream. Took about 1 minute. Well done everyone involved!

My only problem now is I have a similar problem to paul pridham except my directories are 8.3. This is what I get. Anyone any ideas?

Quote:

D:\DATA\allegro42>mingw32-make chm-docs
docs/makedoc.exe -ochm -html docs/chm/ahack.html docs/src/ahack._tx
....
docs/makedoc.exe -chm docs/chm/allegro.html docs/src/allegro._tx

writing 'docs/chm/allegro.hhp'
writing 'docs/chm/allegro.hhc'
writing 'docs/chm/allegro.hhk'
hhc docs/chm/allegro.hhp
process_begin: CreateProcess((null), hhc docs/chm/allegro.hhp, ...) failed.
make (e=2): The system cannot find the file specified.
mingw32-make: [docs/chm/allegro.chm] Error 2 (ignored)

D:\DATA\allegro42>

Neil.

Neil.
MAME Cabinet Blog / AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

ReyBrujo
Moderator
January 2001
avatar

Can you execute hhc docs/chm/allegro.hhp by hand?

--
RB
光子「あたしただ…奪う側に回ろうと思っただけよ」
Mitsuko's last words, Battle Royale

Neil Walker
Member #210
April 2000
avatar

No, I guess the hhc isn't installed with vs2005 (or I didn't select that option). I'll hunt it out.

My main problem though is (I did use fix msvc8), is every executable has a .manifest file created with it and deleting it causes the exe not to run with an error in finding msvcr80 (I don't know why, but msvc doesn't install the new runtime in the windows directory and you can't just copy it there.) I'm pretty certain that to not produce a manifest file you have to explicitly add /MANIFEST:NO flag to the linker.

This is the manifest it creates:
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
    </dependentAssembly>
  </dependency>
</assembly>


[edit]
Well, I haven't a fecking clue about vs2005. I created a test program and said 'no manifest'. No matter what I did it wouldn't work, and when I said 'yes manifest' it didn't create a manifest but the program ran!

Neil.

Neil.
MAME Cabinet Blog / AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

Peter Wang
Member #23
April 2000

Dennis: no problem.

Matthew Leverton
Supreme Loser
January 1999
avatar

Neil: for your own projects, you can embed the manifest via the properties at Configuration/Manifest Tool/Input and Output/Embed Manifest => yes. Whatever that does should be added to the Allegro makefile.

kentl
Member #2,905
November 2002

Has anyone else got the same problem as I have with MSVC 7.1 using pre-built binary?

Evert
Member #794
November 2000
avatar

What binary did you install?
There is no binary release (for MSVC) of 4.2 yet.

kentl
Member #2,905
November 2002

Ops! :-[ I am mixing things up I guess. I installed the binary release from here of Allegro 4.2.0 RC2.

Of course RC2 != final release, which this thread is about. Sorry for derailing the thread, I will come back and report when a binary release is available if the problem persists. Please ignore this and my previous post if this isn't contributing with anything on the topic.

Neil Walker
Member #210
April 2000
avatar

Quote:

Neil: for your own projects, you can embed the manifest via the properties at Configuration/Manifest Tool/Input and Output/Embed Manifest => yes. Whatever that does should be added to the Allegro makefile.

Ok. Not embedding the manifest produces this:
/out:..\debug\test.exe.manifest

And producing it does this:
/out:.\debug\test.exe.embed.manifest /notify_update

But checking the manual I think you need the /ALLOWISOLATION:NO linker flag. The documentation states:

/ALLOWISOLATION:NO indicates DLLs are loaded as if there was no manifest and causes the linker to set the IMAGE_DLLCHARACTERISTICS_NO_ISOLATION bit in the optional header's DllCharacteristics field.

/ALLOWISOLATION causes the operating system to do manifest lookups and loads.

/ALLOWISOLATION is the default.

Which bit of the make file do I update to add this flag? I guess the problem is then I need to distribute msvcr80.dll with every build as most people won't have it. Maybe making allegro on vc6 or vc7 is the better option?
Neil.

Neil.
MAME Cabinet Blog / AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

Evert
Member #794
November 2000
avatar

Quote:

But checking the manual I think you need the /ALLOWISOLATION:NO linker flag. The documentation states:

Can you provide an English translation?

Quote:

Which bit of the make file do I update to add this flag?

Line 207-ish of makefile.vc

The .manifest problem actually came up shortly before the release and there is a patch in to keep generated .manifest and .exe files together. But obviously, if we can get rid of the .manifest files that would be preferable.

Neil Walker
Member #210
April 2000
avatar

[edit]I've tried loads of things and can't get them to work so I've build it using VC6 and all is well. It probably needs someone who knows more than me to fix this problem.

I did notice one bug that happened with both MSVC and MINGW32, when you try and build using PROFILEMODE=1 DEBUGMODE=1 it tells you there is nothing to build and it doesn't do anything. All other modes work fine.

Another bug (or is it a feature) I've noticed is when you compile using mingw32 it regenerates all the files even if they've been built, e.g. I made the system then did a STATICLINK=1 and it make static versions of all the examples, etc. MSVC build only redoes the lib files. You have to prefix mingw-make with lib (e.g. mingw32-make lib STATICLINK=1)

Neil.

Quote:

Can you provide an English translation?

With .NET MS tried to fix DLL hell by creating manifests and assemblies (i.e. embedding all detailing relating to what libraries, versions, etc) to allow simple XCOPY deployment.

Looks like they've done kind of a similar thing with VC8 (in this version they've included .NET support into the C++ language).

We need a way of getting rid of all this crap and I think the above flag(s) are the ones required as it says I don't need a manifest. I've posted a message to a MS forum to see exactly what is required.

My only worry is the VS2005 settings need tuning a lot as I've been reading about loads of performance issues as various security settings, etc. are turned on by default.

Neil.

Neil.
MAME Cabinet Blog / AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

kentl
Member #2,905
November 2002

Quote:

There is no binary release (for MSVC) of 4.2 yet.

Just had to ask about this, is there any binary release planned for this version?

Evert
Member #794
November 2000
avatar

Why don't you read the announcement and find out?
;)

Neil Walker
Member #210
April 2000
avatar

If it helps I now have two complete binary releases for both MSVC and MinGW for all modes (except static profile - see my message above about why not).

I'll stick these up on my website tonight if anyone wants them.

Neil.

Neil.
MAME Cabinet Blog / AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

kentl
Member #2,905
November 2002

Evert said:

Why don't you read the announcement and find out? ;)

and he earlier said:

Binary packages for Windows and MacOS X will be available in the course of the week.

Double doh! :-[ :-[

Quote:

I'll stick these up on my website tonight if anyone wants them.

I greatly appreciate it. But the static profile would be nice to have as well, so I think that I'll wait personally and see if that file will be included as well.

Matthew Leverton
Supreme Loser
January 1999
avatar

Quote:

Has anyone else got the same problem as I have with MSVC 7.1 using pre-built binary?

Your problem is you need to change to a Win32 Application (not console).

Binaries are up:

http://www.allegro.cc/files/4.2.0/allegro-msvc71-4.2.0.zip (or .7z/.exe)

The others are available @ http://www.allegro.cc/files/.

Trezker
Member #1,739
December 2001
avatar

Got it through dev-c++ package manager. o_O
Haven't tested it though.

kentl
Member #2,905
November 2002

Thanks Matthew for the binary, and to everyone who contributed to this release. I got the mini example to compile now.

It still gets 10 warnings, should I ignore them?
The warnings

c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\allegro\internal\alconfig.h(378) : warning C4312: 'type cast' : conversion from 'unsigned int' to 'unsigned char *' of greater size
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\allegro\internal\alconfig.h(385) : warning C4312: 'type cast' : conversion from 'unsigned int' to 'unsigned char *' of greater size
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\allegro\inline\draw.inl(421) : warning C4312: 'type cast' : conversion from 'unsigned int' to 'unsigned char *' of greater size
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\allegro\inline\draw.inl(435) : warning C4312: 'type cast' : conversion from 'unsigned int' to 'unsigned char *' of greater size
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\allegro\inline\draw.inl(446) : warning C4312: 'type cast' : conversion from 'unsigned int' to 'unsigned short *' of greater size
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\allegro\inline\draw.inl(460) : warning C4312: 'type cast' : conversion from 'unsigned int' to 'unsigned short *' of greater size
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\allegro\inline\draw.inl(471) : warning C4312: 'type cast' : conversion from 'unsigned int' to 'unsigned short *' of greater size
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\allegro\inline\draw.inl(485) : warning C4312: 'type cast' : conversion from 'unsigned int' to 'unsigned short *' of greater size
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\allegro\inline\draw.inl(521) : warning C4312: 'type cast' : conversion from 'unsigned int' to 'unsigned int *' of greater size
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\allegro\inline\draw.inl(535) : warning C4312: 'type cast' : conversion from 'unsigned int' to 'unsigned int *' of greater size
Linking...

Neil Walker
Member #210
April 2000
avatar

If anyone wants another source of the msvc and mingw binaries I've got my own at:
http://retrospec.sgn.net/users/nwalker/allegro42_msvc_bin.rar
http://retrospec.sgn.net/users/nwalker/allegro42_mingw32.rar

In these is the full allegro release, minus the source code, so the setup, examples, demo, include/lib, tools, docs, etc. are there.

Matthew, how come your static release lib is bigger than your static debug lib?

Quote:

But the static profile would be nice to have as well

it's there in mine and the offical allegro.cc one.

Neil.

Neil.
MAME Cabinet Blog / AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

 1   2   3   4 


Go to: