Libraries conflict - LiquidCrystal_I2C.h and Wire.h

Hello everybody!

Since today I'm having troubles with sketches using LiquidCrystal_I2C.h and Wire.h libraries together. I have used them many times in the past but suddenly don't work anymore, not even old sketches that did not have any problems. Simply adding the two libraries together I got the error, no need to write any code. I guess there has been an update that creates some sort of conflict? Does anyone know a workaround? :confused:

More info: I do use arduino online editor

Thanks in advance

code: (just the two libraries)

// LiquidCrystal I2C - Version: Latest 
#include <LiquidCrystal_I2C.h>

// Wire - Version: Latest 
#include <Wire.h>

/*

*/

void setup() {
    
}

void loop() {
    
}

error: (Just posting a small portion, is quite long to post it in full here):

./opt/arduino-builder/arduino-builder -compile -core-api-version 10611 -build-path /tmp/377340280 -hardware opt/arduino-builder/hardware -hardware ./opt/cores -tools opt/arduino-builder/tools -tools ./opt/tools -built-in-libraries opt/libraries/latest -libraries /tmp/939688253/pinned -libraries /tmp/939688253/custom -fqbn arduino:avr:nano:cpu=atmega328 -build-cache /tmp -verbose=false /tmp/939688253/sketch_oct26a

Multiple libraries were found for "LiquidCrystal_I2C.h"

Used: /home/admin/builder/opt/libraries/latest/jm_liquidcrystal_i2c-1-0-0

Not used: /home/admin/builder/opt/libraries/latest/liquidcrystal-i2c-1-1-2

/tmp/377340280/libraries/jm_wire-1-0-1/jm_Wire.cpp.o (symbol from plugin): In function `TwoWire::available()':

(.text+0x0): multiple definition of `TwoWire::available()'

/tmp/377340280/libraries/Wire/Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

/tmp/377340280/libraries/jm_wire-1-0-1/jm_Wire.cpp.o (symbol from plugin): In function `TwoWire::available()':

(.text+0x0): multiple definition of `TwoWire::rxBufferLength'

/tmp/377340280/libraries/Wire/Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

/tmp/377340280/libraries/jm_wire-1-0-1/jm_Wire.cpp.o (symbol from plugin): In function `TwoWire::available()':

(.text+0x0): multiple definition of `TwoWire::rxBufferIndex'

/tmp/377340280/libraries/Wire/Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

/tmp/377340280/libraries/jm_wire-1-0-1/jm_Wire.cpp.o (symbol from plugin): In function `TwoWire::available()':

(.text+0x0): multiple definition of `TwoWire::read()'

/tmp/377340280/libraries/Wire/Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

/tmp/377340280/libraries/jm_wire-1-0-1/jm_Wire.cpp.o (symbol from plugin): In function `TwoWire::available()':

(.text+0x0): multiple definition of `TwoWire::rxBuffer'

/tmp/377340280/libraries/Wire/Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

/tmp/377340280/libraries/jm_wire-1-0-1/jm_Wire.cpp.o (symbol from plugin): In function `TwoWire::available()':

(.text+0x0): multiple definition of `TwoWire::peek()'

/tmp/377340280/libraries/Wire/Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

/tmp/377340280/libraries/jm_wire-1-0-1/jm_Wire.cpp.o (symbol from plugin): In function `TwoWire::available()':

(.text+0x0): multiple definition of `TwoWire::flush()'

/tmp/377340280/libraries/Wire/Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

/tmp/377340280/libraries/jm_wire-1-0-1/jm_Wire.cpp.o (symbol from plugin): In function `TwoWire::available()':

(.text+0x0): multiple definition of `TwoWire::onReceiveService(unsigned char*, int)'

/tmp/377340280/libraries/Wire/Wire.cpp.o (symbol from plugin):(.text+0x0): first defined here

/tmp/377340280/libraries/jm_wire-1-0-1/jm_Wire.cpp.o (symbol from plugin): In function `TwoWire::available()':

(.text+0x0): multiple definition of `TwoWire::user_onReceive'

Multiple libraries were found for "LiquidCrystal_I2C.h"

This is the first issue you should deal with. When you have, you might find that your other issue is gone, too.

Fixed! as you very well pointed out, all errors have gone once I could fix the duplicates issue. I couldn't fix this in the online version though, I have moved my sketches to the desktop version.

Thanks :wink:

Regarding solving this issue in the Arduino Web Editor, you can find instructions here:
https://forum.arduino.cc/index.php?topic=436629.msg3009287#msg3009287