-
Notifications
You must be signed in to change notification settings - Fork 157
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
I've done something wrong #6
Comments
Ok, so further testing, doesn't compile on ubuntu, but does on debian:jessie, all good |
same on windows.. cygwin... normal squashfs compiles... with your patches it doesn't... errors starts at unknown type name ‘lzma_vli’... |
Please provide more information, as it builds fine here (Ubuntu 14.04 32 bit, gcc v4.8.4):
|
I also has this question in ubuntu 14.04 64bit, gcc (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4 |
The errors that @freman posted are specifically from The specific errors seem to suggest that there are some things from the lzma library that
If you get the same errors, then the problem is with your lzma library, not with the patches. If it builds fine, then it's probably an issue with the |
So I had the same issue as the op:
Here's what I tried: I follow the instructions by @devttys0. Took me a while to catch on that no matter how many times I modified the Makefile, it was constantly overwritten by the build.sh as squashfs4.3.tar.gz gets downloaded and uncompressed by running the script. So I commented the following lines in the build.sh script and forced the patches :
While this solved the first issue, it created another one:
From there, I had to commented the redefinitions in squashfs_fs.h and got rid of the lonely end-comment tag in unsquashfs.c. Then you get the following:
Commented out the lines from 1786 to 1789 as I cannot find where
Next:
At this point, I gave up for now. No issue compiling squashfs without the patches. |
I was redirected to this issue when looking for the similar issue on Cygwin instead:
It appears that lzma.h header file cannot be located properly because of the same lzma.h header file defined in ./LZMA directory, realized that after some trial and error steps:
I solved this by renaming the collided LZMA.h to LZMA2.h and renamed the source files that reference to this header file:
Recompile and it works like a charm:
|
@x9090 I get:
|
Following @x9090 hints, I had to rename all the "LZMA.h" files differently. From cd LZMA/lzmadaptive/C/7zip/Compress/LZMA/
mv LZMA.h LZMA2.h
cd LZMA/lzmalt/
mv LZMA.h LZMA3.h
# check renamings with:
#find . -name "LZMA[23].h"
./LZMA/lzmadaptive/C/7zip/Compress/LZMA/LZMA2.h
./LZMA/lzmalt/LZMA3.h
# Edit the files
nano LZMA/lzmadaptive/C/7zip/Compress/LZMA/LZMADecoder.h
nano LZMA/lzmadaptive/C/7zip/Compress/LZMA/LZMAEncoder.h
nano LZMA/lzmalt/LZMADecoder.h
# Check changes
# grep -n --color=always -H -R -i -E "LZMA.{0,1}\.h" --include="*.c" --include="*.h"
LZMA/lzmadaptive/C/7zip/Compress/LZMA/LZMA2.h:1:// LZMA.h
LZMA/lzmadaptive/C/7zip/Compress/LZMA/LZMADecoder.h:12:#include "LZMA2.h"
LZMA/lzmadaptive/C/7zip/Compress/LZMA/LZMAEncoder.h:12:#include "LZMA2.h"
LZMA/lzmalt/LZMADecoder.h:5:#include "LZMA3.h"
lzma_xz_wrapper.c:26:#include <lzma.h>
xz_wrapper.c:28:#include <lzma.h>
#make clean
#make
#make install ALL GOOD!! 🥇 |
In docker for debian jessie and ubuntu latest build.sh doesnt work |
On OSX, multiple types are not automatically resolved during pre-processing because different implementations of LZMA in the LZMA directory have a file named "LZMA.h". Fixed by renaming them to "LZMA2.h" and "LZMA3.h" while adapting the include macros. Discussion: devttys0/sasquatch#6 (comment)
On OSX, multiple types are not automatically resolved during pre-processing because different implementations of LZMA in the LZMA directory have a file named "LZMA.h". Fixed by renaming them to "LZMA2.h" and "LZMA3.h" while adapting the include macros. Discussion: devttys0/sasquatch#6 (comment)
On OSX, multiple types are not automatically resolved during pre-processing because different implementations of LZMA in the LZMA directory have a file named "LZMA.h". Fixed by renaming them to "LZMA2.h" and "LZMA3.h" while adapting the include macros. Discussion: devttys0/sasquatch#6 (comment)
On OSX, multiple types are not automatically resolved during pre-processing because different implementations of LZMA in the LZMA directory have a file named "LZMA.h". Fixed by renaming them to "LZMA2.h" and "LZMA3.h" while adapting the include macros. Discussion: devttys0/sasquatch#6 (comment)
On OSX, multiple types are not automatically resolved during pre-processing because different implementations of LZMA in the LZMA directory have a file named "LZMA.h". Fixed by renaming them to "LZMA2.h" and "LZMA3.h" while adapting the include macros. Discussion: devttys0/sasquatch#6 (comment)
On OSX, multiple types are not automatically resolved during pre-processing because different implementations of LZMA in the LZMA directory have a file named "LZMA.h". Fixed by renaming them to "LZMA2.h" and "LZMA3.h" while adapting the include macros. Discussion: devttys0/sasquatch#6 (comment)
On OSX, multiple types are not automatically resolved during pre-processing because different implementations of LZMA in the LZMA directory have a file named "LZMA.h". Fixed by renaming them to "LZMA2.h" and "LZMA3.h" while adapting the include macros. Discussion: devttys0/sasquatch#6 (comment)
On OSX, multiple types are not automatically resolved during pre-processing because different implementations of LZMA in the LZMA directory have a file named "LZMA.h". Fixed by renaming them to "LZMA2.h" and "LZMA3.h" while adapting the include macros. Discussion: devttys0/sasquatch#6 (comment)
What version of debian/ubuntu can you build this on?
The text was updated successfully, but these errors were encountered: