Tiiffi / mcrcon

Rcon client for Minecraft
https://github.com/Tiiffi/mcrcon/
zlib License
834 stars 116 forks source link

Can't get mcrcon to work on Mac OSX 11.1 #82

Open Marterido opened 3 years ago

Marterido commented 3 years ago

I am playing around with making a MC server work inside of docker. I am following this tutorial: https://www.youtube.com/watch?v=TxjvC6GRjkU&t=924s.

Everything worked fine but i can't get mcrcon to work on my Mac. I tried to use the steps that are in the description but when I do sudo make install I get an error saying: ginstall -vD mcrcon /usr/local/bin/mcrcon make: ginstall: No such file or directory make: *** [install] Error 1.

Am I doing something wrong or is this a known issue?

terokorp commented 3 years ago

That error message means that you don't have 'make' installed or your computer cant find it.

I don't know about macs, but someone on Stack Overflow has asked how to install make and gcc https://stackoverflow.com/questions/10265742/how-to-install-make-and-gcc-on-a-mac I hope this leads you to right direction and you will get it work.

Marterido commented 3 years ago

Make seems to be installed. If I do make -v I get proper info. I tried to install it with brew, but I get the same problem.

terokorp commented 3 years ago

ah, sorry, my mistake, its ginstall that it cant find

Marterido commented 3 years ago

I managed to fix it. But I do want to say that I have no experience with any of this and I kinda just tried a whole bunch of things and experimented with what I could find. So here goes.

With some testing I found that the command ginstall doesn't work at all on Mac. So my first change was to just use the command install. When I changed it I didn't get the error from before anymore, but another error came up:

install -vD mcrcon /usr/local/bin/mcrcon
install: illegal option -- D
usage: install [-bCcpSsv] [-B suffix] [-f flags] [-g group] [-m mode]
               [-o owner] file1 file2
       install [-bCcpSsv] [-B suffix] [-f flags] [-g group] [-m mode]
               [-o owner] file1 ... fileN directory
       install -d [-v] [-g group] [-m mode] [-o owner] directory ...
make: *** [install] Error 64

Apparently the install command doesn't like the -D attribute on Mac. As you can see the -D argument is not in the list of usable arguments while on Linux it is in there.

So I removed the -D from the Makefile. This is what line 40 and 41 now look like in the Makefile:

$(INSTALL) -v $(EXENAME) $(DESTDIR)$(PREFIX)/bin/$(EXENAME)
$(INSTALL) -v -m 0644 mcrcon.1 $(DESTDIR)$(PREFIX)/share/man/man1/mcrcon.1

After I made those changes I did the sudo make install again and got this message stating that everything worked:

install -v mcrcon /usr/local/bin/mcrcon
install: mcrcon -> /usr/local/bin/mcrcon
install -v -m 0644 mcrcon.1 /usr/local/share/man/man1/mcrcon.1
install: mcrcon.1 -> /usr/local/share/man/man1/mcrcon.1

mcrcon installed. Run 'make uninstall' if you want to uninstall.

Hope I didn't corrupt the install by doing this, but everything seems to be running correctly and I can now send commands to the server.

I'd thought I'd share my solution just in case I did something terribly wrong or in case it'll help someone.

Here are the sources I found that helped me figure this out: https://github.com/todbot/blink1/issues/252

Tiiffi commented 2 years ago

Unfortunately I don't have access for Mac so I can't test builds on MacOS but I am trying to make this project easily buildable on Linux, Windows ja MacOS.

Any testing and help on MacOs is appreciated and I will try to address Mac specific issues in next releases.

It is unfortunate that many basic tools are not 100% compatible between different platforms (install etc.)