{"action":"created","issue":{"url":"https://api.github.com/repos/hardkernel/ODROID-GO/issues/3","repository_url":"https://api.github.com/repos/hardkernel/ODROID-GO","labels_url":"https://api.github.com/repos/hardkernel/ODROID-GO/issues/3/labels{/name}","comments_url":"https://api.github.com/repos/hardkernel/ODROID-GO/issues/3/comments","events_url":"https://api.github.com/repos/hardkernel/ODROID-GO/issues/3/events","html_url":"https://github.com/hardkernel/ODROID-GO/issues/3","id":362854136,"node_id":"MDU6SXNzdWUzNjI4NTQxMzY=","number":3,"title":"Linking fails with esp-idf","user":{"login":"lfuelling","id":5144843,"node_id":"MDQ6VXNlcjUxNDQ4NDM=","avatar_url":"https://avatars0.githubusercontent.com/u/5144843?v=4","gravatar_id":"","url":"https://api.github.com/users/lfuelling","html_url":"https://github.com/lfuelling","followers_url":"https://api.github.com/users/lfuelling/followers","following_url":"https://api.github.com/users/lfuelling/following{/other_user}","gists_url":"https://api.github.com/users/lfuelling/gists{/gist_id}","starred_url":"https://api.github.com/users/lfuelling/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lfuelling/subscriptions","organizations_url":"https://api.github.com/users/lfuelling/orgs","repos_url":"https://api.github.com/users/lfuelling/repos","events_url":"https://api.github.com/users/lfuelling/events{/privacy}","received_events_url":"https://api.github.com/users/lfuelling/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-09-22T12:40:25Z","updated_at":"2018-09-27T01:15:01Z","closed_at":null,"author_association":"NONE","body":"Hi,\r\n\r\nI'm trying to get the minimal HelloWorld* to build using esp-idf on the command line because I don't like the ArduinoIDE.\r\n\r\nI got the compilation to work, but when make tries to link it fails with a lot of errors:\r\n\r\n```\r\n> make                                                                                                                                                                                                                                                                                                \r\nPython requirements from /Users/lerk/esp/esp-idf/requirements.txt are satisfied.\r\nCXX build/main/main.o\r\nAR build/main/libmain.a\r\nLD build/odroid-go-hello-world.elf\r\n/Users/lerk/workspace/odroid-go-hello-world/build/main/libmain.a(main.o):(.literal._Z4loopv+0x8): undefined reference to `ILI9341::clearDisplay()'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/main/libmain.a(main.o):(.literal._Z4loopv+0xc): undefined reference to `ILI9341::setTextSize(unsigned char)'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/main/libmain.a(main.o):(.literal._Z4loopv+0x10): undefined reference to `ILI9341::setTextFont(unsigned char)'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/main/libmain.a(main.o): In function `loop()':\r\n/Users/lerk/workspace/odroid-go-hello-world/main/main.cpp:10: undefined reference to `ILI9341::clearDisplay()'\r\n/Users/lerk/workspace/odroid-go-hello-world/main/main.cpp:11: undefined reference to `ILI9341::setTextSize(unsigned char)'\r\n/Users/lerk/workspace/odroid-go-hello-world/main/main.cpp:12: undefined reference to `ILI9341::setTextFont(unsigned char)'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):(.literal._ZN7ILI9341D5Ev[ILI9341::~ILI9341()]+0x0): undefined reference to `vtable for ILI9341'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):(.literal._ZN9ODROID_GOC5Ev[ODROID_GO::ODROID_GO()]+0x0): undefined reference to `Button::Button(unsigned char, unsigned char, unsigned int)'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):(.literal._ZN9ODROID_GOC5Ev[ODROID_GO::ODROID_GO()]+0x4): undefined reference to `ILI9341::ILI9341(short, short)'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):(.literal._ZN9ODROID_GOC5Ev[ODROID_GO::ODROID_GO()]+0x8): undefined reference to `SPEAKER::SPEAKER()'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):(.literal._ZN9ODROID_GOC5Ev[ODROID_GO::ODROID_GO()]+0xc): undefined reference to `Battery::Battery()'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):(.literal._ZN9ODROID_GO5beginEm+0x10): undefined reference to `SPEAKER::begin()'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):(.literal._ZN9ODROID_GO5beginEm+0x14): undefined reference to `ILI9341::begin()'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):(.literal._ZN9ODROID_GO5beginEm+0x18): undefined reference to `ILI9341::setRotation(unsigned char)'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):(.literal._ZN9ODROID_GO5beginEm+0x1c): undefined reference to `ILI9341::fillScreen(unsigned int)'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):(.literal._ZN9ODROID_GO5beginEm+0x20): undefined reference to `ILI9341::setCursor(short, short)'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):(.literal._ZN9ODROID_GO5beginEm+0x24): undefined reference to `ILI9341::setTextColor(unsigned short)'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):(.literal._ZN9ODROID_GO5beginEm+0x28): undefined reference to `ILI9341::setBrightness(unsigned char)'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):(.literal._ZN9ODROID_GO5beginEm+0x2c): undefined reference to `Battery::begin()'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o): In function `ODROID_GO::ODROID_GO()':\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.h:21: undefined reference to `Button::Button(unsigned char, unsigned char, unsigned int)'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.h:21: undefined reference to `Button::Button(unsigned char, unsigned char, unsigned int)'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.h:21: undefined reference to `Button::Button(unsigned char, unsigned char, unsigned int)'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.h:21: undefined reference to `Button::Button(unsigned char, unsigned char, unsigned int)'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.h:21: undefined reference to `Button::Button(unsigned char, unsigned char, unsigned int)'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o):/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.h:21: more undefined references to `Button::Button(unsigned char, unsigned char, unsigned int)' follow\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o): In function `ODROID_GO::ODROID_GO()':\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.h:21: undefined reference to `ILI9341::ILI9341(short, short)'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.h:21: undefined reference to `SPEAKER::SPEAKER()'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.h:21: undefined reference to `Battery::Battery()'\r\n/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go/libodroid-go.a(odroid_go.o): In function `ODROID_GO::begin(unsigned long)':\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.cpp:12: undefined reference to `SPEAKER::begin()'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.cpp:21: undefined reference to `ILI9341::begin()'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.cpp:22: undefined reference to `ILI9341::setRotation(unsigned char)'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.cpp:23: undefined reference to `ILI9341::fillScreen(unsigned int)'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.cpp:26: undefined reference to `ILI9341::setCursor(short, short)'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.cpp:27: undefined reference to `ILI9341::setTextColor(unsigned short)'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.cpp:28: undefined reference to `ILI9341::setTextSize(unsigned char)'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.cpp:29: undefined reference to `ILI9341::setBrightness(unsigned char)'\r\n/Users/lerk/workspace/odroid-go-hello-world/components/odroid-go/src/odroid_go.cpp:30: undefined reference to `Battery::begin()'\r\ncollect2: error: ld returned 1 exit status\r\nmake: *** [/Users/lerk/workspace/odroid-go-hello-world/build/odroid-go-hello-world.elf] Error 1\r\n```\r\n\r\nI wonder what causes this, because as said before the compilation works without any errors.\r\n\r\n*main.cpp\r\n```\r\n#include <odroid_go.h>\r\n\r\nvoid setup()\r\n{\r\n    GO.begin();\r\n}\r\n\r\nvoid loop()\r\n{\r\n    GO.lcd.clearDisplay();\r\n    GO.lcd.setTextSize(2);\r\n    GO.lcd.setTextFont(1);\r\n    GO.lcd.print(\"Hello, ODROID-GO\");\r\n}\r\n```\r\n\r\n----\r\n\r\nI Googled the problem before creating this issue and the only thing I could find that remotely looks like my problem [is this one](https://github.com/queezythegreat/arduino-cmake/issues/22#issuecomment-3810244) which suggests setting options in `CMakeLists.txt` and doesn't seem to be related to my setup or issue."},"comment":{"url":"https://api.github.com/repos/hardkernel/ODROID-GO/issues/comments/424922161","html_url":"https://github.com/hardkernel/ODROID-GO/issues/3#issuecomment-424922161","issue_url":"https://api.github.com/repos/hardkernel/ODROID-GO/issues/3","id":424922161,"node_id":"MDEyOklzc3VlQ29tbWVudDQyNDkyMjE2MQ==","user":{"login":"seungchar","id":6026645,"node_id":"MDQ6VXNlcjYwMjY2NDU=","avatar_url":"https://avatars1.githubusercontent.com/u/6026645?v=4","gravatar_id":"","url":"https://api.github.com/users/seungchar","html_url":"https://github.com/seungchar","followers_url":"https://api.github.com/users/seungchar/followers","following_url":"https://api.github.com/users/seungchar/following{/other_user}","gists_url":"https://api.github.com/users/seungchar/gists{/gist_id}","starred_url":"https://api.github.com/users/seungchar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/seungchar/subscriptions","organizations_url":"https://api.github.com/users/seungchar/orgs","repos_url":"https://api.github.com/users/seungchar/repos","events_url":"https://api.github.com/users/seungchar/events{/privacy}","received_events_url":"https://api.github.com/users/seungchar/received_events","type":"User","site_admin":false},"created_at":"2018-09-27T01:15:01Z","updated_at":"2018-09-27T01:15:01Z","author_association":"COLLABORATOR","body":"Hi,\r\nThe odroid_go is only a library for the Arduino framework.\r\nWe have not yet made a library for esp-idf.\r\n\r\nBut, you can use the [loboris/ESP32_TFT_library](https://github.com/loboris/ESP32_TFT_library).\r\n\r\n"}}
{"actor":{"display_login":"seungchar"}}