Comments (14)
D:\Work\Library\fog\Fog\Scripts>mkdir ..\Build
子目录或文件 ..\Build 已经存在。
D:\Work\Library\fog\Fog\Scripts>cd ..\Build
D:\Work\Library\fog\Fog\Build>cmake .. -G"MinGW Makefiles" -DCMAKE_BUILD_TYPE=Re
lease -DFOG_BUILD_BENCH=True -DFOG_BUILD_EXAMPLES=True
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: D:/MinGW/bin/gcc.exe
-- Check for working C compiler: D:/MinGW/bin/gcc.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: D:/MinGW/bin/g++.exe
-- Check for working CXX compiler: D:/MinGW/bin/g++.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
== ====================================================
== [Fog-Framework - Normal Build (Release)]
== ====================================================
-- Initializing FOG_DIR=D:/Work/Library/fog/Fog
-- Looking for include files CMAKE_HAVE_PTHREAD_H
-- Looking for include files CMAKE_HAVE_PTHREAD_H - not found.
-- Found Threads: TRUE
-- Performing Test FOG_CC_HAS_FMERGE_ALL_CONSTANTS
-- Performing Test FOG_CC_HAS_FMERGE_ALL_CONSTANTS - Success
-- Performing Test FOG_CC_HAS_FNO_KEEP_STATIC_CONSTS
-- Performing Test FOG_CC_HAS_FNO_KEEP_STATIC_CONSTS - Success
-- Performing Test FOG_CC_HAS_FLTO
-- Performing Test FOG_CC_HAS_FLTO - Failed
-- Performing Test FOG_CC_HAS_WINLINE
-- Performing Test FOG_CC_HAS_WINLINE - Success
-- Performing Test FOG_CC_HAS_WNO_ENUM_COMPARE
-- Performing Test FOG_CC_HAS_WNO_ENUM_COMPARE - Success
-- 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
-- Check size of void*
-- Check size of void* - done
-- Check size of int
-- Check size of int - done
-- Check size of long
-- Check size of long - done
-- Check size of wchar_t
-- Check size of wchar_t - done
-- Looking for include files FOG_HAVE_FLOAT_H
-- Looking for include files FOG_HAVE_FLOAT_H - found
-- Looking for include files FOG_HAVE_LIMITS_H
-- Looking for include files FOG_HAVE_LIMITS_H - found
-- Looking for include files FOG_HAVE_STDARG_H
-- Looking for include files FOG_HAVE_STDARG_H - found
-- Looking for include files FOG_HAVE_STDINT_H
-- Looking for include files FOG_HAVE_STDINT_H - found
-- Configuring Fog/Core
Adding optimized file Fog/Core/Tools/List_SSE2.cpp (SSE2)
-- Configuring Fog/G2d
Adding optimized file Fog/G2d/Geometry/PathClipper_SSE.cpp (SSE)
Adding optimized file Fog/G2d/Geometry/Transform_SSE.cpp (SSE)
Adding optimized file Fog/G2d/Geometry/PathClipper_SSE2.cpp (SSE2)
Adding optimized file Fog/G2d/Geometry/Transform_SSE2.cpp (SSE2)
Adding optimized file Fog/G2d/Imaging/Filters/FeColorMatrix_SSE.cpp (SSE)
-- Looking for include files FOG_HAVE_LIBJPEG
-- Looking for include files FOG_HAVE_LIBJPEG - found
-- Looking for include files FOG_HAVE_LIBPNG
-- Looking for include files FOG_HAVE_LIBPNG - found
Adding optimized file Fog/G2d/Painting/RasterPaintEngine_SSE2.cpp (SSE2)
Adding optimized file Fog/G2d/Source/Color_SSE2.cpp (SSE2)
Adding optimized file Fog/G2d/Tools/Region_SSE2.cpp (SSE2)
-- Configuring Fog/UI
-- Configuring Fog/Svg
-- Configuring done
-- Generating done
-- Build files have been written to: D:/Work/Library/fog/Fog/Build
D:\Work\Library\fog\Fog\Build>cd ..\Scripts
D:\Work\Library\fog\Fog\Scripts>pause
请按任意键继续. . .
this is configure output.
Original comment by [email protected]
on 12 Oct 2011 at 5:44
from fog.
Hello,
this is similar to Issue #35. I fixed some errors today, but not all of them.
Marking as accepted, will be fixed soon
Original comment by kobalicek.petr
on 12 Oct 2011 at 6:14
from fog.
Original comment by kobalicek.petr
on 12 Oct 2011 at 6:14
- Changed state: Accepted
from fog.
Thank you very much! I have compiled it with modified some code, mainly in
CompileGcc.h, I commented the __attribute__((always_inline)) and
__attribute__((cdecl)),but it's still a lot of warnings (all of them are
inline fault), and I modified the CMakeLists.txt It's very strange that some of
Header can not use MMX/SSE2, in CMakeLists.txt I found that you added them into
source files' property, but it still can not pass compile, so I added -mmmx
-msse -msse2 to all file (CMAKE_CXX_FLAGS) :(
Hopes these information could help you, thx :)
Original comment by [email protected]
on 12 Oct 2011 at 9:22
from fog.
Temporarily fixed by r777, but the code generated by MinGW is larger (About
60%) and slow (about 10-15%).
Original comment by kobalicek.petr
on 13 Oct 2011 at 3:06
from fog.
but, my other modules is compiled with mingw:( and the fog don't export
portable c interface, i can only c++ interface that can not cross compilers.
is using a c interface a plan in your todo list?
thank you anyway:)
�� 2011-10-13 ����11:07�� <[email protected]>���
Original comment by [email protected]
on 13 Oct 2011 at 3:16
from fog.
There is a C like interface, but it's not designed to work with a pure C code
at this moment. It's designed mainly as a large virtual function table, where
the base functions can be replaced by optimized ones (another effect of this is
that many simple classes are not exported). Another idea is to simplify
bindings to other programming languages that can accept function & function
prototype declaration.
So you can use the slower MinGW version at this time and hope that these errors
will be fixed by MinGW team some day. BTW: Why not to use MSVC to compile all
your modules? It produces really good binaries;)
Original comment by kobalicek.petr
on 13 Oct 2011 at 4:02
from fog.
thank you for your explaining :)
i want to write a bindings to lua language, but msvc has issues about
msvcrt.dll :(
maybe a simple improve can change these imcompatibles between compilers and
use c++ interface with different compilers, that is just export a extern
"c" function to initialze the virtual function table, and all your shell
class use functions in table, so any programs use fog can just link with
this c named function, without any other dependencies. so you can compile
your program with mingw or any other compilers, but link with fog compiled
with msvc, with a single symbol, maybe named _fog_api in fog.dll's symbol
table.
�� 2011-10-14 ����12:02�� <[email protected]>���
Original comment by [email protected]
on 13 Oct 2011 at 4:46
from fog.
I have used MSVC build Fog.dll and MinGW successfully. I just modify the Api.h
file, changed this line:
extern FOG_API Api _api;
to this:
extern "C" FOG_API Api _api;
maybe you can think about this change, this makes different binary can work
together :-)
Original comment by [email protected]
on 14 Oct 2011 at 5:59
from fog.
This is good point.
I think that fog_api would be better and I'm going to change this early. It's
good to know that it's possible to use mixture of compilers.
Original comment by kobalicek.petr
on 14 Oct 2011 at 12:20
from fog.
The fog_api is now exported, thanks!
Original comment by kobalicek.petr
on 16 Oct 2011 at 7:09
- Changed state: Fixed
from fog.
Sorry, But, I still can't compile the MinGW version. It seems that some file
need MMX support, but you don't add -mmmx flags to these files' command line.
D:\Work\Library\fog\Fog\Build>make
Scanning dependencies of target Fog
[ 0%] Building CXX object CMakeFiles/Fog.dir/Fog/Core/Collection/Util.cpp.obj
In file included from D:/Work/Library/fog/Fog/Fog/Core/C++/IntrinMMX.h:12:0,
from D:/Work/Library/fog/Fog/Fog/Core/C++/StdHeaders.h:35,
from D:/Work/Library/fog/Fog/Fog/Core/C++/Base.h:19,
from D:/Work/Library/fog/Fog/Fog/Core/Global/Global.h:11,
from D:/Work/Library/fog/Fog/Fog/Core/Collection/Util.h:11,
from D:\Work\Library\fog\Fog\Fog\Core\Collection\Util.cpp:12:
d:\mingw\bin\../lib/gcc/i686-pc-mingw32/4.6.1/include/mmintrin.h:32:3: error: #e
rror "MMX instruction set not enabled"
In file included from D:/Work/Library/fog/Fog/Fog/Core/C++/StdHeaders.h:35:0,
from D:/Work/Library/fog/Fog/Fog/Core/C++/Base.h:19,
from D:/Work/Library/fog/Fog/Fog/Core/Global/Global.h:11,
from D:/Work/Library/fog/Fog/Fog/Core/Collection/Util.h:11,
from D:\Work\Library\fog\Fog\Fog\Core\Collection\Util.cpp:12:
D:/Work/Library/fog/Fog/Fog/Core/C++/IntrinMMX.h:128:3: error: '__m64' does not
name a type
make[2]: *** [CMakeFiles/Fog.dir/Fog/Core/Collection/Util.cpp.obj] Error 1
make[1]: *** [CMakeFiles/Fog.dir/all] Error 2
make: *** [all] Error 2
Original comment by [email protected]
on 20 Oct 2011 at 3:41
from fog.
Ok, reopening, I'm going to look more closely at this issue
Original comment by kobalicek.petr
on 20 Oct 2011 at 3:29
- Changed state: Accepted
from fog.
MinGW can compile fog now, thank you. I will do some benchmark about MSVC
version and MinGW version (and also Qt4, cairo and gdiplus).
now I only have MSVC version of Fog, the result is likely fog is the fastest
library on windows in these four. and the second is gdiplus (just slow 1/3 with
fog), the third is cairo (slow 3 times than fog), the last is Qt4 (very very
slow :-(
Original comment by [email protected]
on 9 Nov 2011 at 4:45
from fog.
Related Issues (20)
- Compilation Failed on MinGW HOT 2
- About onPrepare,onPrepare,onPattern HOT 2
- A patch to improve 64-bit and standards compliance for MingW64 target HOT 1
- A Patch for Image Codecs to compile under MingW64 GCC 4.6.2 HOT 4
- Forcing inlining gives an error with MingW64 compiler HOT 12
- how to render images in skia ] HOT 2
- about layout and button HOT 3
- Framework not compiling on Mac Platform HOT 3
- Linux error when compile HOT 5
- Support Qt4 bench also on other OSs than Linux HOT 2
- Several files reference files with names in wrong letter case HOT 3
- Compilation errors with OTCore.h HOT 2
- OSX build fails because of two _FOG_NO_COPY() uses HOT 1
- Windows compile error HOT 1
- Image_writeToStream leaks reference to stream HOT 1
- control87 errors on MinGW HOT 2
- Many errors HOT 3
- _FOG_RASTER_IMAGE_PARAMS is incorrect HOT 1
- ‘__m64’ does not name a type on Linux HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fog.