When starting libreoffice from cli, a debug flag error is thrown

env | grep -i valgrind
in bash and fish-

Hmm... weird

Exactly. But I found out earlier when installed, it automatically got inserted and was not needed to create the problem. Probably that $VALGRIND variable. Perhaps the fish environment disproves this direction.

I don't think that there is no valgrind variable set.
EDIT:

I don't think there is a valgrind variable set.
Excuse me for my poor grammar.

Interesting. So why does the script add it as an option? Need better script expertise.

I’d hack at the script, saving original of course, and using echo commands to trace where the script goes and what variables are. Developers probably chuckling at this. :joy:

How would one go about that?

I am learning python, and is the main reason, among many, for installing linux on my system, so I want to know how to do this to get better acquainted with unices in general.

I’ll give you a simple example. Here’s the original /usr/lib/libreoffice/program/soffice starting at line 138:

if echo "$checks" | grep -q "cc" ; then
    echo "Error: The debug options --record, --backtrace, --strace, and --valgrind cannot be used together."
    echo "       Please, use them one by one."
    exit 1;
fi

Add this:

if echo "$checks" | grep -q "cc" ; then
    echo "value of checks = $checks"  #ADDED
    echo "Error: The debug options --record, --backtrace, --strace, and --valgrind cannot be used together."
    echo "       Please, use them one by one."
    exit 1;
fi

I added the line you did, @BIll_MI in your code, but the value of $checks is nothing. I ran the soffice script multiple times and the output is the same.

:frowning:

I’m not sure I understand why this does what it says it does. Here’s a more useful hack for seeing some key variables for the checking to follow. My 2 lines are marked #ADDED:

# count number of selected checks; only one is allowed
checks=
EXTRAOPT=
# force the --valgrind option if the VALGRIND variable is set
test -n "$VALGRIND" && EXTRAOPT="--valgrind"

# force the --record option if the RR variable is set
test -n "$RR" && EXTRAOPT="--record"

echo "options = $@"          #ADDED
echo "EXTRAOPT = $EXTRAOPT"  #ADDED
for arg in $@ $EXTRAOPT ; do

Here is my output with successful startup:

~$ libreoffice --writer
options = --writer
EXTRAOPT = 

(soffice:28702): Gdk-WARNING **: gdk_window_set_icon_list: icons too large

(soffice:28702): Gdk-WARNING **: gdk_window_set_icon_list: icons too large

After making the changes you did, @Bill_MI, it STILL didn't work!

I think at this point we'll just have to compare our soffice files (original ones).

It just whacked me. Do you have a grep command? I saw that error earlier.

What’s your terminal say with this command?
echo "$checks" | grep -q "cc"

It MUST produce an error! Should be no output.

didn't say a thing, so you're right-no output. But what does this mean?

It means I’m stumped - it should have no output. Your post 20 had an error but it was fish environment?

Yeah, here's the error for a new reference.

OK, one more while we’re setup. I don’t get here so I’ll never see an output. But you do.

I added a second line to see what this command being checked does different on your system.

if echo "$checks" | grep -q "cc" ; then
    echo "value of checks = $checks"  #ADDED
    echo "$checks" | grep -q "cc"     #ADDED
    echo "Error: The debug options --record, --backtrace, --strace, and --valgrind cannot be used together."
    echo "       Please, use them one by one."
    exit 1;
fi

I added that line like you did in your script, but nothing seems to have changed.

Dang… take the -q out of the #ADDED line. No output with that.

Nothing changed.

Edit: Another thing. For the past few days, a purple exclamation mark icon has been appearing on my system tray telling me that the update info is outdated. Can this be related? Sorry for not bringing this up earlier.

I’m stumped.

if echo "$checks" | grep -q "cc" ; then
    echo "value of checks = $checks"  #ADDED
    echo "$checks" | grep "cc"     #ADDED
    echo "Error: The debug options --record, --backtrace, --strace, and --valgrind cannot be used together."
    echo "       Please, use them one by one."
    exit 1;
fi

The 1st line “if” tests that echo command for null output.
We both get proper null output so “then” should skip the rest.
It skips on mine but not on yours. You continue to that message and failure.
Or I’m plain missing something staring right at me.

I feel we’re on top of it but I have to go out for a few hours. I’m really curious what I’m missing.

I GOT IT GUYS!

I didn't know what was wrong with the code snippet @Bill_MI posted, so in my soffice file i commented it out.

Then I ran the file.

IT WORKED! Libreoffice now works!

I don't really need the debug options, so they can stay commented out for the time being, but IT WORKS!

Thanks, guys. I really appreciate it.

However, there are some errors and there may be some other obstacle later on.

Well, a workaround is good for now but the core cause is still elusive. I hope someone with more expertise can figure it out - I’m not sure how it’s supposed to work. :confused:

Good Luck!