Building v89 in Linux?

11 views
Skip to first unread message

Thom Cherryhomes

unread,
May 20, 2023, 11:07:36 AM5/20/23
to se...@googlegroups.com
Hey guys, trying to build a copy of v89 in Linux.

The tool 'wildcard' isn't part of a typical Linux distribution, and the term is generic enough to make searching for it somewhat arduous. Where may I find it?

Failing that, I'll try to fix the Makefile to be friendlier.

-Thom

Douglas Miller

unread,
May 20, 2023, 11:17:57 AM5/20/23
to se...@googlegroups.com

'wildcard' is a built-in to 'make'. Unless you've got a truly ancient version of 'make', it should be understood. Maybe give us the Linux distro and version.

--
You received this message because you are subscribed to the Google Groups "SEBHC" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sebhc+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/sebhc/CAPQyuQKpCe6nbDTtXr8ULo1M3BKtvNMpZ%3DgjXmT5beiFi%2B5FQA%40mail.gmail.com.

Thom Cherryhomes

unread,
May 20, 2023, 11:32:04 AM5/20/23
to se...@googlegroups.com
thomc@TMA-2:~/Workspace/VirtualH89/VirtualH89$ make -version
GNU Make 4.3
Built for x86_64-pc-linux-gnu
Copyright (C) 1988-2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.


homc@TMA-2:~/Workspace/VirtualH89/VirtualH89$ cat /etc/issue
Ubuntu 23.04 \n \l

thomc@TMA-2:~/Workspace/VirtualH89$ make
g++ -o v89  -lpthread -lGL -lglut
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o: in function `_start':
(.text+0x1b): undefined reference to `main'
collect2: error: ld returned 1 exit status
make: *** [Makefile:13: v89] Error 1


-Thom

Douglas Miller

unread,
May 20, 2023, 11:38:09 AM5/20/23
to se...@googlegroups.com

That error has nothing to directly do with the $(wildcard ...) make function. Assuming this is Mark's "v89", he'll need to comment on that. It looks like there are missing files.

Thom Cherryhomes

unread,
May 20, 2023, 11:43:43 AM5/20/23
to se...@googlegroups.com
${SOURCES} isn't being filled, therefore ${OBJECTS} isn't getting filled via substitution.

-Thom


Mark Garlanger

unread,
May 20, 2023, 12:11:39 PM5/20/23
to se...@googlegroups.com
Strange, I haven't built it on linux for a while, but I did build it for mac, and that worked. Have you tried changing the SOURCES assignment to specify all the .cpp files explicitly?

Mark


Mark Garlanger

unread,
May 20, 2023, 12:31:00 PM5/20/23
to se...@googlegroups.com
Actually, saw the same issue when I tried to compile on my linux machine and by changing the SOURCE line to include the path to the source directory it allowed me to successfully compile:

SOURCES = $(wildcard VirtualH89/Src/*.cpp)

When I ran it, the performance was much worse than the last time I ran it under linux, I don't know if my hardware/drivers (opengl) changed or if there is some other issue. Let me know if the performance is bad on your system.

Mark

Thom Cherryhomes

unread,
May 20, 2023, 12:31:08 PM5/20/23
to se...@googlegroups.com
no, not yet, that should work though.
-Thom

On Sat, May 20, 2023 at 11:11 AM Mark Garlanger <garl...@gmail.com> wrote:

Thom Cherryhomes

unread,
May 20, 2023, 12:43:13 PM5/20/23
to se...@googlegroups.com
Yup indeed, explicitly adding the sources to the makefile causes it to build, and the resulting binary runs.

-Thom
Reply all
Reply to author
Forward
0 new messages