OK, the multiple definition errors are an easy fix: "extern" was left off
of the declarations in the .h files. Not sure how that ever worked! I will
push this fix to Savannah master branch.
diff --git a/backend.h b/backend.h
index fae2ee63..bd280eae 100644
--- a/backend.h
+++ b/backend.h
@@ -242,7 +242,7 @@ extern GameInfo gameInfo;
/* ICS vars used with backend.c and zippy.c */
enum ICS_TYPE { ICS_GENERIC, ICS_ICC, ICS_FICS, ICS_CHESSNET /* not really
supported */ };
-enum ICS_TYPE ics_type;
+extern enum ICS_TYPE ics_type;
/* pgntags.c prototypes
*/
diff --git a/evalgraph.h b/evalgraph.h
index f4b4f920..2ab0e3c1 100644
--- a/evalgraph.h
+++ b/evalgraph.h
@@ -34,7 +34,7 @@ typedef enum { PEN_NONE, PEN_BLACK, PEN_DOTTED,
PEN_BLUEDOTTED, PEN_BOLDWHITE, P
#define OPEN 0
/* Module globals */
-ChessProgramStats_Move * currPvInfo;
+extern ChessProgramStats_Move * currPvInfo;
extern int currFirst;
extern int currLast;
extern int currCurrent;
On Tue, Feb 28, 2023 at 12:21 PM Tim Mann <[email protected]> wrote:
> The person (Arun Persaud) who used to update the "official" xboard source
> on savannah.gnu.org by merging in HGM's work mostly left the project
> several years ago, and I haven't been active in the project for many years
> other than to do occasional administrative things when needed. So I assume
> HGM's source is quite a ways ahead of what's on Savannah. Looking at the
> git log, I see the source on Savannah has not changed much since v4.9.1.
> was tagged.
>
> I actually don't know how to git clone HGM's source. I'm not sure if he
> has a git server or only gitweb. I wasn't able to guess the right URL to
> clone from via git:// or http://. HGM, if you're tuned in, can you answer
> that?
>
> To clone the Savannah source, see these pages:
> https://savannah.gnu.org/maintenance/UsingGit/ and
> https://savannah.gnu.org/projects/xboard/. Getting a read-only clone may
> be fine to start with, but if you are going to work on the code, I
> encourage you to sign up for a membership on Savannah (it's free, of
> course), and I can add you as an official project member there. I will have
> to review how to do that, but I used to know. :-)
>
> I see the compile instructions in the README are out of date for starting
> from a git clone. They are missing the initial step of running
> ./autogen.sh. I tried the following on my current Ubuntu 22.04 system,
> which I think is more or less correct.
>
> ./autogen.sh
> ./configure
> make
>
> However, the current git source at the head of the master branch
> ultimately fails to link with lots of "multiple definition" errors on
> ics_type and currPvInfo. Maybe an incompatibility with the current gcc.
>
> You may not even get that far if you don't have enough packages installed
> on your Linux. On Ubuntu, "apt get build-essential" helps, but there are
> more developer packages needed that build-essential doesn't pull in.
>
>
>
> On Tue, Feb 28, 2023 at 11:32 AM Tim Mann <[email protected]> wrote:
>
>> Thanks for letting me know. I get so many requests to post or join the
>> mailing list from spambots that I needed to make sure you were a real human
>> wanting to join!
>>
>> I haven't compiled the source for a while, but it was pretty
>> straightforward last time I did. I'll see if there are any hints, and of
>> course you can ask on the list.
>>
>> On Mon, Feb 27, 2023 at 2:32 PM Rick Groszkiewicz <[email protected]>
>> wrote:
>>
>>> I have been working with HGM on this project:
>>>
>>> https://talkchess.com/forum3/viewtopic.php?f=7&t=80829&sid=e69a2860788f0963c60097ec4e9b1f88&start=160
>>>
>>> I was hoping for guidance on compiling the xboard source - either the
>>> official code, or HGM's latest:
>>>
>>> https://git.savannah.gnu.org/cgit/xboard.git/tag/?h=v4.9.1
>>>
>>> http://hgm.nubati.net/cgi-bin/gitweb.cgi?p=xboard.git;a=shortlog;h=refs/heads/v4.9.x
>>>
>>> Rick Groszkiewicz
>>>
>>