Difference between revisions of "Programming"
Line 66: | Line 66: | ||
==Stupid Library Compile Warnings!!!== | ==Stupid Library Compile Warnings!!!== | ||
− | ===PubSubClient=== | + | ===PubSubClient (2.8.0)=== |
<code> | <code> | ||
.pio/libdeps/SugarBush_SS_Climate_BME280/PubSubClient/src/PubSubClient.cpp: In member function 'boolean PubSubClient::publish_P(const char*, const uint8_t*, unsigned int, boolean)': | .pio/libdeps/SugarBush_SS_Climate_BME280/PubSubClient/src/PubSubClient.cpp: In member function 'boolean PubSubClient::publish_P(const char*, const uint8_t*, unsigned int, boolean)': | ||
+ | |||
.pio/libdeps/SugarBush_SS_Climate_BME280/PubSubClient/src/PubSubClient.cpp:523:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] | .pio/libdeps/SugarBush_SS_Climate_BME280/PubSubClient/src/PubSubClient.cpp:523:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] | ||
+ | |||
return (rc == expectedLength); | return (rc == expectedLength); | ||
+ | |||
^ | ^ | ||
+ | </code> | ||
+ | |||
+ | FIX: Add unsigned to the definition of expectedLength | ||
+ | |||
+ | ===SimpleTimer (0.0.0-alpha+sha.b30890b8f7)=== | ||
+ | <code> | ||
.pio/libdeps/SugarBush_SS_Climate_BME280/SimpleTimer/SimpleTimer.cpp: In member function 'void SimpleTimer::run()': | .pio/libdeps/SugarBush_SS_Climate_BME280/SimpleTimer/SimpleTimer.cpp: In member function 'void SimpleTimer::run()': | ||
+ | |||
.pio/libdeps/SugarBush_SS_Climate_BME280/SimpleTimer/SimpleTimer.cpp:66:60: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] | .pio/libdeps/SugarBush_SS_Climate_BME280/SimpleTimer/SimpleTimer.cpp:66:60: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] | ||
+ | |||
if (current_millis - prev_millis[i] >= delays[i]) { | if (current_millis - prev_millis[i] >= delays[i]) { | ||
+ | |||
+ | ^ | ||
</code> | </code> | ||
+ | |||
+ | FIX: Add unsigned to the definition of delays[] | ||
==Troubleshooting== | ==Troubleshooting== |
Revision as of 16:25, 29 March 2021
Contents
Atom as a full IDE
- Can I turn Atom into a full C++ IDE (forum thread)
- gpp-compiler
- Creating a toolbar in Atom
bash
Dialogs
- Text Entry Dialog using zenity
- Maybe YAD would be better...
- Examples
- Ooohhh... it IS better!
Some Links
C
C++
(Apparently, a language designed to make C programmers lose their minds...)
Converting numbers to strings
Problem Solving
Error] cannot pass objects of non-trivially-copyable type 'std::string {aka class std::basic_string<char>}' through '…'
Processing
JavaScript
Arduino (Language)
Data Type Conversions
char* to String
char *message = "Hello";
String myString = String(message);
String to char*
Messing about with strings & not Strings
http://www.cplusplus.com/reference/cstring/
Specifically: strcat
Memory Saving
Stupid Library Compile Warnings!!!
PubSubClient (2.8.0)
.pio/libdeps/SugarBush_SS_Climate_BME280/PubSubClient/src/PubSubClient.cpp: In member function 'boolean PubSubClient::publish_P(const char*, const uint8_t*, unsigned int, boolean)':
.pio/libdeps/SugarBush_SS_Climate_BME280/PubSubClient/src/PubSubClient.cpp:523:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
return (rc == expectedLength);
^
FIX: Add unsigned to the definition of expectedLength
SimpleTimer (0.0.0-alpha+sha.b30890b8f7)
.pio/libdeps/SugarBush_SS_Climate_BME280/SimpleTimer/SimpleTimer.cpp: In member function 'void SimpleTimer::run()':
.pio/libdeps/SugarBush_SS_Climate_BME280/SimpleTimer/SimpleTimer.cpp:66:60: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (current_millis - prev_millis[i] >= delays[i]) {
^
FIX: Add unsigned to the definition of delays[]
Troubleshooting
When trying to compile things on a Linux machine...
You get silly-ass errors like fatal error: stdio.h: No such file or directory or other files missing that just don't make ANY sense...
sudo apt update
sudo apt install --reinstall build-essential
'Coz sumpin' borked yer compiler install...