Write your own Einstein@home screensaver

Oliver Behnke
Oliver Behnke
Moderator
Administrator
Joined: 4 Sep 07
Posts: 984
Credit: 25171438
RAC: 34

RE: I'm not sure the

Message 78178 in response to message 78166

Quote:
I'm not sure the conversion to CMake would make such a large project.

I'm pretty sure it will be, at least when we retry to retain all exiting functionality - and I really want that to be the case. I even doubt that CMake could offer all of that (e.g. download of dependencies) but I might be wrong in that respect.

Also, the differences in the existing Makefiles are sometime quite substantial so it'd be interesting to see if they could be consolidated at all. Given that they don't change that much I found it much easier to maintain them like this. But I'm always open to improvements!

Oliver

Einstein@Home Project

Oliver Behnke
Oliver Behnke
Moderator
Administrator
Joined: 4 Sep 07
Posts: 984
Credit: 25171438
RAC: 34

Well, I decided to drop the

Message 78179 in response to message 78178

Well, I decided to drop the xscript approach for the time being. Using a stock MinGW cross compiler seems the more sensible approach for the time being and all major distros should offer it anyway...

Cheers,
Oliver

Einstein@Home Project

Mike Hewson
Mike Hewson
Moderator
Joined: 1 Dec 05
Posts: 6588
Credit: 317115822
RAC: 367719

A Makefile.mingw has been

A Makefile.mingw has been pushed to GitHub.

Cheers, Mike.

I have made this letter longer than usual because I lack the time to make it shorter ...

... and my other CPU is a Ryzen 5950X :-) Blaise Pascal

Mike Hewson
Mike Hewson
Moderator
Joined: 1 Dec 05
Posts: 6588
Credit: 317115822
RAC: 367719

How much does a 'good' Mac

How much does a 'good' Mac cost ? :-)

Cheers, Mike.

I have made this letter longer than usual because I lack the time to make it shorter ...

... and my other CPU is a Ryzen 5950X :-) Blaise Pascal

Bernd Machenschalk
Bernd Machenschalk
Moderator
Administrator
Joined: 15 Oct 04
Posts: 4312
Credit: 250506519
RAC: 34601

RE: If a bmp is created on

Message 78182 in response to message 78177

Quote:
If a bmp is created on a Mac and viewed on a Mac, then no problem ...

This should be possible to do - I could convert this to something else (png) and back on the Mac. Should this work, or does this need to be done with specific tools?

BM

BM

Mike Hewson
Mike Hewson
Moderator
Joined: 1 Dec 05
Posts: 6588
Credit: 317115822
RAC: 367719

RE: RE: If a bmp is

Message 78183 in response to message 78182

Quote:
Quote:
If a bmp is created on a Mac and viewed on a Mac, then no problem ...

This should be possible to do - I could convert this to something else (png) and back on the Mac. Should this work, or does this need to be done with specific tools?

BM


Might work, I've done nothing special other than a spot of resizing some downloaded images of various formats using GIMP.

Cheers, Mike.

( edit ) I'd prefer if you save with an alpha channel - RGBA or BRGA - and not the color-indexed bmp type ie. I want the full 32 bits per pixel.

( edit ) It seems there has been some work over at libsdl.org on this, however a recent update/release on SDL_image - their image file loading library - states :

Quote:
... SDL_image framework on OSX is built for Intel 10.5 and newer ...


and we're building with 10.4, right ? Sad Panda .... :-(

I have made this letter longer than usual because I lack the time to make it shorter ...

... and my other CPU is a Ryzen 5950X :-) Blaise Pascal

Oliver Behnke
Oliver Behnke
Moderator
Administrator
Joined: 4 Sep 07
Posts: 984
Credit: 25171438
RAC: 34

RE: ( edit ) It seems there

Message 78184 in response to message 78183

Quote:

( edit ) It seems there has been some work over at libsdl.org on this, however a recent update/release on SDL_image - their image file loading library - states :

Quote:
... SDL_image framework on OSX is built for Intel 10.5 and newer ...

and we're building with 10.4, right ? Sad Panda .... :-(

Bernd, do you think we still need to care about 10.4 for the graphics app? Maybe I should gather some statistics about our Mac OS community...

Oliver

Einstein@Home Project

Oliver Behnke
Oliver Behnke
Moderator
Administrator
Joined: 4 Sep 07
Posts: 984
Credit: 25171438
RAC: 34

We got ~8k active Mac hosts

Message 78185 in response to message 78184

We got ~8k active Mac hosts right now, 525 of which run 10.4/Tiger, 26 still 10.3/Panther. The remaining users run, in ascending order, Leopard, Lion and Snow Leopard.

Oliver

Einstein@Home Project

Mike Hewson
Mike Hewson
Moderator
Joined: 1 Dec 05
Posts: 6588
Credit: 317115822
RAC: 367719

FWIW : what replaces the

FWIW : what replaces the functionality of SDL_loadBMP in this new SDL_image library 1.2.8 is :

SDL_Surface* IMG_LoadBMP_RW(SDL_RWops* src)

where SDL_RWops :

Quote:
... allowing you to use pointers to memory instead of files (though it can handle files too) ...


which is of extreme interest to me, as I want to statically embed the images anyway - plus the framework Resource class et al. Naturally that can then disconnect matters of underlying representation, or file location, extensions, etc ..... so you won't get any complaint from me. ;-)

For that matter this library supports 11 image formats ( all the common ones ) which we don't presently get. Anyhows, I'm off to bed ... :-)

Cheers, Mike.

I have made this letter longer than usual because I lack the time to make it shorter ...

... and my other CPU is a Ryzen 5950X :-) Blaise Pascal

Mike Hewson
Mike Hewson
Moderator
Joined: 1 Dec 05
Posts: 6588
Credit: 317115822
RAC: 367719

Ah, well I've just discovered

Ah, well I've just discovered that Oliver is listed as an OGLFT author/developer.

[ hence your earlier comment about sending changes upstream. Which either (a) I misinterpreted as meaning me, not you or (b) you are recruiting ..... ;-} :-0. ]

Great work BTW ! :-)

So, and please bear with me here, you may be able to help with the build.sh script error that I tracked to being emitted during execution of build_oglft_mingw() at line 628 :
[pre]cmake -DCMAKE_TOOLCHAIN_FILE="toolchain-linux-mingw.oglft.cmake" -DFREETYPE2_INCLUDE_DIR="$FREETYPE2_INCLUDE_DIR" -DFREETYPE2_LIBRARIES="$FREETYPE2_LIBRARIES" $ROOT/3rdparty/oglft >> $LOGFILE 2>&1 || failure[/pre]
for which build.log output is ( what follows is an edited version in annotated sections ) :

[pre]************************************
Starting new build!
Sat Feb 11 11:34:59 EST 2012
************************************
Checking previous build target...
Building win32 version:
Checking for previous build checkpoints...Preparing OGLFT...
Updating OGLFT...
Reverted 'CMakeLists.txt'
At revision 112.
Patching OGLFT...
patching file CMakeLists.txt
Building OGLFT...
CMake Warning (dev) in CMakeLists.txt:
No cmake_minimum_required command is present. A line of code such as

cmake_minimum_required(VERSION 2.8)

should be added at the top of the file. The version specified may be lower
if you wish to support older CMake versions for this project. For more
information run "cmake --help-policy CMP0000".
This warning is for project developers. Use -Wno-dev to suppress it.

-- Configuring done
CMake Warning (dev) at liboglft/CMakeLists.txt:23 (add_library):
Policy CMP0003 should be set before this line. Add code such as

if(COMMAND cmake_policy)
cmake_policy(SET CMP0003 NEW)
endif(COMMAND cmake_policy)

as early as possible but after the most recent call to
cmake_minimum_required or cmake_policy(VERSION). This warning appears
because target "oglft" links to some libraries for which the linker must
search:

glu32, opengl32

and other libraries with known full path:

/home/mike/projects/E@HSS/windows_build/graphicsframework/install/lib/libfreetype.a

CMake is adding directories in the second list to the linker search path in
case they are needed to find libraries from the first list (for backwards
compatibility with CMake 2.4). Set policy CMP0003 to OLD or NEW to enable
or disable this behavior explicitly. Run "cmake --help-policy CMP0003" for
more information.
This warning is for project developers. Use -Wno-dev to suppress it.[/pre]
as just after that, the build then falls over with ( compiler ? ) errors of this nature :

[pre]-- Generating done
-- Build files have been written to: /home/mike/projects/E@HSS/windows_build/graphicsframework/build/oglft
[100%] Building CXX object liboglft/CMakeFiles/oglft.dir/OGLFT.obj
/home/mike/projects/E@HSS/windows_build/graphicsframework/3rdparty/oglft/liboglft/OGLFT.cpp:23:20: iostream: No such file or directory
/home/mike/projects/E@HSS/windows_build/graphicsframework/3rdparty/oglft/liboglft/OGLFT.cpp:24:19: iomanip: No such file or directory
In file included from /home/mike/projects/E@HSS/windows_build/graphicsframework/3rdparty/oglft/liboglft/OGLFT.cpp:26:
/home/mike/projects/E@HSS/windows_build/graphicsframework/build/oglft/OGLFT.h:38:17: cmath: No such file or directory
/home/mike/projects/E@HSS/windows_build/graphicsframework/build/oglft/OGLFT.h:39:15: map: No such file or directory
/home/mike/projects/E@HSS/windows_build/graphicsframework/build/oglft/OGLFT.h:40:16: list: No such file or directory
/home/mike/projects/E@HSS/windows_build/graphicsframework/build/oglft/OGLFT.h:41:18: vector: No such file or directory[/pre]
.
.
...... goes on like that for quite a while .......
.
.
[pre]/home/mike/projects/E@HSS/windows_build/graphicsframework/3rdparty/oglft/liboglft/OGLFT.cpp:3756: error: `texobj' was not declared in this scope
/home/mike/projects/E@HSS/windows_build/graphicsframework/3rdparty/oglft/liboglft/OGLFT.cpp:3756: error: `glyph_texobjs_' was not declared in this scope
/home/mike/projects/E@HSS/windows_build/graphicsframework/3rdparty/oglft/liboglft/OGLFT.cpp:3811: error: `glyph_texobjs_' was not declared in this scope
make[2]: *** [liboglft/CMakeFiles/oglft.dir/OGLFT.obj] Error 1
make[1]: *** [liboglft/CMakeFiles/oglft.dir/all] Error 2
make: *** [all] Error 2
************************************
Error detected! Stopping build!
Sat Feb 11 11:35:04 EST 2012
************************************[/pre]

that is, the standard C++ headers ( and more besides ) are apparently unknown at that point. Now I believe the CMakeLists.txt file in question is the one within $ROOT/3rdparty/oglft/liboglft as it has this content [ whole file listed here, with the suspect line 23 in red, & note author id :-) :-) ]

[pre]# $Id: CMakeLists.txt 112 2008-10-06 08:36:48Z brevilo $
file( GLOB sources *.cpp )
if( DESIRED_QT_VERSION EQUAL 3)
include_directories( ${QT_INCLUDE_DIR} )
elseif( DESIRED_QT_VERSION EQUAL 4 )
include_directories( ${QT_QTCORE_INCLUDE_DIR} )
include_directories( ${QT_QTGUI_INCLUDE_DIR} )
endif( DESIRED_QT_VERSION EQUAL 3)
include_directories(
${FREETYPE2_INCLUDE_DIR}
${FREETYPE2_INCLUDE_DIR}/freetype2
)
include_directories( ${PROJECT_BINARY_DIR} )
configure_file(
"${CMAKE_CURRENT_SOURCE_DIR}/OGLFT.h.cmake"
"${PROJECT_BINARY_DIR}/OGLFT.h"
)

if( WIN32 )
add_definitions( -DOGLFT_BUILD )
endif( WIN32 )[/pre]
[pre]add_library( oglft STATIC ${sources} )[/pre][pre]target_link_libraries(
oglft
${FREETYPE2_LIBRARIES}
${OPENGL_LIBRARIES}
)

install(
TARGETS oglft
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
COMPONENT libraries
)

install(
FILES "${PROJECT_BINARY_DIR}/OGLFT.h"
DESTINATION include/OGLFT
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
COMPONENT headers
)[/pre]
[ this file is auto-generated anew, or re-appears in the directory at least, with each script run, presumably based upon some higher CMake abilities .... the autohell avoiding ones ? ]

Whew!!! :-)

Now :

- is the CMake warning about this CMakeLists.txt file relevant to the subsequent 'No such file or directory' errors ?

( if so, this would suggest some deprecation on behalf of a later version of CMake than that which it was originally written for ?? )

- is it CMake ( 'cos I don't see a gcc/g++ command line in the build.log, but it still might be from them coming back out via CMake ) the tool reporting those 'No such file or directory' errors ?

- if not the above, then I will look toward my path settings, but noting that the mingw builds of SDL, Freetype2 and libxml2 are fine.

Cheers, Mike.

I have made this letter longer than usual because I lack the time to make it shorter ...

... and my other CPU is a Ryzen 5950X :-) Blaise Pascal

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.