Hello Matt, I'm sorry for the long delay. I'm still trying to find a way to work more time with Nuttx.
Here the link for my cmake base hellocpp for Nuttx: https://github.com/Phi-Innovations/nuttx-apps/tree/main/hellocpp Hope it is still useful for you. Best regards, Flavio Em sáb., 12 de dez. de 2020 às 20:55, Matt DeWall <mdew...@gmail.com> escreveu: > > Hi Flavio, > > I'm looking to do something similar and have been putting the cmake stuff > on the back-burner. > > Is your cmake config something you'd be willing to share? No problem if > not, just looking to save some headaches on my end. Thanks! > > Matt > > On Fri, Dec 11, 2020 at 10:07 AM Flavio Castro Alves Filho < > flavio.al...@gmail.com> wrote: > > > Hello Marc, > > > > Thank you for your response. > > > > In fact, it was a little more than that: I didn't set the library > > group in cmake and also didn't set the correct linker. > > > > Solving these issues, I could have it working and running. > > > > Thank you very much. > > > > Best regards, > > > > Flavio > > > > > > > > Em sex., 11 de dez. de 2020 às 09:31, Marc Rosen > > <ma...@zeitcontrol.de> escreveu: > > > > > > Hi Flavio, > > > > > > well I think there are two problems: > > > > > > 1. it seems either you are missing libarch.a or you have a library order > > > problem. > > > Because ld can not find up_exit etc. those are arch specific functions. > > > > > > 2. I would recommend you to add the flag -nostdlib. At least it is going > > > to avoid newlib symbol problems. > > > > > > regards, > > > marc > > > Am 11.12.2020 um 13:07 schrieb Flavio Castro Alves Filho: > > > > Hello, > > > > > > > > Has anybody here used NuttX as a library and a C++ project with cmake? > > > > > > > > I tried to create a project (using hellocxx example) with this setup, > > > > but I was not successful. I can build, but I cannot link. > > > > > > > > My link errors are the following: > > > > > > > > [ 33%] Linking CXX executable hellocpp > > > > > > > > > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/lib/thumb/v7e-m/nofp/crt0.o: > > > > in function `_mainCRTStartup': > > > > > > /build/newlib-CVVEyx/newlib-3.3.0/build/arm-none-eabi/thumb/v7e-m/nofp/libgloss/arm/semihv2m/../../../../../../../../libgloss/arm/crt0.S:545: > > > > undefined reference to `main' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(exit.o): > > > > in function `_exit': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/task/exit.c:56: undefined > > > > reference to `up_exit' > > > > > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/task/exit.c:56: undefined > > > > reference to `up_exit' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(nx_start.o): > > > > in function `nx_start': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/init/nx_start.c:537: > > > > undefined reference to `up_initial_state' > > > > > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/init/nx_start.c:566: > > > > undefined reference to `up_allocate_heap' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/init/nx_start.c:567: > > > > undefined reference to `umm_initialize' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/init/nx_start.c:598: > > > > undefined reference to `iob_initialize' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/init/nx_start.c:618: > > > > undefined reference to `fs_initialize' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/init/nx_start.c:701: > > > > undefined reference to `up_initialize' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/init/nx_start.c:733: > > > > undefined reference to `binfmt_initialize' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/init/nx_start.c:785: > > > > undefined reference to `syslog_initialize' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/init/nx_start.c:832: > > > > undefined reference to `up_idle' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sched_lock.o): > > > > in function `sched_lock': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/sched/sched_lock.c:242: > > > > undefined reference to `up_interrupt_context' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sched_unlock.o): > > > > in function `sched_unlock': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/sched/sched_unlock.c:227: > > > > undefined reference to `up_interrupt_context' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/sched/sched_unlock.c:273: > > > > undefined reference to `up_release_pending' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(task_create.o): > > > > in function `nxthread_create': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/task/task_create.c:81: > > > > undefined reference to `zalloc' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(task_init.o): > > > > in function `nxtask_init': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/task/task_init.c:115: > > > > undefined reference to `up_use_stack' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/task/task_init.c:121: > > > > undefined reference to `up_create_stack' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/task/task_init.c:174: > > > > undefined reference to `up_release_stack' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(task_setup.o): > > > > in function `nxthread_setup_scheduler': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/task/task_setup.c:415: > > > > undefined reference to `up_initial_state' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/task/task_setup.c:415: > > > > undefined reference to `up_initial_state' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(task_setup.o): > > > > in function `nxtask_setup_stackargs': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/task/task_setup.c:550: > > > > undefined reference to `up_stack_frame' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(task_activate.o): > > > > in function `nxtask_activate': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/task/task_activate.c:80: > > > > undefined reference to `up_unblock_task' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(group_create.o): > > > > in function `group_allocate': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/group/group_create.c:222: > > > > undefined reference to `zalloc' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(group_leave.o): > > > > in function `group_release': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/group/group_leave.c:152: > > > > undefined reference to `files_releaselist' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(group_setupidlefiles.o): > > > > in function `group_setupidlefiles': > > > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/group/group_setupidlefiles.c:86: > > > > undefined reference to `files_initlist' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/group/group_setupidlefiles.c:100: > > > > undefined reference to `nx_open' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/group/group_setupidlefiles.c:105: > > > > undefined reference to `fs_dupfd2' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/group/group_setupidlefiles.c:106: > > > > undefined reference to `fs_dupfd2' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(group_setuptaskfiles.o): > > > > in function `group_setuptaskfiles': > > > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/group/group_setuptaskfiles.c:209: > > > > undefined reference to `files_initlist' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(group_setuptaskfiles.o): > > > > in function `sched_dupfiles': > > > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/group/group_setuptaskfiles.c:108: > > > > undefined reference to `file_dup2' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(mq_release.o): > > > > in function `nxmq_release': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/mqueue/mq_release.c:55: > > > > undefined reference to `nxmq_close_group' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sched_releasetcb.o): > > > > in function `nxsched_release_tcb': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/sched/sched_releasetcb.c:134: > > > > undefined reference to `up_release_stack' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sem_wait.o): > > > > in function `nxsem_wait': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/semaphore/sem_wait.c:78: > > > > undefined reference to `up_interrupt_context' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/semaphore/sem_wait.c:153: > > > > undefined reference to `up_block_task' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sem_clockwait.o): > > > > in function `nxsem_clockwait': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/semaphore/sem_clockwait.c:99: > > > > undefined reference to `up_interrupt_context' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sem_post.o): > > > > in function `nxsem_post': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/semaphore/sem_post.c:156: > > > > undefined reference to `up_unblock_task' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sem_waitirq.o): > > > > in function `nxsem_wait_irq': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/semaphore/sem_waitirq.c:109: > > > > undefined reference to `up_unblock_task' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sig_dispatch.o): > > > > in function `nxsig_tcbdispatch': > > > > > > [48/1347]/home/ubuntu/Documents/nuttx/nuttx/sched/signal/sig_dispatch.c:370: > > > > undefined reference to `up_unblock_task' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sig_dispatch.o): > > > > in function `nxsig_alloc_pendingsignal': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/signal/sig_dispatch.c:140: > > > > undefined reference to `up_interrupt_context' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sig_dispatch.o): > > > > in function `nxsig_tcbdispatch': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/signal/sig_dispatch.c:402: > > > > undefined reference to `up_schedule_sigaction' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/signal/sig_dispatch.c:413: > > > > undefined reference to `up_unblock_task' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(clock_initialize.o): > > > > in function `clock_basetime': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/clock/clock_initialize.c:105: > > > > undefined reference to `up_rtc_getdatetime' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(clock_initialize.o): > > > > in function `clock_initialize': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/clock/clock_initialize.c:218: > > > > undefined reference to `up_timer_initialize' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(group_setupstreams.o): > > > > in function `group_setupstreams': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/group/group_setupstreams.c:71: > > > > undefined reference to `fs_fdopen' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/group/group_setupstreams.c:72: > > > > undefined reference to `fs_fdopen' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/group/group_setupstreams.c:73: > > > > undefined reference to `fs_fdopen' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(mq_waitirq.o): > > > > in function `nxmq_wait_irq': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/mqueue/mq_waitirq.c:106: > > > > undefined reference to `up_unblock_task' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sem_trywait.o): > > > > in function `nxsem_trywait': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/semaphore/sem_trywait.c:88: > > > > undefined reference to `up_interrupt_context' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sig_timedwait.o): > > > > in function `nxsig_timedwait': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/signal/sig_timedwait.c:338: > > > > undefined reference to `up_block_task' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/signal/sig_timedwait.c:355: > > > > undefined reference to `up_block_task' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sig_timedwait.o): > > > > in function `nxsig_timeout': > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/signal/sig_timedwait.c:122: > > > > undefined reference to `up_unblock_task' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libsched.a(sig_allocpendingsigaction.o): > > > > in function `nxsig_alloc_pendingsigaction': > > > > > > /home/ubuntu/Documents/nuttx/nuttx/sched/signal/sig_allocpendingsigaction.c:69: > > > > undefined reference to `up_interrupt_context' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(net_sockets.o): > > > > in function `sockfd_allocate': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/socket/net_sockets.c:134: > > > > undefined reference to `nxsched_get_sockets' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(net_sockets.o): > > > > in function `sockfd_socket': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/socket/net_sockets.c:256: > > > > undefined reference to `nxsched_get_sockets' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(net_sockets.o): > > > > in function `sockfd_release': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/socket/net_sockets.c:224: > > > > undefined reference to `nxsched_get_sockets' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(tcp_conn.o): > > > > in function `tcp_free': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_conn.c:790: undefined > > > > reference to `iob_free_queue' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(tcp_callback.o): > > > > in function `tcp_datahandler': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_callback.c:251: > > > > undefined reference to `iob_tryalloc' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_callback.c:260: > > > > undefined reference to `iob_trycopyin' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_callback.c:269: > > > > undefined reference to `iob_free_chain' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_callback.c:277: > > > > undefined reference to `iob_tryadd_queue' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(tcp_backlog.o): > > > > in function `tcp_backlogcreate': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_backlog.c:116: > > > > undefined reference to `zalloc' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(tcp_wrbuffer.o): > > > > in function `tcp_wrbuffer_release': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_wrbuffer.c:260: > > > > undefined reference to `iob_free_chain' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(tcp_wrbuffer.o): > > > > in function `tcp_wrbuffer_tryalloc': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_wrbuffer.c:226: > > > > undefined reference to `iob_tryalloc' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(udp_conn.o): > > > > in function `udp_free': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/udp/udp_conn.c:631: undefined > > > > reference to `iob_free_queue' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(net_lock.o): > > > > in function `net_ioballoc': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/utils/net_lock.c:514: undefined > > > > reference to `iob_tryalloc' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/net/utils/net_lock.c:527: undefined > > > > reference to `iob_alloc' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(tcp_notifier.o): > > > > in function `tcp_readahead_notifier_setup': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_notifier.c:109: > > > > undefined reference to `work_notifier_setup' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(tcp_notifier.o): > > > > in function `tcp_writebuffer_notifier_setup': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_notifier.c:165: > > > > undefined reference to `work_notifier_setup' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(tcp_notifier.o): > > > > in function `tcp_disconnect_notifier_setup': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_notifier.c:218: > > > > undefined reference to `work_notifier_setup' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(tcp_notifier.o): > > > > in function `tcp_notifier_teardown': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_notifier.c:244: > > > > undefined reference to `work_notifier_teardown' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(tcp_notifier.o): > > > > in function `tcp_readahead_signal': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_notifier.c:272: > > > > undefined reference to `work_notifier_signal' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(tcp_notifier.o): > > > > in function `tcp_writebuffer_signal': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_notifier.c:301: > > > > undefined reference to `work_notifier_signal' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libnet.a(tcp_notifier.o): > > > > in function `tcp_disconnect_signal': > > > > /home/ubuntu/Documents/nuttx/nuttx/net/tcp/tcp_notifier.c:324: > > > > undefined reference to `work_notifier_signal' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libc.a(lib_assert.o): > > > > in function `_assert': > > > > /home/ubuntu/Documents/nuttx/nuttx/libs/libc/assert/lib_assert.c:36: > > > > undefined reference to `up_assert' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libc.a(task_startup.o): > > > > in function `cxx_initialize': > > > > /home/ubuntu/Documents/nuttx/nuttx/libs/libc/sched/task_startup.c:108: > > > > undefined reference to `_sinit' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/libs/libc/sched/task_startup.c:108: > > > > undefined reference to `_einit' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > /home/ubuntu/Documents/nuttx/nuttx/libs/libc/sched/task_startup.c:108: > > > > undefined reference to `_stext' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libc.a(lib_printf.o): > > > > in function `printf': > > > > /home/ubuntu/Documents/nuttx/nuttx/libs/libc/stdio/lib_printf.c:44: > > > > undefined reference to `nxsched_get_streams' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libc.a(lib_abort.o): > > > > in function `abort': > > > > /home/ubuntu/Documents/nuttx/nuttx/libs/libc/stdlib/lib_abort.c:95: > > > > undefined reference to `pthread_exit' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libc.a(lib_syslog.o): > > > > in function `vsyslog': > > > > /home/ubuntu/Documents/nuttx/nuttx/libs/libc/syslog/lib_syslog.c:84: > > > > undefined reference to `nx_vsyslog' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /home/ubuntu/Documents/nuttx/hellocpp/nuttx-export-9.1.0/libs/libc.a(tls_getinfo.o): > > > > in function `tls_get_info': > > > > /home/ubuntu/Documents/nuttx/nuttx/libs/libc/tls/tls_getinfo.c:63: > > > > undefined reference to `nxsched_get_stackinfo' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/lib/thumb/v7e-m/nofp/libg.a(lib_a-sbrkr.o): > > > > in function `_sbrk_r': > > > > > > /build/newlib-CVVEyx/newlib-3.3.0/build/arm-none-eabi/thumb/v7e-m/nofp/newlib/libc/reent/../../../../../../../../newlib/libc/reent/sbrkr.c:51: > > > > undefined reference to `_sbrk' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/lib/thumb/v7e-m/nofp/libg.a(lib_a-writer.o): > > > > in function `_write_r': > > > > > > /build/newlib-CVVEyx/newlib-3.3.0/build/arm-none-eabi/thumb/v7e-m/nofp/newlib/libc/reent/../../../../../../../../newlib/libc/reent/writer.c:49: > > > > undefined reference to `_write' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/lib/thumb/v7e-m/nofp/libg.a(lib_a-closer.o): > > > > in function `_close_r': > > > > > > /build/newlib-CVVEyx/newlib-3.3.0/build/arm-none-eabi/thumb/v7e-m/nofp/newlib/libc/reent/../../../../../../../../newlib/libc/reent/closer.c:47: > > > > undefined reference to `_close' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/lib/thumb/v7e-m/nofp/libg.a(lib_a-lseekr.o): > > > > in function `_lseek_r': > > > > > > /build/newlib-CVVEyx/newlib-3.3.0/build/arm-none-eabi/thumb/v7e-m/nofp/newlib/libc/reent/../../../../../../../../newlib/libc/reent/lseekr.c:49: > > > > undefined reference to `_lseek' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/lib/thumb/v7e-m/nofp/libg.a(lib_a-openr.o): > > > > in function `_open_r': > > > > > > /build/newlib-CVVEyx/newlib-3.3.0/build/arm-none-eabi/thumb/v7e-m/nofp/newlib/libc/reent/../../../../../../../../newlib/libc/reent/openr.c:50: > > > > undefined reference to `_open' > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/bin/ld: > > > > > > /usr/lib/gcc/arm-none-eabi/9.2.1/../../../arm-none-eabi/lib/thumb/v7e-m/nofp/libg.a(lib_a-readr.o): > > > > in function `_read_r': > > > > > > /build/newlib-CVVEyx/newlib-3.3.0/build/arm-none-eabi/thumb/v7e-m/nofp/newlib/libc/reent/../../../../../../../../newlib/libc/reent/readr.c:49: > > > > undefined reference to `_read' > > > > collect2: error: ld returned 1 exit status > > > > make[2]: *** [src/CMakeFiles/hellocpp.dir/build.make:100: > > src/hellocpp] Error 1 > > > > make[1]: *** [CMakeFiles/Makefile2:94: > > src/CMakeFiles/hellocpp.dir/all] Error 2 > > > > make: *** [Makefile:84: all] Error 2 > > > > > > > > Does anybody have any idea of what am I doing wrong? > > > > > > > > Best regards, > > > > > > > > Flavio > > > > > > > > > > > > > > > > -- > > Flavio de Castro Alves Filho > > > > flavio.al...@gmail.com > > Twitter: http://twitter.com/#!/fraviofii > > LinkedIn profile: www.linkedin.com/in/flaviocastroalves > > -- Flavio de Castro Alves Filho flavio.al...@gmail.com Twitter: http://twitter.com/#!/fraviofii LinkedIn profile: www.linkedin.com/in/flaviocastroalves