![]() |
|
Newest versions not easy to set up |
Mark Oates
Member #1,146
March 2001
![]() |
c:\Users\Mark\Desktop\allegro\build>cmake .. -G "Visual Studio 10" CMake Error: Error: generator : Visual Studio 10 Does not match the generator used previously: Visual Studio 9 2008 Either remove the CMakeCache.txt file or choose a different binary directory. c:\Users\Mark\Desktop\allegro\build> Ok, erasing the whole allegro folder because I don't know what other droppings are left in there. And re-extracting from the zip... making build folder and... c:\Users\Mark\Desktop\allegro\build>cmake .. -G "Visual Studio 10" -- Check for working C compiler using: Visual Studio 10 -- Check for working C compiler using: Visual Studio 10 -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working CXX compiler using: Visual Studio 10 -- Check for working CXX compiler using: Visual Studio 10 -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Using VCINSTALLDIR: C:/Program Files (x86)/Microsoft Visual Studio 10.0/VC -- Allowing MSVC to use SSE instructions -- Check if the system is big endian -- Searching 16 bit integer -- Looking for sys/types.h -- Looking for sys/types.h - found -- Looking for stdint.h -- Looking for stdint.h - found -- Looking for stddef.h -- Looking for stddef.h - found -- Check size of unsigned short -- Check size of unsigned short - done -- Using unsigned short -- Check if the system is big endian - little endian -- Looking for include files ALLEGRO_HAVE_DIRENT_H -- Looking for include files ALLEGRO_HAVE_DIRENT_H - not found. -- Looking for include files ALLEGRO_HAVE_INTTYPES_H -- Looking for include files ALLEGRO_HAVE_INTTYPES_H - not found. -- Looking for include files ALLEGRO_HAVE_LINUX_JOYSTICK_H -- Looking for include files ALLEGRO_HAVE_LINUX_JOYSTICK_H - not found. -- Looking for include files ALLEGRO_HAVE_STDBOOL_H -- Looking for include files ALLEGRO_HAVE_STDBOOL_H - not found. -- Looking for include files ALLEGRO_HAVE_STDINT_H -- Looking for include files ALLEGRO_HAVE_STDINT_H - found -- Looking for include files ALLEGRO_HAVE_SYS_IO_H -- Looking for include files ALLEGRO_HAVE_SYS_IO_H - not found. -- Looking for include files ALLEGRO_HAVE_SYS_STAT_H -- Looking for include files ALLEGRO_HAVE_SYS_STAT_H - found -- Looking for include files ALLEGRO_HAVE_SYS_TIME_H -- Looking for include files ALLEGRO_HAVE_SYS_TIME_H - not found. -- Looking for include files ALLEGRO_HAVE_TIME_H -- Looking for include files ALLEGRO_HAVE_TIME_H - found -- Looking for include files ALLEGRO_HAVE_SYS_UTSNAME_H -- Looking for include files ALLEGRO_HAVE_SYS_UTSNAME_H - not found. -- Looking for include files ALLEGRO_HAVE_SYS_TYPES_H -- Looking for include files ALLEGRO_HAVE_SYS_TYPES_H - found -- Looking for include files ALLEGRO_HAVE_SOUNDCARD_H -- Looking for include files ALLEGRO_HAVE_SOUNDCARD_H - not found. -- Looking for include files ALLEGRO_HAVE_SYS_SOUNDCARD_H -- Looking for include files ALLEGRO_HAVE_SYS_SOUNDCARD_H - not found. -- Looking for include files ALLEGRO_HAVE_MACHINE_SOUNDCARD_H -- Looking for include files ALLEGRO_HAVE_MACHINE_SOUNDCARD_H - not found. -- Looking for include files ALLEGRO_HAVE_LINUX_SOUNDCARD_H -- Looking for include files ALLEGRO_HAVE_LINUX_SOUNDCARD_H - not found. -- Looking for include files ALLEGRO_HAVE_OSATOMIC_H -- Looking for include files ALLEGRO_HAVE_OSATOMIC_H - not found. -- Looking for getexecname -- Looking for getexecname - not found -- Looking for mkstemp -- Looking for mkstemp - not found -- Looking for mmap -- Looking for mmap - not found -- Looking for mprotect -- Looking for mprotect - not found -- Looking for sched_yield -- Looking for sched_yield - not found -- Looking for stricmp -- Looking for stricmp - found -- Looking for strlwr -- Looking for strlwr - found -- Looking for strupr -- Looking for strupr - found -- Looking for sysconf -- Looking for sysconf - not found -- Looking for fseeko -- Looking for fseeko - not found -- Looking for ftello -- Looking for ftello - not found -- Check size of _Bool -- Check size of _Bool - failed -- Performing Test ALLEGRO_HAVE_PROCFS_ARGCV -- Performing Test ALLEGRO_HAVE_PROCFS_ARGCV - Failed -- Performing Test ALLEGRO_HAVE_SV_PROCFS_H -- Performing Test ALLEGRO_HAVE_SV_PROCFS_H - Failed -- Performing Test ALLEGRO_HAVE_VA_COPY -- Performing Test ALLEGRO_HAVE_VA_COPY - Failed -- Check if constructors are supported - no -- Found DINPUT: C:/Program Files (x86)/Microsoft SDKs/Windows/v7.0A/Include -- Could NOT find DXGUID (missing: DXGUID_LIBRARY) CMake Error at CMakeLists.txt:598 (message): Windows port requires DXGuid (not found). -- Configuring incomplete, errors occurred! c:\Users\Mark\Desktop\allegro\build> Apparently "Windows port requires DXGuid (not found)". I'm assuming all the other "not founds" aren't required to build vanilla. [edit] sorry, I had copy/pasted the whole terminal output. Edited to only include relevant output. -- |
Thomas Fjellstrom
Member #476
June 2000
![]() |
I've been very impressed with the latest KDevelop release. I've pretty much switched to it (and I hate IDEs). Its not perfect, but it is very nice. I think it might run on windows if you're interested. Then you can have a good IDE and an easy to use Allegro -- |
Matthew Leverton
Supreme Loser
January 1999
![]() |
Thomas Fjellstrom said: Isn't that supposed to not work due to CMake making broken VS 10 projects? It builds Allegro, but everything is named wrong. I was going to spoil his fun after he thought it was working. Mark Oates said: Windows port requires DXGuid (not found) Probably found in the DirectX SDK. |
Thomas Fjellstrom
Member #476
June 2000
![]() |
Matthew Leverton said: Probably found in the DirectX SDK [www.microsoft.com]. It found DInput, which is also in DX... -- |
Matthew Leverton
Supreme Loser
January 1999
![]() |
That comes in the Platform SDK (and perhaps DX SDK too). |
Mark Oates
Member #1,146
March 2001
![]() |
Thomas Fjellstrom said: I've been very impressed with the latest KDevelop release. Now, "build allegro" is "learn a whole new IDE" Matthew Leverton said: It builds Allegro, but everything is named wrong. I was going to spoil his fun after he thought it was working. I'm really enjoying this Quote: Probably found in the DirectX SDK [www.microsoft.com]. 8 minutes remaining on a 572MB file, which will hopefully contain a file I need. This is awesome -- |
Thomas Fjellstrom
Member #476
June 2000
![]() |
Mark Oates said: Now "build allegro" is "learn an whole new IDE" No. It was just a suggestion. Quote: 8 minutes remaining on a 572MB file, which will hopefully contain a file I need. This is awesome Not our fault you use MSVC -- |
Dario ff
Member #10,065
August 2008
![]() |
Mark Oates said: 8 minutes remaining on a 572MB file, which will hopefully contain a file I need. This is awesome
You are complaining about 8 minutes? You know I'd normally need an hour to do something like that. TranslatorHack 2010, a human translation chain in a.cc. |
MiquelFire
Member #3,110
January 2003
![]() |
HOLY! 500+MB download for DirectX SDK? I didn't know it was THAT big. I knew the Windows SDK was big (I think it reaches the 1GB point, if not over) --- |
Mark Oates
Member #1,146
March 2001
![]() |
Dario ff said: You are complaining about 8 minutes? You know I'd normally need an hour to do something like that. Well, I'm not complaining about the 8 minutes part. AdventuresOK. So I downloaded and installed the DirectX SDK and ran cmake again but it produced the same errors. The SDK installed into the folder "Microsoft DirectX SDK (June 2010") while the cbuild appears to be looking in the "Microsoft SDK" folder. So I'm going to copy the dxguid.lib from the previous folder (there is only the dxguide.lib, no dxguid.h file so hopefully that doesn't screw me) and I'm just going to... drop it in the same folder where it found DINPUT (?). And... deleting the last build attempt in case there are bad droppings... ...creating the build folder... and... Hey! It worked! Ok. Before I do anything else, I'm going to copy all the files in the build/ folder. Because something else is going to go wrong when I try and run this ALL_BUILD, or INSTALL, or which ever one and it might leave droppings... (this is the part where paranoia sets in I'm going to open ALL_BUILD and try to build... And I cannot build the solution unless the allegro source is beneath the build folder... so.... copying the whole allegro folder and... Build > Build Solution... It's working! ErrorsEnd result is Build: 98 succeeded, 2 failed, 0 up-to-date, 1 skipped I don't know which ones failed, but there are libs and dlls in the lib folder. Though the dlls are named "allegro_color-4.lib" for example. There are 12 lib files and only 10 dll files. allegro-4.lib (should be allegro-4.9.lib) is missing. It appears that allegro and allegro_audio did not compile. OK, when trying to build just allegro (instead of Build Solution), I get the following errors: 1>------ Build started: Project: allegro, Configuration: RelWithDebInfo Win32 ------ 1> Creating library C:/Users/Mark/Desktop/allegro/build/lib/RelWithDebInfo/allegro.lib and object C:/Users/Mark/Desktop/allegro/build/lib/RelWithDebInfo/allegro.exp 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_Button 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_POV 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_POV 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_Slider 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_Slider 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_RzAxis 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_RzAxis 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_RyAxis 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_RyAxis 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_RxAxis 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_RxAxis 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_ZAxis 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_ZAxis 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_YAxis 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_YAxis 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_XAxis 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_XAxis 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _IID_IDirectInputDevice8A 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _IID_IDirectInput8A 1>C:\Users\Mark\Desktop\allegro\build\lib\RelWithDebInfo\allegro-4.dll : fatal error LNK1120: 11 unresolved externals ========== Build: 0 succeeded, 1 failed, 1 up-to-date, 0 skipped ========== The other one that didn't build is allegro_audio (which also contains what look like DirectX errors) 1>------ Build started: Project: allegro, Configuration: RelWithDebInfo Win32 ------ 1> Creating library C:/Users/Mark/Desktop/allegro/build/lib/RelWithDebInfo/allegro.lib and object C:/Users/Mark/Desktop/allegro/build/lib/RelWithDebInfo/allegro.exp 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_Button 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_POV 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_POV 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_Slider 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_Slider 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_RzAxis 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_RzAxis 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_RyAxis 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_RyAxis 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_RxAxis 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_RxAxis 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_ZAxis 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_ZAxis 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_YAxis 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_YAxis 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _GUID_XAxis 1>dinput8.lib(dilib3.obj) : error LNK2001: unresolved external symbol _GUID_XAxis 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _IID_IDirectInputDevice8A 1>wjoydxnu.obj : error LNK2001: unresolved external symbol _IID_IDirectInput8A 1>C:\Users\Mark\Desktop\allegro\build\lib\RelWithDebInfo\allegro-4.dll : fatal error LNK1120: 11 unresolved externals 2>------ Build started: Project: allegro_audio, Configuration: RelWithDebInfo Win32 ------ 2> Creating library C:/Users/Mark/Desktop/allegro/build/lib/RelWithDebInfo/allegro_audio.lib and object C:/Users/Mark/Desktop/allegro/build/lib/RelWithDebInfo/allegro_audio.exp 2>dsound.obj : error LNK2001: unresolved external symbol _IID_IDirectSoundBuffer8 2>C:\Users\Mark\Desktop\allegro\build\lib\RelWithDebInfo\allegro_audio-4.dll : fatal error LNK1120: 1 unresolved externals ========== Build: 0 succeeded, 2 failed, 1 up-to-date, 0 skipped ========== [edit] I'm copying dinput8.lib from the directx install folder, and putting it in the msvc libs folder. Didn't make a difference. There is already a dinput8.lib located in the path where it was looking (which was not in msvc's lib folder). -- |
Matthew Leverton
Supreme Loser
January 1999
![]() |
Mark Oates said: The SDK installed into the folder "Microsoft DirectX SDK (June 2010") while the cbuild appears to be looking in the "Microsoft SDK" folder Adding June/lib/x86 to your %LIB% and June/include to your %INCLUDE% should do the trick. SET LIB=June\lib\x86;%LIB%;c:\mylibs SET INCLUDE=June\include;%LIB%;c:\mylibs Something like that. It searches in order, so I'd put the new DX first. Put that in a .bat file. Get your c:\mylibs dependencies all built. Then building each version of Allegro 4.9 isn't so bad. |
Dario ff
Member #10,065
August 2008
![]() |
Just a little motivation. TranslatorHack 2010, a human translation chain in a.cc. |
Mark Oates
Member #1,146
March 2001
![]() |
How do I build an MSVC project from within the console? Or, how do I set LIB and INCLUDE from within the IDE so it builds with those vars SET. I created a bat file with these two lines: SET LIB=c:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\lib\x86;%LIB%;c:\mylibs SET INCLUDE=c:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\include;%LIB%;c:\mylibs Though I'm not sure about where I should be running it, if running it from the VS Command Prompt would affect the current project environment, etc. Of my guesses, building allegro or allegro_audio returned the same errors. Dario ff said: Just a little motivation. Nice. I like the fitting analogy of how that cat could be falling to his death. -- |
ImLeftFooted
Member #3,935
October 2003
![]() |
Thomas Fjellstrom said: Why are so many people so afraid of new things? Because one time we tried something new and it went bad. Now we know that trying new things leads to bad. |
Thomas Fjellstrom
Member #476
June 2000
![]() |
http://en.wikipedia.org/wiki/Correlation_does_not_imply_causation Especially for one sample. -- |
ImLeftFooted
Member #3,935
October 2003
![]() |
One time someone linked to a fake wikipedia article. Now I can't know if yours is true, so I will ignore it. |
Matthew Leverton
Supreme Loser
January 1999
![]() |
Mark Oates said: How do I build an MSVC project from within the console? Or, how do I set LIB and INCLUDE from within the IDE so it builds with those vars SET. You don't do either. After cmake creates the MSVC project, you just open it up. All the locations are hard-coded. You can run the batch file from the console the next time you need to build Allegro. It is possible to add include/lib folders to your IDE's search path, which is useful when you are building your own projects. Just search the menus to find out where to do it. |
Arthur Kalliokoski
Second in Command
February 2005
![]() |
Dustin Dettmer said: Because one time we tried something new and it went bad. Now we know that trying new things leads to bad. I used the mind-reading module of Allegro 5 to have my sig ready for this. They all watch too much MSNBC... they get ideas. |
Evert
Member #794
November 2000
![]() |
Dario ff said: The devs might start making easier tutorials when the amount of dependencies needed is defined, and even if CMake is going to be used as the final build system.
The dependencies are very unlikely to change at this point. We will not be changing the build system. |
Mark Oates
Member #1,146
March 2001
![]() |
Matthew Leverton said: You don't do either. After cmake creates the MSVC project, you just open it up. All the locations are hard-coded. Ah, I see. That makes sense. OK, so I created a batch file and ran it again before re-cmaking the msvc project files that I need to build allegro. This time it was able to build allegro and allegro_audio but for some reason did not build allegro_ttf and allegro_physfs. It makes sense because the dependencies are required, but why was it able to build it before? Odd. Also, is there a complete list of dependencies somewhere that I can reference? So here's the general procedure (please check my work):
-- |
Dario ff
Member #10,065
August 2008
![]() |
In Readme.txt
Library dependencies ==================== Allegro is divided into a core library and a number of addon libraries. The core library depends on certain libraries to function. If you don't have those, nothing will work. These are required for the core library: - DirectX SDK (Windows only) You can get this for MSVC from the Microsoft web site (large download). Alternatively, smaller downloads for MSVC and MinGW are available here: <http://trent.gamblin.ca/dx/> Some of those are originally from: <http://www.g-productions.net/list.php?c=files_devpak> - X11 development libraries (Linux/Unix only) The libraries will be part of you Linux distribution, but you may have to install them explicitly. - OpenGL development libraries (except on Windows) The addons, too, may require additional libraries. Since the addons are strictly optional, they are not required to build Allegro, but a lot of functionality may be disabled if they are not present. Windows users may find some precompiled binaries from <http://gnuwin32.sourceforge.net/>. You need to get the `bin` and `lib` packages. The `bin` packages contain DLLs, and the `lib` packages contain the headers and import libraries. Mac users may find some dependencies in Fink or MacPorts. <http://www.finkproject.org/> and <http://www.macports.org/> Linux users likely have all the dependencies already, except PhysicsFS and DUMB. If your distribution uses separate development packages, they will need to be installed. The packages are probably named *-dev or *-devel. These are the dependencies required for the addons: - libpng and zlib, for PNG image support (Unix and MinGW only) Home page: <http://www.libpng.org/pub/png/> Windows binaries: <http://gnuwin32.sourceforge.net/packages/libpng.htm> - libjpeg, for JPEG image support (Unix and MinGW only) Home page: <http://www.ijg.org/> Windows binaries: <http://gnuwin32.sourceforge.net/packages/jpeg.htm> - FreeType, for TrueType font support. Home page: <http://freetype.sourceforge.net/> Window binaries: <http://gnuwin32.sourceforge.net/packages/freetype.htm> - Ogg Vorbis, a free lossy audio format. (libogg, libvorbis, libvorbisfile) Home page: <http://www.vorbis.com/> - FLAC, a free lossless audio codec. (libFLAC, libogg) Home page: <http://flac.sourceforge.net/> - DUMB, an IT, XM, S3M and MOD player library. (libdumb) Home page: <http://dumb.sourceforge.net/> - OpenAL, a 3D audio API. The audio addon can use OpenAL, although the 3D capabilities aren't used. <http://kcat.strangesoft.net/openal.html> On Mac OS X, OpenAL is *required* but should come with the OS anyway. On Linux and Windows, OpenAL will only be used if you request it, hence there is no reason to install it specifically. - PhysicsFS, provides access to archives, e.g. .zip files. Home page: <http://icculus.org/physfs/> On Windows it may be a pain to place all these libraries such that they can be found. Please see the README_cmake.txt section on the "deps subdirectory" when the time comes.
Evert said: The dependencies are very unlikely to change at this point. We will not be changing the build system. That's good news I guess. TranslatorHack 2010, a human translation chain in a.cc. |
Mark Oates
Member #1,146
March 2001
![]() |
Dario ff said: In Readme.txt Crap, I remember that now. OK. It appears I was able to build vanilla allegro. The exe is looking for the dll named allegro-4.dll and not allegro-4.9.dll. I had thought that the filename of the file created was the only problem. Though using allegro-4.dll seems to work fine. The addon header files seem to be located in different folders, (ala #include <allegro5/allegro_color.h> is not there) so needed to copy them from the allegro/addon/* folders into the allegro/include/ folder. I'm placing the allegro libs in a folder separate from the MSVC folder and including them from a different location (as not to link the pre-built binaries I downloaded from allegro5.org that are already in the MSVC foler). And it seems to work! Now that that's all done... time to create my first dependency. -- |
Matthew Leverton
Supreme Loser
January 1999
![]() |
Mark Oates said: The exe is looking for the dll named allegro-4.dll and not allegro-4.9.dll. I had thought that the filename of the file created was the only problem. That's the CMake MSVC 10 bug. Quote: The addon header files seem to be located in different folders, (ala #include <allegro5/allegro_color.h> is not there) so needed to copy them from the allegro/addon/* folders into the allegro/include/ folder. Yes, that's another annoying CMake build issue on MSVC. Quote: I'm placing the allegro libs in a folder separate from the MSVC folder and including them from a different location That's a good habit to get into. I never put things into my MSVC lib folder. |
Thomas Fjellstrom
Member #476
June 2000
![]() |
Matthew Leverton said: Yes, that's another annoying CMake build issue on MSVC. Has this bug been reported to CMake? Or should we think about doing so? -- |
Matthew Leverton
Supreme Loser
January 1999
![]() |
Thomas Fjellstrom said: Has this bug been reported to CMake? Or should we think about doing so? I haven't tested this, but if you set CMAKE_INSTALL_PREFIX it might work. As it is now, I think it's trying to install to "Program Files/MSVC" which is dumb and doesn't work anyway. Edit: Looks like it might work, but: ------ Build started: Project: INSTALL, Configuration: RelWithDebInfo Win32 ------ -- Install configuration: "RelWithDebInfo" -- Installing: C:/allegro/install/lib/allegro.lib CMake Error at cmake_install.cmake:38 (FILE): file INSTALL cannot find "C:/allegro/4.9/build/lib/RelWithDebInfo/allegro-4.9.dll". C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: The command ""C:\Program Files\CMake 2.8\bin\cmake.exe" -DBUILD_TYPE=RelWithDebInfo -P cmake_install.cmake C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: :VCEnd" exited with code 1. ========== Build: 0 succeeded, 2 failed, 93 up-to-date, 0 skipped ==========
It cannot find "C:/allegro/4.9/build/lib/RelWithDebInfo/allegro-4.9.dll" because it was stupid and named it "allegro-4.dll". |
|
|