Open muuvmuuv opened 1 year ago
Hello muuvmuuv Apart from the obvious problems with the code of MakeItPixel itself, there also seems to be a problem with symbols from SFML in the last part of the error message. Could you please tell me whether you are able to compile any other program that relies on SFML?
You are right, this seems to be SFML, created an issue there: https://github.com/SFML/SFML/issues/2204
Alright. I'm keeping this open to try to fix the other problems that do concern MIP. Thanks a lot for reporting!
I was finally able to build a simple program and ported it to MakeItPixel but still get a lot of errors. I also had to add -std=c++11
cause it tried to compile it with an old c++ std somehow.
g++ src/* -L/opt/homebrew/Cellar/sfml/2.5.1_2/lib -Iinclude -lsfml-graphics -std=c++11 -o makeitpixel
In file included from src/Color.cpp:1:
include/Color.hpp:39:19: warning: anonymous non-C-compatible type given name for linkage purposes by typedef declaration; add a tag name here [-Wnon-c-typedef-for-linkage]
typedef struct {
^
HSV
include/Color.hpp:40:17: note: type is not C-compatible due to this default member initializer
float h=0; /// Hue [0.0, 360.0)
^
include/Color.hpp:44:7: note: type is given name 'HSV' for linkage purposes by this typedef declaration
} HSV;
^
1 warning generated.
In file included from src/Palette.cpp:1:
In file included from include/Palette.hpp:17:
include/Color.hpp:39:19: warning: anonymous non-C-compatible type given name for linkage purposes by typedef declaration; add a tag name here [-Wnon-c-typedef-for-linkage]
typedef struct {
^
HSV
include/Color.hpp:40:17: note: type is not C-compatible due to this default member initializer
float h=0; /// Hue [0.0, 360.0)
^
include/Color.hpp:44:7: note: type is given name 'HSV' for linkage purposes by this typedef declaration
} HSV;
^
1 warning generated.
In file included from src/Quantization.cpp:1:
In file included from include/Quantization.hpp:8:
In file included from include/Palette.hpp:17:
include/Color.hpp:39:19: warning: anonymous non-C-compatible type given name for linkage purposes by typedef declaration; add a tag name here [-Wnon-c-typedef-for-linkage]
typedef struct {
^
HSV
include/Color.hpp:40:17: note: type is not C-compatible due to this default member initializer
float h=0; /// Hue [0.0, 360.0)
^
include/Color.hpp:44:7: note: type is given name 'HSV' for linkage purposes by this typedef declaration
} HSV;
^
In file included from src/Quantization.cpp:1:
include/Quantization.hpp:50:19: warning: anonymous non-C-compatible type given name for linkage purposes by typedef declaration; add a tag name here [-Wnon-c-typedef-for-linkage]
typedef struct{
^
Matrix
include/Quantization.hpp:53:9: note: type is not C-compatible due to this member declaration
int getHeight() const;
^~~~~~~~~~~~~~~~~~~~~
include/Quantization.hpp:56:7: note: type is given name 'Matrix' for linkage purposes by this typedef declaration
} Matrix;
^
2 warnings generated.
In file included from src/main.cpp:14:
include/Color.hpp:39:19: warning: anonymous non-C-compatible type given name for linkage purposes by typedef declaration; add a tag name here [-Wnon-c-typedef-for-linkage]
typedef struct {
^
HSV
include/Color.hpp:40:17: note: type is not C-compatible due to this default member initializer
float h=0; /// Hue [0.0, 360.0)
^
include/Color.hpp:44:7: note: type is given name 'HSV' for linkage purposes by this typedef declaration
} HSV;
^
In file included from src/main.cpp:16:
include/Quantization.hpp:50:19: warning: anonymous non-C-compatible type given name for linkage purposes by typedef declaration; add a tag name here [-Wnon-c-typedef-for-linkage]
typedef struct{
^
Matrix
include/Quantization.hpp:53:9: note: type is not C-compatible due to this member declaration
int getHeight() const;
^~~~~~~~~~~~~~~~~~~~~
include/Quantization.hpp:56:7: note: type is given name 'Matrix' for linkage purposes by this typedef declaration
} Matrix;
^
src/main.cpp:34:12: warning: enumeration value 'PLAIN' not handled in switch [-Wswitch]
switch(level){
^
src/main.cpp:34:12: note: add missing switch cases
switch(level){
^
3 warnings generated.
Seems like some symbols aren't compatible with ARM. SFML was installed with Homebrew, but I have also tried a release from GitHub.
This is the output
g++ src/* -Iinclude -std=c++11 -o makeitpixel