Closed iball closed 8 years ago
After adding LCDproc.o to the Adafruit makefile, now getting the following error:
g++ AMBEFEC.o BCH.o BPTC19696.o Conf.o CRC.o Display.o DMRControl.o DMRCSBK.o DMRData.o DMRDataHeader.o DMREMB.o DMREmbeddedLC.o DMRFullLC.o DMRLookup.o DMRLC.o DMRNetwork.o DMRShortLC.o DMRSlot.o DMRSlotType.o DMRAccessControl.o DMRTrellis.o DStarControl.o DStarHeader.o DStarNetwork.o DStarSlowData.o Golay2087.o Golay24128.o Hamming.o HD44780.o LCDproc.o Log.o MMDVMHost.o Modem.o ModemSerialPort.o Mutex.o Nextion.o NullDisplay.o P25Audio.o P25Control.o P25Data.o P25LowSpeedData.o P25Network.o P25NID.o P25Utils.o QR1676.o RS129.o RS241213.o SerialController.o SerialPort.o SHA256.o StopWatch.o Sync.o TFTSerial.o Thread.o Timer.o UDPSocket.o Utils.o YSFControl.o YSFConvolution.o YSFFICH.o YSFNetwork.o YSFPayload.o -g -O3 -Wall -std=c++0x -pthread -DHD44780 -DADAFRUIT_DISPLAY -I/usr/local/include -lwiringPi -lwiringPiDev -lpthread -o MMDVMHost
LCDproc.o:(.bss+0x90): multiple definition of m_buffer2' HD44780.o:(.bss+0x80): first defined here LCDproc.o: In function
CTimer::start()':
/home/pi/MMDVMHost/Timer.h:58: multiple definition of `m_buffer1'
HD44780.o:/home/pi/MMDVMHost/HD44780.cpp:913: first defined here
collect2: error: ld returned 1 exit status
Makefile:19: recipe for target 'MMDVMHost' failed
make: *\ [MMDVMHost] Error 1
I confirm that doesn't make ! same error .....
73
Adding LCDproc.o to the Adafruit Makefile does not make sense in my opinion. You cannot use LCDproc and Adafruit displays at the same time. So when you compile Makefile.Pi.Adafruit LCDproc is not needed.
Made a mistake before. Can confirm the error. Forgot to pull the latest changes. There are two options:
I'd prefer a rename as LCDproc can be used on any computer as it uses a network connection to the actual LCDproc server (I think) so is usable from any system. It should always be available and be controlled from MMDVM.ini.
What about a Makefile.Pi.LCDproc for that?
Makefile.Pi.HD44780 does also not compile cleanly:
make -f Makefile.Pi.HD44780
[...]
make: *** No rule to make target 'LCDProc.o', needed by 'MMDVMHost'. Schluss.
and:
$ make -f Makefile.Pi.OLED
[...]
make: *** No rule to make target 'LCDProc.o', needed by 'MMDVMHost'. Schluss.
and:
$ make -f Makefile.Pi.PCF8574
[...]
make: *** No rule to make target 'LCDProc.o', needed by 'MMDVMHost'. Schluss.
LCDProc is itself independent of hardware, for example the LCDproc support within the host can run under Windows so I want to retain that. So no compile time option for it. However Tony needs to address these issues.
The Makefiles mentioned above suffer from a simple typo: They contain "LCDProc.o" instead of "LCDproc.o".
Damn typo in the Makefiles - LCDProc instead of LCDproc!
The buffers can easily be renamed.
m_buffer1, 2, 3 and 4 are defined in HD44780.cpp, so I'd suggest 5 & 6 for want of a better name!?
Flo, are you in a position to make the changes and submit a PR, else I'm not going to get a chance till sometime later this week.
On Mon, 31 Oct 2016, 13:40 Florian (DF2ET), notifications@github.com wrote:
The Makefiles mentioned above suffer from a simple typo: They contain "LCDProc.o" instead of "LCDproc.o".
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/g4klx/MMDVMHost/issues/189#issuecomment-257272836, or mute the thread https://github.com/notifications/unsubscribe-auth/AQf_4pR-XR96tUhxf43-HPokTGV98Eytks5q5dPDgaJpZM4KkrCJ .
A J Corbett
G0WFV
I made some corrections. See https://github.com/phl0/MMDVMHost/tree/corrLCDproc Before I PR that, I would like to have the approval of the original author @g0wfv :-)
Ah you did. Would you like to have a quick view at my changes? I renamed m_buffer1 and m_buffer2 to m_displaybuffer1 and m_displaybuffer2 (and corrected the typos in the Makefiles).
@phl0 I tried it using your repo:
g++ AMBEFEC.o BCH.o BPTC19696.o Conf.o CRC.o Display.o DMRControl.o DMRCSBK.o DMRData.o DMRDataHeader.o DMREMB.o DMREmbeddedLC.o DMRFullLC.o DMRLookup.o DMRLC.o DMRNetwork.o DMRShortLC.o DMRSlot.o DMRSlotType.o DMRAccessControl.o DMRTrellis.o DStarControl.o DStarHeader.o DStarNetwork.o DStarSlowData.o Golay2087.o Golay24128.o Hamming.o HD44780.o Log.o MMDVMHost.o Modem.o ModemSerialPort.o Mutex.o Nextion.o NullDisplay.o P25Audio.o P25Control.o P25Data.o P25LowSpeedData.o P25Network.o P25NID.o P25Utils.o QR1676.o RS129.o RS241213.o SerialController.o SerialPort.o SHA256.o StopWatch.o Sync.o TFTSerial.o Thread.o Timer.o UDPSocket.o Utils.o YSFControl.o YSFConvolution.o YSFFICH.o YSFNetwork.o YSFPayload.o -g -O3 -Wall -std=c++0x -pthread -DHD44780 -DADAFRUIT_DISPLAY -I/usr/local/include -lwiringPi -lwiringPiDev -lpthread -o MMDVMHost
MMDVMHost.o: In function CMMDVMHost::createDisplay()': /home/pi/MMDVMHost2/MMDVMHost/MMDVMHost.cpp:1056: undefined reference to
CLCDproc::CLCDproc(std::string, unsigned int, unsigned int, std::string const&, unsigned int, bool, bool, bool, bool)'
collect2: error: ld returned 1 exit status
Makefile:19: recipe for target 'MMDVMHost' failed
make: *\ [MMDVMHost] Error 1
@iball We have that corrected now. Are you sure you checked out my branch named "corrLCDproc" and not my master (which is a copy of @G4KLX master).
As aligned with @g0wfv on Twitter I made a PR of my changes.
Thanks Flo
On Mon, 31 Oct 2016, 14:11 Florian (DF2ET), notifications@github.com wrote:
As aligned with @g0wfv https://github.com/g0wfv I made a PR of my changes.
— You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/g4klx/MMDVMHost/issues/189#issuecomment-257278242, or mute the thread https://github.com/notifications/unsubscribe-auth/AQf_4rsBYAWNMKWmF8Ziu6mhTYjSK-1tks5q5drkgaJpZM4KkrCJ .
A J Corbett
G0WFV
@phl0 Your branch compiles cleanly now using Makefile.Pi.Adafruit.
g++ AMBEFEC.o BCH.o BPTC19696.o Conf.o CRC.o Display.o DMRControl.o DMRCSBK.o DMRData.o DMRDataHeader.o DMREMB.o DMREmbeddedLC.o DMRFullLC.o DMRLookup.o DMRLC.o DMRNetwork.o DMRShortLC.o DMRSlot.o DMRSlotType.o DMRAccessControl.o DMRTrellis.o DStarControl.o DStarHeader.o DStarNetwork.o DStarSlowData.o Golay2087.o Golay24128.o Hamming.o HD44780.o LCDproc.o Log.o MMDVMHost.o Modem.o ModemSerialPort.o Mutex.o Nextion.o NullDisplay.o P25Audio.o P25Control.o P25Data.o P25LowSpeedData.o P25Network.o P25NID.o P25Utils.o QR1676.o RS129.o RS241213.o SerialController.o SerialPort.o SHA256.o StopWatch.o Sync.o TFTSerial.o Thread.o Timer.o UDPSocket.o Utils.o YSFControl.o YSFConvolution.o YSFFICH.o YSFNetwork.o YSFPayload.o -g -O3 -Wall -std=c++0x -pthread -DHD44780 -DADAFRUIT_DISPLAY -I/usr/local/include -lwiringPi -lwiringPiDev -lpthread -o MMDVMHost
Can confirm that 8303a94 now compiles correctly.
Following instructions for compiling using the Adafruit makefile:
g++ AMBEFEC.o BCH.o BPTC19696.o Conf.o CRC.o Display.o DMRControl.o DMRCSBK.o DMRData.o DMRDataHeader.o DMREMB.o DMREmbeddedLC.o DMRFullLC.o DMRLookup.o DMRLC.o DMRNetwork.o DMRShortLC.o DMRSlot.o DMRSlotType.o DMRAccessControl.o DMRTrellis.o DStarControl.o DStarHeader.o DStarNetwork.o DStarSlowData.o Golay2087.o Golay24128.o Hamming.o HD44780.o Log.o MMDVMHost.o Modem.o ModemSerialPort.o Mutex.o Nextion.o NullDisplay.o P25Audio.o P25Control.o P25Data.o P25LowSpeedData.o P25Network.o P25NID.o P25Utils.o QR1676.o RS129.o RS241213.o SerialController.o SerialPort.o SHA256.o StopWatch.o Sync.o TFTSerial.o Thread.o Timer.o UDPSocket.o Utils.o YSFControl.o YSFConvolution.o YSFFICH.o YSFNetwork.o YSFPayload.o -g -O3 -Wall -std=c++0x -pthread -DHD44780 -DADAFRUIT_DISPLAY -I/usr/local/include -lwiringPi -lwiringPiDev -lpthread -o MMDVMHost MMDVMHost.o: In function
CMMDVMHost::createDisplay()': /home/pi/MMDVMHost/MMDVMHost.cpp:1056: undefined reference to
CLCDproc::CLCDproc(std::string, unsigned int, unsigned int, std::string const&, unsigned int, bool, bool, bool, bool)' collect2: error: ld returned 1 exit status Makefile:19: recipe for target 'MMDVMHost' failed make: *** [MMDVMHost] Error 1