linthesia icon indicating copy to clipboard operation
linthesia copied to clipboard

Cannot compile on Ubuntu 20.04

Open baptx opened this issue 4 years ago • 3 comments

Here are the errors I get on Lubuntu 20.04 when I execute the make command to compile the latest version from the master branch:

make  all-recursive
make[1]: Entering directory '/home/user/Downloads/linthesia'
Making all in src
make[2]: Entering directory '/home/user/Downloads/linthesia/src'
g++ -DHAVE_CONFIG_H -I. -I..  -DGRAPHDIR="\"../graphics\"" -pthread -D__UNIX_JACK__ -D__LINUX_ALSA__ -I/usr/include/rtmidi  -Wall -std=c++11 -iquote ../libmidi -g -O2 -std=c++11 -DDATADIR=\"/usr/local/share/linthesia\" -MT linthesia-main.o -MD -MP -MF .deps/linthesia-main.Tpo -c -o linthesia-main.o `test -f 'main.cpp' || echo './'`main.cpp
In file included from main.cpp:6:
context/context.h:21:51: error: ‘Int64’ in namespace ‘sf’ does not name a type
   21 |         MidiEventListWithTrackId update(const sf::Int64 deltaMicroseconds);
      |                                                   ^~~~~
In file included from /usr/include/SFML/Graphics/Transformable.hpp:32,
                 from buttons/abstract_button.h:7,
                 from buttons/one_line_button.h:4,
                 from buttons/short_one_line_button.h:4,
                 from main.cpp:9:
/usr/include/SFML/Graphics/Transform.hpp:42:25: error: variable ‘sf::SFML_API_IMPORT sf::Transform’ has initializer but incomplete type
   42 | class SFML_GRAPHICS_API Transform
      |                         ^~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:44:1: error: expected primary-expression before ‘public’
   44 | public:
      | ^~~~~~
/usr/include/SFML/Graphics/Transform.hpp:44:1: error: expected ‘}’ before ‘public’
/usr/include/SFML/Graphics/Transform.hpp:43:1: note: to match this ‘{’
   43 | {
      | ^
/usr/include/SFML/Graphics/Transform.hpp:44:1: error: expected ‘,’ or ‘;’ before ‘public’
   44 | public:
      | ^~~~~~
/usr/include/SFML/Graphics/Transform.hpp:70:47: error: expected constructor, destructor, or type conversion before ‘;’ token
   70 |               float a20, float a21, float a22);
      |                                               ^
/usr/include/SFML/Graphics/Transform.hpp:87:30: error: non-member function ‘const float* sf::getMatrix()’ cannot have cv-qualifier
   87 |     const float* getMatrix() const;
      |                              ^~~~~
/usr/include/SFML/Graphics/Transform.hpp:98:5: error: ‘Transform’ does not name a type
   98 |     Transform getInverse() const;
      |     ^~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:109:47: error: non-member function ‘sf::Vector2f sf::transformPoint(float, float)’ cannot have cv-qualifier
  109 |     Vector2f transformPoint(float x, float y) const;
      |                                               ^~~~~
/usr/include/SFML/Graphics/Transform.hpp:119:52: error: non-member function ‘sf::Vector2f sf::transformPoint(const Vector2f&)’ cannot have cv-qualifier
  119 |     Vector2f transformPoint(const Vector2f& point) const;
      |                                                    ^~~~~
/usr/include/SFML/Graphics/Transform.hpp:135:57: error: non-member function ‘sf::FloatRect sf::transformRect(const FloatRect&)’ cannot have cv-qualifier
  135 |     FloatRect transformRect(const FloatRect& rectangle) const;
      |                                                         ^~~~~
/usr/include/SFML/Graphics/Transform.hpp:149:5: error: ‘Transform’ does not name a type
  149 |     Transform& combine(const Transform& transform);
      |     ^~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:169:5: error: ‘Transform’ does not name a type
  169 |     Transform& translate(float x, float y);
      |     ^~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:188:5: error: ‘Transform’ does not name a type
  188 |     Transform& translate(const Vector2f& offset);
      |     ^~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:207:5: error: ‘Transform’ does not name a type
  207 |     Transform& rotate(float angle);
      |     ^~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:233:5: error: ‘Transform’ does not name a type
  233 |     Transform& rotate(float angle, float centerX, float centerY);
      |     ^~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:258:5: error: ‘Transform’ does not name a type
  258 |     Transform& rotate(float angle, const Vector2f& center);
      |     ^~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:278:5: error: ‘Transform’ does not name a type
  278 |     Transform& scale(float scaleX, float scaleY);
      |     ^~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:305:5: error: ‘Transform’ does not name a type
  305 |     Transform& scale(float scaleX, float scaleY, float centerX, float centerY);
      |     ^~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:324:5: error: ‘Transform’ does not name a type
  324 |     Transform& scale(const Vector2f& factors);
      |     ^~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:349:5: error: ‘Transform’ does not name a type
  349 |     Transform& scale(const Vector2f& factors, const Vector2f& center);
      |     ^~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:354:18: error: ‘Transform’ does not name a type
  354 |     static const Transform Identity; ///< The identity transform (does nothing)
      |                  ^~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:356:1: error: expected unqualified-id before ‘private’
  356 | private:
      | ^~~~~~~
In file included from /usr/include/SFML/Graphics/Transformable.hpp:31,
                 from buttons/abstract_button.h:7,
                 from buttons/one_line_button.h:4,
                 from buttons/short_one_line_button.h:4,
                 from main.cpp:9:
/usr/include/SFML/Graphics/Transform.hpp:376:1: error: ‘SFML_API_IMPORT’ does not name a type
  376 | SFML_GRAPHICS_API Transform operator *(const Transform& left, const Transform& right);
      | ^~~~~~~~~~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:390:1: error: ‘SFML_API_IMPORT’ does not name a type
  390 | SFML_GRAPHICS_API Transform& operator *=(Transform& left, const Transform& right);
      | ^~~~~~~~~~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:404:1: error: ‘SFML_API_IMPORT’ does not name a type
  404 | SFML_GRAPHICS_API Vector2f operator *(const Transform& left, const Vector2f& right);
      | ^~~~~~~~~~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:419:1: error: ‘SFML_API_IMPORT’ does not name a type
  419 | SFML_GRAPHICS_API bool operator ==(const Transform& left, const Transform& right);
      | ^~~~~~~~~~~~~~~~~
/usr/include/SFML/Graphics/Transform.hpp:433:1: error: ‘SFML_API_IMPORT’ does not name a type
  433 | SFML_GRAPHICS_API bool operator !=(const Transform& left, const Transform& right);
      | ^~~~~~~~~~~~~~~~~
In file included from /usr/include/SFML/Graphics/Transformable.hpp:32,
                 from buttons/abstract_button.h:7,
                 from buttons/one_line_button.h:4,
                 from buttons/short_one_line_button.h:4,
                 from main.cpp:9:
/usr/include/SFML/Graphics/Transform.hpp:435:1: error: expected declaration before ‘}’ token
  435 | } // namespace sf
      | ^
In file included from buttons/abstract_button.h:7,
                 from buttons/one_line_button.h:4,
                 from buttons/short_one_line_button.h:4,
                 from main.cpp:9:
/usr/include/SFML/Graphics/Transformable.hpp:41:25: error: variable ‘sf::SFML_API_IMPORT sf::Transformable’ has initializer but incomplete type
   41 | class SFML_GRAPHICS_API Transformable
      |                         ^~~~~~~~~~~~~
/usr/include/SFML/Graphics/Transformable.hpp:43:1: error: expected primary-expression before ‘public’
   43 | public:
      | ^~~~~~
/usr/include/SFML/Graphics/Transformable.hpp:43:1: error: expected ‘}’ before ‘public’
/usr/include/SFML/Graphics/Transformable.hpp:42:1: note: to match this ‘{’
   42 | {
      | ^
/usr/include/SFML/Graphics/Transformable.hpp:43:1: error: expected ‘,’ or ‘;’ before ‘public’
   43 | public:
      | ^~~~~~
/usr/include/SFML/Graphics/Transformable.hpp:55:27: error: expected class-name before ‘(’ token
   55 |     virtual ~Transformable();
      |                           ^
/usr/include/SFML/Graphics/Transformable.hpp:172:35: error: non-member function ‘const Vector2f& sf::getPosition()’ cannot have cv-qualifier
  172 |     const Vector2f& getPosition() const;
      |                                   ^~~~~
/usr/include/SFML/Graphics/Transformable.hpp:184:25: error: non-member function ‘float sf::getRotation()’ cannot have cv-qualifier
  184 |     float getRotation() const;
      |                         ^~~~~
/usr/include/SFML/Graphics/Transformable.hpp:194:32: error: non-member function ‘const Vector2f& sf::getScale()’ cannot have cv-qualifier
  194 |     const Vector2f& getScale() const;
      |                                ^~~~~
/usr/include/SFML/Graphics/Transformable.hpp:204:33: error: non-member function ‘const Vector2f& sf::getOrigin()’ cannot have cv-qualifier
  204 |     const Vector2f& getOrigin() const;
      |                                 ^~~~~
/usr/include/SFML/Graphics/Transformable.hpp:302:11: error: ‘Transform’ does not name a type
  302 |     const Transform& getTransform() const;
      |           ^~~~~~~~~
/usr/include/SFML/Graphics/Transformable.hpp:312:11: error: ‘Transform’ does not name a type
  312 |     const Transform& getInverseTransform() const;
      |           ^~~~~~~~~
/usr/include/SFML/Graphics/Transformable.hpp:314:1: error: expected unqualified-id before ‘private’
  314 | private:
      | ^~~~~~~
/usr/include/SFML/Graphics/Transformable.hpp:323:13: error: ‘Transform’ does not name a type
  323 |     mutable Transform m_transform;                  ///< Combined transformation of the object
      |             ^~~~~~~~~
/usr/include/SFML/Graphics/Transformable.hpp:324:5: error: non-member ‘m_transformNeedUpdate’ cannot be declared ‘mutable’
  324 |     mutable bool      m_transformNeedUpdate;        ///< Does the transform need to be recomputed?
      |     ^~~~~~~
/usr/include/SFML/Graphics/Transformable.hpp:325:13: error: ‘Transform’ does not name a type
  325 |     mutable Transform m_inverseTransform;           ///< Combined transformation of the object
      |             ^~~~~~~~~
/usr/include/SFML/Graphics/Transformable.hpp:326:5: error: non-member ‘m_inverseTransformNeedUpdate’ cannot be declared ‘mutable’
  326 |     mutable bool      m_inverseTransformNeedUpdate; ///< Does the transform need to be recomputed?
      |     ^~~~~~~
/usr/include/SFML/Graphics/Transformable.hpp:329:1: error: expected declaration before ‘}’ token
  329 | } // namespace sf
      | ^
In file included from /usr/include/SFML/Graphics/VertexArray.hpp:32,
                 from /usr/include/SFML/Graphics/Text.hpp:36,
                 from buttons/abstract_button.h:10,
                 from buttons/one_line_button.h:4,
                 from buttons/short_one_line_button.h:4,
                 from main.cpp:9:
/usr/include/SFML/Graphics/Vertex.hpp:42:25: error: variable ‘sf::SFML_API_IMPORT sf::Vertex’ has initializer but incomplete type
   42 | class SFML_GRAPHICS_API Vertex
      |                         ^~~~~~
/usr/include/SFML/Graphics/Vertex.hpp:44:1: error: expected primary-expression before ‘public’
   44 | public:
      | ^~~~~~
/usr/include/SFML/Graphics/Vertex.hpp:44:1: error: expected ‘}’ before ‘public’
/usr/include/SFML/Graphics/Vertex.hpp:43:1: note: to match this ‘{’
   43 | {
      | ^
/usr/include/SFML/Graphics/Vertex.hpp:44:1: error: expected ‘,’ or ‘;’ before ‘public’
   44 | public:
      | ^~~~~~
/usr/include/SFML/Graphics/Vertex.hpp:60:40: error: expected constructor, destructor, or type conversion before ‘;’ token
   60 |     Vertex(const Vector2f& thePosition);
      |                                        ^
/usr/include/SFML/Graphics/Vertex.hpp:71:63: error: expected constructor, destructor, or type conversion before ‘;’ token
   71 |     Vertex(const Vector2f& thePosition, const Color& theColor);
      |                                                               ^
/usr/include/SFML/Graphics/Vertex.hpp:82:70: error: expected constructor, destructor, or type conversion before ‘;’ token
   82 |     Vertex(const Vector2f& thePosition, const Vector2f& theTexCoords);
      |                                                                      ^
/usr/include/SFML/Graphics/Vertex.hpp:92:93: error: expected constructor, destructor, or type conversion before ‘;’ token
   92 |     Vertex(const Vector2f& thePosition, const Color& theColor, const Vector2f& theTexCoords);
      |                                                                                             ^
/usr/include/SFML/Graphics/Vertex.hpp:102:1: error: expected declaration before ‘}’ token
  102 | } // namespace sf
      | ^
In file included from /usr/include/SFML/Graphics/Text.hpp:36,
                 from buttons/abstract_button.h:10,
                 from buttons/one_line_button.h:4,
                 from buttons/short_one_line_button.h:4,
                 from main.cpp:9:
/usr/include/SFML/Graphics/VertexArray.hpp:45:37: error: expected initializer before ‘:’ token
   45 | class SFML_GRAPHICS_API VertexArray : public Drawable
      |                                     ^
In file included from buttons/abstract_button.h:10,
                 from buttons/one_line_button.h:4,
                 from buttons/short_one_line_button.h:4,
                 from main.cpp:9:
/usr/include/SFML/Graphics/Text.hpp:48:30: error: expected initializer before ‘:’ token
   48 | class SFML_GRAPHICS_API Text : public Drawable, public Transformable
      |                              ^
In file included from buttons/one_line_button.h:4,
                 from buttons/short_one_line_button.h:4,
                 from main.cpp:9:
buttons/abstract_button.h:24:71: error: expected class-name before ‘{’ token
   24 | class AbstractButton : public sf::Drawable , public sf::Transformable {
      |                                                                       ^
buttons/abstract_button.h:53:17: error: ‘sf::RenderStates’ has not been declared
   53 |             sf::RenderStates states
      |                 ^~~~~~~~~~~~
In file included from buttons/short_one_line_button.h:4,
                 from main.cpp:9:
buttons/one_line_button.h:46:17: error: ‘sf::RenderStates’ has not been declared
   46 |             sf::RenderStates states
      |                 ^~~~~~~~~~~~
buttons/one_line_button.h:63:13: error: ‘Text’ in namespace ‘sf’ does not name a type
   63 |         sf::Text label;
      |             ^~~~
In file included from main.cpp:9:
buttons/short_one_line_button.h:25:26: error: ‘Vector2u’ in namespace ‘sf’ does not name a type; did you mean ‘Vector2f’?
   25 |         static const sf::Vector2u getSize();
      |                          ^~~~~~~~
      |                          Vector2f
buttons/short_one_line_button.h:41:20: error: ‘Texture’ in namespace ‘sf’ does not name a type
   41 |         static sf::Texture texture;
      |                    ^~~~~~~
In file included from main.cpp:10:
buttons/long_one_line_button.h:25:26: error: ‘Vector2u’ in namespace ‘sf’ does not name a type; did you mean ‘Vector2f’?
   25 |         static const sf::Vector2u getSize();
      |                          ^~~~~~~~
      |                          Vector2f
buttons/long_one_line_button.h:41:20: error: ‘Texture’ in namespace ‘sf’ does not name a type
   41 |         static sf::Texture texture;
      |                    ^~~~~~~
In file included from /usr/include/SFML/Graphics/Texture.hpp:33,
                 from ./icons/icon.h:6,
                 from screens/select_track_screen/track_box.h:10,
                 from main.cpp:11:
/usr/include/SFML/Window/GlResource.hpp:46:23: error: variable ‘sf::SFML_API_IMPORT sf::GlResource’ has initializer but incomplete type
   46 | class SFML_WINDOW_API GlResource
      |                       ^~~~~~~~~~
/usr/include/SFML/Window/GlResource.hpp:48:1: error: expected primary-expression before ‘protected’
   48 | protected:
      | ^~~~~~~~~
/usr/include/SFML/Window/GlResource.hpp:48:1: error: expected ‘}’ before ‘protected’
/usr/include/SFML/Window/GlResource.hpp:47:1: note: to match this ‘{’
   47 | {
      | ^
/usr/include/SFML/Window/GlResource.hpp:48:1: error: expected ‘,’ or ‘;’ before ‘protected’
   48 | protected:
      | ^~~~~~~~~
/usr/include/SFML/Window/GlResource.hpp:60:16: error: expected class-name before ‘(’ token
   60 |     ~GlResource();
      |                ^
/usr/include/SFML/Window/GlResource.hpp:79:48: error: found ‘:’ in nested-name-specifier, expected ‘::’
   79 |     class SFML_WINDOW_API TransientContextLock : NonCopyable
      |                                                ^
      |                                                ::
/usr/include/SFML/Window/GlResource.hpp:79:27: error: ‘TransientContextLock’ has not been declared
   79 |     class SFML_WINDOW_API TransientContextLock : NonCopyable
      |                           ^~~~~~~~~~~~~~~~~~~~
/usr/include/SFML/Window/GlResource.hpp:79:50: error: variable ‘sf::SFML_API_IMPORT sf::NonCopyable’ has initializer but incomplete type
   79 |     class SFML_WINDOW_API TransientContextLock : NonCopyable
      |                                                  ^~~~~~~~~~~
/usr/include/SFML/Window/GlResource.hpp:81:5: error: expected primary-expression before ‘public’
   81 |     public:
      |     ^~~~~~
/usr/include/SFML/Window/GlResource.hpp:81:5: error: expected ‘}’ before ‘public’
/usr/include/SFML/Window/GlResource.hpp:80:5: note: to match this ‘{’
   80 |     {
      |     ^
/usr/include/SFML/Window/GlResource.hpp:81:5: error: expected ‘,’ or ‘;’ before ‘public’
   81 |     public:
      |     ^~~~~~
/usr/include/SFML/Window/GlResource.hpp:92:30: error: expected class-name before ‘(’ token
   92 |         ~TransientContextLock();
      |                              ^
/usr/include/SFML/Window/GlResource.hpp:94:1: error: expected declaration before ‘}’ token
   94 | };
      | ^
/usr/include/SFML/Window/GlResource.hpp:96:1: error: expected declaration before ‘}’ token
   96 | } // namespace sf
      | ^
In file included from ./icons/icon.h:6,
                 from screens/select_track_screen/track_box.h:10,
                 from main.cpp:11:
/usr/include/SFML/Graphics/Texture.hpp:48:33: error: found ‘:’ in nested-name-specifier, expected ‘::’
   48 | class SFML_GRAPHICS_API Texture : GlResource
      |                                 ^
      |                                 ::
/usr/include/SFML/Graphics/Texture.hpp:48:25: error: ‘Texture’ has not been declared
   48 | class SFML_GRAPHICS_API Texture : GlResource
      |                         ^~~~~~~
/usr/include/SFML/Graphics/Texture.hpp:50:1: error: expected primary-expression before ‘public’
   50 | public:
      | ^~~~~~
/usr/include/SFML/Graphics/Texture.hpp:50:1: error: expected ‘}’ before ‘public’
/usr/include/SFML/Graphics/Texture.hpp:49:1: note: to match this ‘{’
   49 | {
      | ^
/usr/include/SFML/Graphics/Texture.hpp:62:1: error: expected unqualified-id before ‘public’
   62 | public:
      | ^~~~~~
/usr/include/SFML/Graphics/Texture.hpp:78:19: error: ‘Texture’ does not name a type; did you mean ‘Text’?
   78 |     Texture(const Texture& copy);
      |                   ^~~~~~~
      |                   Text
/usr/include/SFML/Graphics/Texture.hpp:78:33: error: expected constructor, destructor, or type conversion before ‘;’ token
   78 |     Texture(const Texture& copy);
      |                                 ^
/usr/include/SFML/Graphics/Texture.hpp:84:13: error: expected class-name before ‘(’ token
   84 |     ~Texture();
      |             ^
/usr/include/SFML/Graphics/Texture.hpp:223:5: error: ‘Vector2u’ does not name a type; did you mean ‘Vector2f’?
  223 |     Vector2u getSize() const;
      |     ^~~~~~~~
      |     Vector2f
/usr/include/SFML/Graphics/Texture.hpp:238:25: error: non-member function ‘sf::Image sf::copyToImage()’ cannot have cv-qualifier
  238 |     Image copyToImage() const;
      |                         ^~~~~
/usr/include/SFML/Graphics/Texture.hpp:298:23: error: ‘Texture’ does not name a type; did you mean ‘Text’?
  298 |     void update(const Texture& texture);
      |                       ^~~~~~~
      |                       Text
/usr/include/SFML/Graphics/Texture.hpp:315:23: error: ‘Texture’ does not name a type; did you mean ‘Text’?
  315 |     void update(const Texture& texture, unsigned int x, unsigned int y);
      |                       ^~~~~~~
      |                       Text
/usr/include/SFML/Graphics/Texture.hpp:415:21: error: non-member function ‘bool sf::isSmooth()’ cannot have cv-qualifier
  415 |     bool isSmooth() const;
      |                     ^~~~~
/usr/include/SFML/Graphics/Texture.hpp:450:19: error: non-member function ‘bool sf::isSrgb()’ cannot have cv-qualifier
  450 |     bool isSrgb() const;
      |                   ^~~~~
/usr/include/SFML/Graphics/Texture.hpp:484:23: error: non-member function ‘bool sf::isRepeated()’ cannot have cv-qualifier
  484 |     bool isRepeated() const;
      |                       ^~~~~
/usr/include/SFML/Graphics/Texture.hpp:519:5: error: ‘Texture’ does not name a type; did you mean ‘Text’?
  519 |     Texture& operator =(const Texture& right);
      |     ^~~~~~~
      |     Text
/usr/include/SFML/Graphics/Texture.hpp:527:15: error: variable or field ‘swap’ declared void
  527 |     void swap(Texture& right);
      |               ^~~~~~~
/usr/include/SFML/Graphics/Texture.hpp:527:15: error: ‘Texture’ was not declared in this scope; did you mean ‘Text’?
  527 |     void swap(Texture& right);
      |               ^~~~~~~
      |               Text
/usr/include/SFML/Graphics/Texture.hpp:527:24: error: ‘right’ was not declared in this scope; did you mean ‘std::right’?
  527 |     void swap(Texture& right);
      |                        ^~~~~
      |                        std::right
In file included from /usr/include/c++/9/ios:42,
                 from /usr/include/c++/9/ostream:38,
                 from /usr/include/c++/9/iostream:39,
                 from main.cpp:2:
/usr/include/c++/9/bits/ios_base.h:1014:3: note: ‘std::right’ declared here
 1014 |   right(ios_base& __base)
      |   ^~~~~
In file included from ./icons/icon.h:6,
                 from screens/select_track_screen/track_box.h:10,
                 from main.cpp:11:
/usr/include/SFML/Graphics/Texture.hpp:539:36: error: non-member function ‘unsigned int sf::getNativeHandle()’ cannot have cv-qualifier
  539 |     unsigned int getNativeHandle() const;
      |                                    ^~~~~
/usr/include/SFML/Graphics/Texture.hpp:572:28: error: ‘Texture’ does not name a type; did you mean ‘Text’?
  572 |     static void bind(const Texture* texture, CoordinateType coordinateType = Normalized);
      |                            ^~~~~~~
      |                            Text
/usr/include/SFML/Graphics/Texture.hpp:572:46: error: ‘CoordinateType’ has not been declared
  572 |     static void bind(const Texture* texture, CoordinateType coordinateType = Normalized);
      |                                              ^~~~~~~~~~~~~~
/usr/include/SFML/Graphics/Texture.hpp:572:78: error: ‘Normalized’ was not declared in this scope
  572 |     static void bind(const Texture* texture, CoordinateType coordinateType = Normalized);
      |                                                                              ^~~~~~~~~~
/usr/include/SFML/Graphics/Texture.hpp:586:1: error: expected unqualified-id before ‘private’
  586 | private:
      | ^~~~~~~
/usr/include/SFML/Graphics/Texture.hpp:589:5: error: ‘friend’ used outside of class
  589 |     friend class RenderTexture;
      |     ^~~~~~
      |     ------
/usr/include/SFML/Graphics/Texture.hpp:590:5: error: ‘friend’ used outside of class
  590 |     friend class RenderTarget;
      |     ^~~~~~
      |     ------
/usr/include/SFML/Graphics/Texture.hpp:619:5: error: ‘Vector2u’ does not name a type; did you mean ‘Vector2f’?
  619 |     Vector2u     m_size;          ///< Public texture size
      |     ^~~~~~~~
      |     Vector2f
/usr/include/SFML/Graphics/Texture.hpp:620:5: error: ‘Vector2u’ does not name a type; did you mean ‘Vector2f’?
  620 |     Vector2u     m_actualSize;    ///< Actual texture size (can be greater than public size because of padding)
      |     ^~~~~~~~
      |     Vector2f
/usr/include/SFML/Graphics/Texture.hpp:625:5: error: non-member ‘m_pixelsFlipped’ cannot be declared ‘mutable’
  625 |     mutable bool m_pixelsFlipped; ///< To work around the inconsistency in Y orientation
      |     ^~~~~~~
/usr/include/SFML/Graphics/Texture.hpp:628:5: error: ‘Uint64’ does not name a type; did you mean ‘Uint32’?
  628 |     Uint64       m_cacheId;       ///< Unique number that identifies the texture to the render target's cache
      |     ^~~~~~
      |     Uint32
/usr/include/SFML/Graphics/Texture.hpp:631:1: error: expected declaration before ‘}’ token
  631 | } // namespace sf
      | ^
In file included from screens/select_track_screen/track_box.h:10,
                 from main.cpp:11:
./icons/icon.h:50:61: error: expected class-name before ‘{’ token
   50 | class Icon : public sf::Drawable , public sf::Transformable {
      |                                                             ^
./icons/icon.h:65:17: error: ‘sf::RenderStates’ has not been declared
   65 |             sf::RenderStates states
      |                 ^~~~~~~~~~~~
./icons/icon.h:95:20: error: ‘Texture’ in namespace ‘sf’ does not name a type; did you mean ‘m_texture’?
   95 |         static sf::Texture iconsTexture;
      |                    ^~~~~~~
      |                    m_texture
In file included from main.cpp:11:
screens/select_track_screen/track_box.h:21:65: error: expected class-name before ‘{’ token
   21 | class TrackBox : public sf::Drawable , public sf::Transformable {
      |                                                                 ^
screens/select_track_screen/track_box.h:61:17: error: ‘sf::RenderStates’ has not been declared
   61 |             sf::RenderStates states
      |                 ^~~~~~~~~~~~
screens/select_track_screen/track_box.h:90:20: error: ‘Texture’ in namespace ‘sf’ does not name a type; did you mean ‘m_texture’?
   90 |         static sf::Texture backgroundTexture;
      |                    ^~~~~~~
      |                    m_texture
screens/select_track_screen/track_box.h:95:18: error: field ‘instrumentLabel’ has incomplete type ‘sf::Text’
   95 |         sf::Text instrumentLabel;
      |                  ^~~~~~~~~~~~~~~
In file included from ./icons/icon.h:6,
                 from screens/select_track_screen/track_box.h:10,
                 from main.cpp:11:
/usr/include/SFML/Graphics/Texture.hpp:41:7: note: forward declaration of ‘class sf::Text’
   41 | class Text;
      |       ^~~~
In file included from main.cpp:11:
screens/select_track_screen/track_box.h:100:18: error: field ‘instrumentNameLabel’ has incomplete type ‘sf::Text’
  100 |         sf::Text instrumentNameLabel;
      |                  ^~~~~~~~~~~~~~~~~~~
In file included from ./icons/icon.h:6,
                 from screens/select_track_screen/track_box.h:10,
                 from main.cpp:11:
/usr/include/SFML/Graphics/Texture.hpp:41:7: note: forward declaration of ‘class sf::Text’
   41 | class Text;
      |       ^~~~
In file included from main.cpp:11:
screens/select_track_screen/track_box.h:105:18: error: field ‘notesLabel’ has incomplete type ‘sf::Text’
  105 |         sf::Text notesLabel;
      |                  ^~~~~~~~~~
In file included from ./icons/icon.h:6,
                 from screens/select_track_screen/track_box.h:10,
                 from main.cpp:11:
/usr/include/SFML/Graphics/Texture.hpp:41:7: note: forward declaration of ‘class sf::Text’
   41 | class Text;
      |       ^~~~
In file included from main.cpp:11:
screens/select_track_screen/track_box.h:110:18: error: field ‘notesNumberLabel’ has incomplete type ‘sf::Text’
  110 |         sf::Text notesNumberLabel;
      |                  ^~~~~~~~~~~~~~~~
In file included from ./icons/icon.h:6,
                 from screens/select_track_screen/track_box.h:10,
                 from main.cpp:11:
/usr/include/SFML/Graphics/Texture.hpp:41:7: note: forward declaration of ‘class sf::Text’
   41 | class Text;
      |       ^~~~
In file included from main.cpp:11:
screens/select_track_screen/track_box.h:115:18: error: field ‘playChoiceLabel’ has incomplete type ‘sf::Text’
  115 |         sf::Text playChoiceLabel;
      |                  ^~~~~~~~~~~~~~~
In file included from ./icons/icon.h:6,
                 from screens/select_track_screen/track_box.h:10,
                 from main.cpp:11:
/usr/include/SFML/Graphics/Texture.hpp:41:7: note: forward declaration of ‘class sf::Text’
   41 | class Text;
      |       ^~~~
In file included from main.cpp:11:
screens/select_track_screen/track_box.h:80:14: error: cannot declare field ‘linthesia::TrackBox::next’ to be of abstract type ‘linthesia::Icon’
   80 |         Icon next;
      |              ^~~~
In file included from screens/select_track_screen/track_box.h:10,
                 from main.cpp:11:
./icons/icon.h:50:7: note:   because the following virtual functions are pure within ‘linthesia::Icon’:
   50 | class Icon : public sf::Drawable , public sf::Transformable {
      |       ^~~~
In file included from /usr/local/include/SFML/Graphics/PostFX.hpp:31,
                 from /usr/local/include/SFML/Graphics.hpp:37,
                 from screens/abstract_screen.h:4,
                 from screens/screens.h:7,
                 from main.cpp:5:
/usr/local/include/SFML/Graphics/Drawable.hpp:341:18: note:     ‘virtual void sf::Drawable::Render(sf::RenderTarget&) const’
  341 |     virtual void Render(RenderTarget& Target) const = 0;
      |                  ^~~~~~
In file included from main.cpp:11:
screens/select_track_screen/track_box.h:85:14: error: cannot declare field ‘linthesia::TrackBox::previous’ to be of abstract type ‘linthesia::Icon’
   85 |         Icon previous;
      |              ^~~~~~~~
main.cpp: In function ‘int main()’:
main.cpp:23:17: error: ‘class sf::RenderWindow’ has no member named ‘setVerticalSyncEnabled’
   23 |     application.setVerticalSyncEnabled(true);
      |                 ^~~~~~~~~~~~~~~~~~~~~~
main.cpp:42:17: error: ‘class sf::RenderWindow’ has no member named ‘close’; did you mean ‘Close’?
   42 |     application.close();
      |                 ^~~~~
      |                 Close
make[2]: *** [Makefile:821: linthesia-main.o] Error 1
make[2]: Leaving directory '/home/user/Downloads/linthesia/src'
make[1]: *** [Makefile:404: all-recursive] Error 1
make[1]: Leaving directory '/home/user/Downloads/linthesia'
make: *** [Makefile:336: all] Error 2

Do you have an idea how to fix the issue? I tried the releases 0.5.0 and 0.4.3 but it did not work either.

I followed the instructions to install dependencies with sudo aptitude install clang libtool autoconf automake make libsfml-dev librtmidi-dev libgtkmm-2.4-dev libgconfmm-2.6-dev libgtkglextmm-x11-1.2-dev libasound2-dev. I also did autoreconf -i and ./configure before using the make command.

baptx avatar Dec 08 '20 11:12 baptx

I will try to have a look at it this weekend

allan-simon avatar Dec 08 '20 13:12 allan-simon

I've git clone the project on a clean new install of ubuntu 20.04 , and I don't get your errors :/ (I've fixed some deprecation related to setColor ),

it seems to be something about the installation of the sfml library

allan-simon avatar May 30 '21 10:05 allan-simon

wait, is it because you use g++ while i use clang ?

allan-simon avatar May 31 '21 12:05 allan-simon