Magic Lantern Forum

Developing Magic Lantern => General Development => Topic started by: g3gg0 on August 06, 2017, 10:32:09 PM

Title: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 06, 2017, 10:32:09 PM
It is possible to compile magic lantern and qemu on windows, without any third-party-programs like cygwin, MSYS, VirtualBox etc by solely using windows' native linux compatibility layer.

Magic Lantern
(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Fthumb.ibb.co%2FijyvUv%2Fimage.png&hash=96a4300cfa8c6241bc83de5c5e169f39) (https://ibb.co/ijyvUv)

For those who didn't know, microsoft added wrappers to allow linux code to execute properly.
You have just to enable it, as described on microsoft's website. (https://msdn.microsoft.com/en-us/commandline/wsl/install_guide)
This gives you "bash" the famous native linux shell executable directly within windows.

OS Preparation

After you installed ubuntu, you should install a few standards tools.

Depending on the Windows 10 installation you have, you might be able to simply execute "bash" via Win+R or a menu entry called Bash or Ubuntu etc.
Then, in bash run: 

Code: [Select]
sudo apt-get update
sudo apt-get install make gcc gcc-arm-none-eabi mercurial gcc-mingw-w64 python3-docutils zip

There were also cases when you had to install python2 - your mileage may vary.

Code: [Select]
sudo apt-get install python2


Download

directly clone magic lantern from the mercurial repository using this command:
Code: [Select]
hg clone -u unified https://bitbucket.org/hudson/magic-lantern
it will download the latest version, the unified branch.


Configuration

first determine the exact arm-gcc compiler version you have either by executing
Code: [Select]
ls /usr/lib/gcc/arm-none-eabi/
or by entering
Code: [Select]
arm-none-eabi-gcc- [TAB] [TAB]


then use your favorite text editor in either linux or windows and create a file named Makefile.user with only this content:
Code: [Select]
GCC_VERSION=-4.8.2
ARM_PATH=/usr


open a windows shell at the folder where your makefiles are and run 'bash'.
and you should be able to compile Magic Lantern on windows with *native* compile speed :)



here an "all-in-one" script by a1ex, a bit modified:
Code: [Select]
# prepare system
sudo apt-get update
sudo apt-get install make gcc gcc-arm-none-eabi mercurial gcc-mingw-w64 python3-docutils zip

# download and prepare ML
hg clone -u unified https://bitbucket.org/hudson/magic-lantern
cd magic-lantern
echo "GCC_VERSION=-`ls /usr/lib/gcc/arm-none-eabi/`" > Makefile.user
echo "ARM_PATH=/usr" >> Makefile.user

# preparation complete, now build ML
cd platform/5D3.123
make zip

# desktop utilities
cd ../../modules/mlv_rec
make mlv_dump.exe
cd ../../modules/dual_iso
make cr2hdr.exe

# ports in progress (100D, 70D)
hg update 100D_merge_fw101 -C # use TAB to find the exact name
hg merge unified # or lua_fix or whatever (optional)
cd ../../platform/100D.101
make zip

# 4K with sound
hg update crop_rec_4k_mlv_snd -C
cd ../../platform/5D3.123
make clean; make zip

# quick build (autoexec.bin only, without modules)
cd ../../platform/5D3.123
make zip ML_MODULES_DYNAMIC=

# recovery (portable display test, ROM dumper, CPU info...)
hg update recovery -C
cd ../../platform/portable.000
make zip ML_MODULES_DYNAMIC=




QEMU (or: how to run Canon OS within qemu within the linux environment within windows 10 on a x64 CPU)

If you were successful with compiling magic lantern, then why not start compiling qemu?

(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Fthumb.ibb.co%2FeRFB4v%2Fimage.png&hash=93422176682b739c8bbd659a178cfe4c) (https://ibb.co/eRFB4v)

install missing packages (review those please)
Code: [Select]
sudo apt-get update
sudo apt-get install zlib1g-dev libglib2.0 autoconf libtool libsdl-console flex bison libgtk2.0-dev mtools
sudo apt-get install libsdl-console-dev

the last one - libsdl-console-dev - caused some trouble. i could not download some (unnecessary) drm graphics drivers.
i used aptitude to inspect the status and don't ask me what i did, but aptitude asked me if i want to examine its recommendations and i accepted them.
suddenly libdrm was held back and all other packages got installed.

you probably have to switch to the qemu branch
Code: [Select]
hg update qemu

then it is time to compile qemu using the script in contrib/qemu/install.sh.
make sure your magic lantern path is named "magic-lantern" else the script will abort.

hint by a1ex, doesn't happen on my system:
for some reason, the output from install.sh is truncated
opening a new terminal appears to fix it (?!)
if it still doesn't work: ./install.sh |& tee install.log
then open install.log in a text editor to read it

when it's done, do what it says:
    a) cd `pwd`/some_path_here"
    b) ../configure_eos.sh"
    c) make -j4   (or the numer of cores your CPU has)

if you now run the run_canon_fw.sh you get an error telling you:
Code: [Select]
qemu-system-arm: -chardev socket,server,nowait,path=qemu.monitor,id=monsock: Failed to bind socket to qemu.monitor: Operation not permitted

my assumption is, that either unix domain socket implementation in WSL is buggy (https://github.com/Microsoft/BashOnWindows/issues/134) or at least incompatible to qemu.
so the script run_canon_fw.sh needs some patches before it runs - remove those lines:

Code: [Select]
    -chardev socket,server,nowait,path=qemu.monitor,id=monsock \
    -mon chardev=monsock,mode=readline \


enjoy!
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: Danne on August 06, 2017, 11:50:15 PM
Did you make it work? I´ve been doing some testing cause wanted to port "Switch" to windows this way. Just finished porting Switch to Linux.
Its a bit tricky and betaish on windows. Ok, here´s my tryout to compile mlv_dump.

I had to install make(additional)
sudo apt-get install make

The result was this:(sorry the shitty formatting. I´m on windows 10(virtual box)
root@DESKTOP-NOI3633:~/magic-lantern/modules/mlv_rec# make mlv_dump                                                     make: cc: Command not found                                                                                             make: stat: ../../Makefile.user: Input/output error                                                                     [ HOST_CC  ]   mlv_dump.host.o                                                                                          /bin/sh: 1: -I../../src: not found                                                                                      Makefile:58: recipe for target 'mlv_dump.host.o' failed                                                                 make: *** [mlv_dump.host.o] Error 127                                                                                   root@DESKTOP-NOI3633:~/magic-lantern/modules/mlv_rec#

One big question mark is where are the files even downloaded(located)? After some research you can find the stuff here:

Open up cmd and enter:
Code: [Select]
cd %localappdata%\Lxss\
Code: [Select]
start . (enter)
Go into root folder and find magic-lantern and change your Makefile.user.default to what g3gg0 describes above.
Rename Makefile.user.default to Makefile.user
Now go back to ubuntu bash terminal and compile. You´ll find the goodies doing step 1 again. Well no goodies yet since compiling didn´t work. Yet...


Here is what I get when trying to compile platform(5D mark III) . (upload ing pic since formatting doesn´t cut it.
(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Fs1.postimg.org%2F61gomoiqn%2FScreen_Shot_2017-08-07_at_00.15.44.png&hash=6c291d26e12c5f8bbdeb42bca77529c9)
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 07, 2017, 07:45:22 AM
okay thanks for your feedback. tried also installing package gcc ?

my makefile.user has only one additional difference that should have no impact:
Code: [Select]
HOST_CC?=$(shell which gcc)
HOST_LD?=$(shell which ld)
HOST_AR?=$(shell which ar)

can you run "make V=1" and check if there is something obvious?
e.g. wrong compiler being called etc

to run the compiler i used to open up cmd.exe, change to the ML path and execute "bash".
as i am on windows insider, my installation might be a bit different though
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: Danne on August 07, 2017, 08:45:42 AM
I really been messing with mac the last 10 years but I will do my best.

make V=1 What´s this, never heard of?

Not sure how you mean here:
Quote
to run the compiler i used to open up cmd.exe, change to the ML path and execute "bash".

Tried following, going from cmd.exe:
Code: [Select]
C:\Users\Danne\AppData\Local\lxss\root\magic-lantern\platform\5D3.113>bash -c make V=1
make: *** No targets specified and no makefile found.  Stop.

make V=1 in bash/ubuntu
(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Fs1.postimg.org%2Fb30ntegof%2FScreen_Shot_2017-08-07_at_08.48.08.png&hash=4876dd685cdb86451d289ea7b3478b57)

Trying to install gcc gets me this:(wrong version?)
Code: [Select]
gcc is already the newest version (4:5.3.1-1ubuntu1).
Have some things todo but I´ll check in later today.


Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 07, 2017, 09:03:53 AM
hi danne,

i cannot compare with my system, as i am at work right now.
but it calls "cc" only which is incorrect. it should call :
/usr/bin/arm-none-eabi-gcc
which get constructed from $(ARM_PATH) etc

can you restore the original Makefile.user.default so it is existent next to your Makefile.user?

also the  "| -v " is a bit weird. should call some executable there?
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: Danne on August 07, 2017, 02:42:41 PM
Keep getting errors. Am I calling the correct gcc? Here is my setup:
(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Fs1.postimg.org%2Flv7exdupb%2FScreen_Shot_2017-08-07_at_14.47.39.png&hash=6d4eb71b80bfa1d45940c189358aaa6b)
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 07, 2017, 03:37:52 PM
my guess is that your Makefile.user is causing the wrong cc to get called (?)
you have copied it properly over from Makefile.user.default?
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: onesolo on August 07, 2017, 03:48:10 PM

then modify/add those lines in your Makefile.user:

Code: [Select]
GCC_VERSION=-4.8.2
ARM_PATH=/usr
ARM_LIBGCC_PATH=/usr/lib/gcc/arm-$(ARM_ABI)/$(subst -,,$(GCC_VERSION))
CC=$(CROSS_COMPILE)gcc

open a windows shell at the folder where your makefiles are and run 'bash'.
(as i am on windows insider, my installation might be a bit different though)

and you should be able to compile Magic Lantern on windows with *native* compile speed :)

So, I did fine until I got the part to the makefile.user ....
Can anyone help me?
Where is that makefile.user file?! and after that, what should I do? I don't understand what are the steps that one has to do in order to compile.
Do I have to download the source code of ML ?! If yes, from where and to where?
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: Danne on August 07, 2017, 04:30:39 PM
Ok, it works. And fast! Let me break it down so not others do my(stupid) mistakes:

Install Ubuntu on windows. See first post
Install necessary compiler tools. See first post

1 - open up cmd.exe print bash and hit enter
2 - download magic lantern.
hg clone -u unified https://bitbucket.org/hudson/magic-lantern
3 - apply the changes in makefile suggested in g3gg0 first post
4 - print cd magic-lantern(and then go to whatever you want to compile)
5 - when compiling is done print cmd.exe hit enter then print start .(dot) hit enter again(will open up the current folder with the goodies)

Retrospect:
See to it that file extensions are visible in windows. I missed the .default part in makefile.user.default and when erasing it really didn´t erase the extension at all.
Another thing. My lost in folder space shenanigans in the second post are maybe good for getting acquinted with Ubuntu folder tree on windows otherwise I´d stay off those commands.
Phew, good exercise. Now I have good idea what to do when porting "Switch" over to windows.
Thanks g3gg0.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 08, 2017, 01:30:13 AM
update: added qemu (holy shit is that cool....)
and thanks for your feedback, can you also review this one?
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: Danne on August 08, 2017, 07:20:24 AM
I think I got it working. Here is my loose notes on my qemu install.

libs installs fine
Code: [Select]
sudo apt-get install zlib1g-dev libglib2.0 autoconf libtool libsdl-console flex bison
Terminal ending with following last lines:
Code: [Select]
173 new root certificates were added to your trust store.
Import process completed.
Done 
done.
root@DESKTOP-NOI3633:/mnt/c/Users/Danne#

Now install following:
Code: [Select]
sudo apt-get install libsdl-console-devSeems to get stuck at:
Code: [Select]
Processing triggers for man-db (2.7.5-1) ...  When I try to copy the line the process seems to abort. Anyway. I might come back here if next steps are unsuccessful.

Next:
open cmd.exe
Code: [Select]
bash
Code: [Select]
cd magic-lantern/contrib/qemu
Code: [Select]
./install.sh
This pops up:
Code: [Select]
This will setup QEMU for emulating Magic Lantern. 
Thou shalt not be afraid of compiling stuff on Linux ;)
Continue? [y/n]
Hit y script runs and ends with:
Code: [Select]
Connecting to download.qemu.org (download.qemu.org)|172.99.69.163|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 25464996 (24M) [application/x-bzip2]

     0K ........ ........ ........         100% 1.79M=14s

2017-08-08 00:57:22 (1.79 MB/s) - ‘qemu-2.5.0.tar.bz2’ saved [25464996/25464996]

And script comes to this conclusion:
Code: [Select]
./install.sh: line 38: cd: .git: No such file or directory
Initialized empty Git repository in /mnt/c/Users/Danne/qemu/qemu-2.5.0/.git/
Hold on! Script wasn´t even done yet...Script continues and:
Code: [Select]
Enjoy!
This will setup QEMU for emulating Magic Lantern.
Thou shalt not be afraid of compiling stuff on Linux ;)
Continue? [y/n]

Crap! Mistakingly hit another button than y got this:
root@DESKTOP-NOI3633:/mnt/c/Users/Danne/magic-lantern/contrib/qemu#
Trying to hit y anyway
root@DESKTOP-NOI3633:/mnt/c/Users/Danne/magic-lantern/contrib/qemu# y
No luck:
Code: [Select]
y: command not found  Ok, maybe qemu already is installed?
Ran the installer again and:

Code: [Select]
Next steps:
===========

1) Compile QEMU

    cd /mnt/c/Users/Danne/qemu/qemu-2.5.0
    ../configure_eos.sh
    make -j1

Setting up QEMU on Linux...
Using gcc --std=gnu99 / g++ with -Wno-error=deprecated-declarations
Options>
Disabling libtool due to broken chain support

Script continues ans install, do make etc...

Now I remove these lines from the run_canon_fw.sh script
Code: [Select]
   -chardev socket,server,nowait,path=qemu.monitor,id=monsock \
    -mon chardev=monsock,mode=readline \

Let´s run the script
Code: [Select]
cd /mnt/c/Users/Danne/qemu
Code: [Select]
./run_canon_fw.sh
Some hick up on libutils. I hit a button then the compiling bible continues. I think for 20 minutes?

Finally this:
Code: [Select]
DebugMsg= (overriden) 
qemu-system-arm: -M: requires an argument
root@DESKTOP-NOI3633:/mnt/c/Users/Danne/qemu# j

That´s it?



*by the way should the 1) Compile QEMU instruction be changed from:
Code: [Select]
cd /mnt/c/Users/Danne/qemu/qemu-2.5.0 to:
Code: [Select]
cd /mnt/c/Users/Danne/qemu/qemuThe run_canon_fw.sh script is located in qemu folder, not qemu-2.5.0
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 08, 2017, 08:46:08 AM
i tried again yesterday - installation works as i described - without any glitch.
that .git message is normal
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: Danne on August 08, 2017, 11:19:03 AM
Ok, great. Thanks for qemu install :)
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: dfort on August 09, 2017, 07:52:52 AM
Nice!

Just tried it out and thought I'd document my mistakes so others won't have to suffer through them.

I couldn't install from the "store" even after creating a Microsoft account and signing up for the "Windows Insider" program:

(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Ffarm5.staticflickr.com%2F4366%2F36059705260_c3c3bcebe5.jpg&hash=1439f0118e30c259921d101592b992b3)

The trick was to use the alternate installation method, turning on the Developer settings:

(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Ffarm5.staticflickr.com%2F4409%2F36059745160_ee1bac04f2.jpg&hash=8edbaae707683881bb1fb70e42e467a2) (https://flic.kr/p/WWtBW9)

Then just type "bash" in a cmd window:

(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Ffarm5.staticflickr.com%2F4405%2F35649025143_a70dbbd74e_c.jpg&hash=ed4942b7a88e1114b82626e2e2ce0c97) (https://flic.kr/p/Wjbzbx)

Note that the browser in the background is on the installation instructions in case you need to find that URL.

The packages didn't install on the first attempt but after doing a recommended "sudo apt-get update" it went smoothly. Well, almost. The instructions are to create a Makefile.user file that has:

Code: [Select]
GCC_VERSION=-4.8.2
I kept getting this error:

Code: [Select]
make: *** No rule to make target '/usr/lib/gcc/arm-none-eabi/4.8.2/libgcc.a', needed by 'gcc-libgcc.a'.  Stop.
Turns out I had a different version of gcc so I had to make this change:

Code: [Select]
GCC_VERSION=-4.9.3
I also made the mistake of cloning the magic-lantern repository in /mnt/c/User/dfort instead of the "real" home directory, /home/dfort. No sweat, just copied it to my home directory and that got rid of some weird messages about "untrusted" files.

One package you might consider adding is "zip" in order to "make zip" or even a cr2hdr-win.zip. Interesting that I couldn't build a Linux mlv_dump but running "make mlv_dump.exe" worked perfectly to cross compile a Windows binary.

Looking forward to trying QEMU next.



Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 09, 2017, 09:52:34 AM
can you call "lsb_release -a" and post the result?
maybe when installing from store you get a newer release.
this would explain the newer compiler version.

the directory where the project is in, is not important.
you can leave it anywhere, then you can edit it with windows tools easily.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on August 09, 2017, 10:11:13 AM
I've set up this Win10 VM (https://developer.microsoft.com/en-us/windows/downloads/virtual-machines), which is a fresh installation with bash, visual studio and a few others preinstalled. The Linux subsystem is based on Ubuntu Xenial.

Package list is mostly OK; had to run "sudo apt-get update" before, and also had to install "zip".

To find out what GCC version you have, type:
Code: [Select]
arm-none-eabi-gcc- [TAB] [TAB]

Result: in my case it was 4.9.3.

For Makefile.user I prefer rewriting only the lines I need changed (rather than copying the entire Makefile.user.default). Therefore, I've created it from scratch (just these 2 lines):
Code: [Select]
GCC_VERSION=-4.9.3
ARM_PATH=/usr

In a nutshell:

Code: [Select]
# prepare system
sudo apt-get update
sudo apt-get install make gcc gcc-arm-none-eabi mercurial gcc-mingw-w64 python3-docutils zip
hg clone -u unified https://bitbucket.org/hudson/magic-lantern
cd magic-lantern
echo "GCC_VERSION=-4.9.3" > Makefile.user
echo "ARM_PATH=/usr" >> Makefile.user

# preparation complete, now build ML
cd platform/5D3.123
make zip

# desktop utilities
cd ../../modules/mlv_rec
make mlv_dump.exe
cd ../../modules/dual_iso
make cr2hdr.exe

Some more:
Code: [Select]
# ports in progress (100D, 70D)
hg update 100D_merge_fw101 -C # use TAB to find the exact name
hg merge unified # or lua_fix or whatever (optional)
cd ../../platform/100D.101
make zip

# 4K with sound
hg update crop_rec_4k_mlv_snd -C
cd ../../platform/5D3.123
make clean; make zip

# quick build (autoexec.bin only, without modules)
cd ../../platform/5D3.123
make zip ML_MODULES_DYNAMIC=

# recovery (portable display test, ROM dumper, CPU info...)
hg update recovery -C
cd ../../platform/portable.000
make zip ML_MODULES_DYNAMIC=

For QEMU, I had to install some additional packages and an X server (see e.g. Running Linux desktop apps on the Windows Subsystem for Linux (https://ctrl.blog/entry/how-to-x-on-wsl)):
Code: [Select]
# not sure if this step is needed
sudo nano /etc/apt/sources.list
# add deb-src entries (copy the deb ones and replace deb with deb-src)
sudo apt-get update
sudo apt-get build-dep qemu

# from g3gg0
sudo apt-get install zlib1g-dev libglib2.0 autoconf libtool libsdl-console flex bison
sudo apt-get install libsdl-console-dev

# needed for GUI
sudo apt-get install libgtk2.0-dev

# needed to access the virtual SD/CF images
sudo apt-get install mtools

# install QEMU
hg update qemu -C
cd contrib/qemu
./install.sh
# for some reason, the output from install.sh is truncated
# opening a new terminal appears to fix it (?!)
# if it still doesn't work: ./install.sh |& tee install.log
# then open install.log in a text editor to read it

# anyway, now follow the instructions from install.sh
cd /path/to/qemu/qemu-2.5.0
../configure_eos.sh
make -j4
cd ..

# copy the ROMs from your camera (e.g. sdcard/ML/LOGS/ROM*.BIN -> qemu/5D3/ROM*.BIN)

# now run the emulation
export DISPLAY=:0
./run_canon_fw.sh 60D,firmware="boot=0"

(https://www.magiclantern.fm/forum/proxy.php?request=http%3A%2F%2Fa1ex.magiclantern.fm%2Fbleeding-edge%2Fwin10%2Fqemu-60D.png&hash=938de7f682be7f31c2754772c0010713)

TODO:
- find out how did g3gg0 get that nice GUI for QEMU (mine has no menus) [DONE]
- install a GUI for Mercurial [g3gg0 suggests TortoiseHg]
- check build environment for common errors and suggest how to fix / what to install if things go wrong (also on other usual operating systems)
- mount the SD image used in QEMU and install ML there [halfway done]
- sample debugging session with GDB+QEMU, maybe also IDA
- run the QEMU test suite (a large part of it won't work, as it's hardcoded for my ROMs)
- how to run a Lua script
- bonus: show how to build CHDK
- ... ?
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 09, 2017, 01:56:58 PM
The Linux subsystem is based on Ubuntu Xenial.

okay, thats the difference. (could not test a fresh Win10 as i only have 2MBit/s ;) )
mine is based on trusty and apt-get upgrade doesn't do anything.
then i will update my post later with your information.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: bouncyball on August 09, 2017, 06:52:40 PM
@g3gg0

mine is based on trusty and apt-get upgrade doesn't do anything.

Do:
Code: [Select]
sudo do-release-upgrade
and you're gonna get upgraded system to Xenial :)

bb
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: dfort on August 09, 2017, 07:02:52 PM
can you call "lsb_release -a" and post the result?

Code: [Select]
dfort@DELL-LAPTOP:~/qemu$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.2 LTS
Release:        16.04
Codename:       xenial


the directory where the project is in, is not important.
you can leave it anywhere, then you can edit it with windows tools easily.

When magic-lantern is in the Windows home directory I'm getting these messages:

Code: [Select]
not trusting file /mnt/c/Users/dfort/magic-lantern/.hg/hgrc from untrusted user root, group root
It doesn't seem to cause any problems. Of course you're right if you want to use Windows tools put it somewhere Windows can access it. I searched for the location of /home/dfort using Windows Explorer and couldn't find it.

Just started trying to get QEMU working. Right off the bat I was getting this:

Code: [Select]
Could not initialize SDL(No available video device) - exiting
After reading a1ex's post I thought I'd try it without "build-dep qemu" just to see if that is really necessary. libgtk2.0-dev installed fine but then I got:

Code: [Select]
gtk initialization failed
And "build-dep qemu" needs the source files:

Code: [Select]
dfort@DELL-LAPTOP:~/qemu$ sudo apt-get build-dep qemu
[sudo] password for dfort:
Reading package lists... Done
E: You must put some 'source' URIs in your sources.list

The article a1ex pointed out (https://ctrl.blog/entry/how-to-x-on-wsl) recommends using Cygwin X (http://x.cygwin.com/) or vcXsrv (https://sourceforge.net/projects/vcxsrv/) but it looks like a1ex found a more elegant solution. BTW--nice to see nano being used. It is much easier to learn than vi.

(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Ffarm5.staticflickr.com%2F4355%2F36419123856_b46a40724f_z.jpg&hash=de23bf85c033d0b938ebc55a3f2e294b) (https://flic.kr/p/XuewGy)

Of course to build from source requires a compiler and related tools so now I've got a full-blown Linux development environment in Windows.

Still:

Code: [Select]
export DISPLAY=:0
./run_canon_fw.sh 5D3,firmware="boot=1"
...
gtk initialization failed
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: Danne on August 09, 2017, 07:14:45 PM
Quote
export DISPLAY=:0
./run_canon_fw.sh 5D3,firmware="boot=1"
...
gtk initialization failed

Try installing XMING and start it.
https://sourceforge.net/projects/xming/
Also install x11-apps
Code: [Select]
sudo apt-get install x11-appsWrite:
export DISPLAY=:0 enter in terminal
Then run your commands.

Quote
I searched for the location of /home/dfort
Open up cmd.exe write start .(dot) enter?

I just ported mlv_dump processing through Switch(Linux version in Windows  :P) Some more things to to do before releasing...



 
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: dfort on August 09, 2017, 08:10:39 PM
Open up cmd.exe write start .(dot) enter?

Nope--not there.

Tried your suggestions installing Xming but still no QEMU x11 window. Also tried VcXsrv--no go. Got a lot of stuff installed now that probably isn't necessary.

Code: [Select]
sudo apt-get install xorg openbox x11-apps x11-xserver-utils libsdl-console-dev kitchen-sink
Ok--maybe not the kitchen sink yet.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: Danne on August 09, 2017, 08:33:56 PM
Kitchen sink ;).

Seems to be a mercurial issue when not trusting files. Don´t think another location gonna fix it.
https://stackoverflow.com/questions/8535866/not-trusting-file-hg-hgrc-from-untrusted-user-root-group-dev
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 09, 2017, 10:50:34 PM
Code: [Select]
sudo do-release-upgrade

doh. right. i meant 'dist-upgrade', not 'upgrade' but this doesnt help either.
thanks!
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 09, 2017, 11:13:04 PM
- find out how did g3gg0 get that nice GUI for QEMU (mine has no menus)
oh eh. i used VNC only, no GUI at all...
this might explain the localhost:5900 ;)

- install a GUI for Mercurial
i can absolutely recommend TortoiseHg (https://tortoisehg.bitbucket.io/) and its workbench (https://tortoisehg.bitbucket.io/img/vt_history.png)
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 09, 2017, 11:22:18 PM
I couldn't install from the "store" even after creating a Microsoft account and signing up for the "Windows Insider" program:
The trick was to use the alternate installation method, turning on the Developer settings:

(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Ffarm5.staticflickr.com%2F4409%2F36059745160_ee1bac04f2.jpg&hash=8edbaae707683881bb1fb70e42e467a2) (https://flic.kr/p/WWtBW9)

this is the procedure described there? (https://msdn.microsoft.com/en-us/commandline/wsl/install_guide), right?
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 09, 2017, 11:24:36 PM
if someone wants to use an XServer on windows, i used to run vcXsrv (https://sourceforge.net/projects/vcxsrv/) and it works quite well.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: irvcobb on August 10, 2017, 12:28:39 AM
As one with some Linux experience, no fear of the command line, and little compiling experience, my observations may be of value?

Starting with a clean Linux install on Win 10, I can get all the way to here with no problem:

Code: [Select]
qemu$ ./run_canon-fw.sh 600D
make: Entering directory '/home/irv/qemu/qemu-2.5.0'
Please call configure before running make!
Makefile:47: recipe for target 'config-host.mak' failed
make: *** [config-host.mak] Error 1
make: Leaving directory '/home/irv/qemu/qemu-2.5.0'

Then a cd qemu-2.5.0 and ./configure seem to sort things.

Did I miss something?

Compiling now.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 10, 2017, 12:37:43 AM
did you run install.sh under magic-lantern/contrib/qemu ?
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: irvcobb on August 10, 2017, 12:41:16 AM
Spoke too soon. Failed with this:

Code: [Select]
hw/arm/. ./eos/dbi/logging.o: In function 'eos_logging_ init':
/home/irv/qemu/qemu-2.5.0/hw/arm/. ./eos/dbi/logging.c:1801: undefined reference to 'memory_set_access_logging_cb'
target-arm/op_helper.o: In function 'helper_log_ldr':
/home/irv/qemu/qemu-2.5.0/tar get-arm/op_helper.c:634: undefined reference to 'log-ldr-cb'
target-arm/op_helper.o: In function 'helper_log_str':
/home/irv/qemu/qemu-2.5.O/tar et-arm/op_helper.c:639: undefined reference to 'log_srt-cb'
collect2: error: ld returned 1 exit status
Makefile:193: recipe for target 'qemu-system-aarch64' failed
make[1] *** [qemu-system-aarch64] Error 1
Makefile:184: recipe for target 'subdir-aarch64-softmu' failed
make: *** [subdir-aarch64-softnunu] Error 2
make: Leaving directory ' /home/irv/qemu/qemu—2.5.O'
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: irvcobb on August 10, 2017, 12:44:12 AM
did you run install.sh under magic-lantern/contrib/qemu ?
Yes.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 10, 2017, 01:00:32 AM
i tried also:
https://pastebin.com/YaCiuRFk
what does it look like when you run install and the commands it tells you to run?
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: dfort on August 10, 2017, 02:14:51 AM
this is the procedure described there? (https://msdn.microsoft.com/en-us/commandline/wsl/install_guide), right?

Right.

Seems to be a mercurial issue when not trusting files. Don´t think another location gonna fix it.
https://stackoverflow.com/questions/8535866/not-trusting-file-hg-hgrc-from-untrusted-user-root-group-dev

Actually, moving the repository from /mnt/c/Users/dfort to /home/dfort did get rid of those message. Though that hides it from regular Windows programs like SourceTree.

Got QEMU working!


Code: [Select]
DISPLAY=:0 ./run_canon_fw.sh 5D3,firmware="boot=1"
(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Ffarm5.staticflickr.com%2F4417%2F36334084311_f8f92668d2_z.jpg&hash=123af26ea23a057657795a9602464845) (https://flic.kr/p/XmHFpv)
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: dfort on August 10, 2017, 03:29:46 AM
QEMU is working--great, but how are you guys mounting the card image so you can install ML?

I was going to suggest adding kpartx  to the package list because it is required for the mount.sh script, but it isn't working.

Code: [Select]
sudo kpartx -av sd.img
Kernel not configured for semaphores (System V IPC). Not using udev synchronisation code.
/dev/mapper/control: open failed: No such device
Failure to communicate with kernel device-mapper driver.
Check that device-mapper is available in the kernel.
Incompatible libdevmapper (unknown version) and kernel driver (unknown version).
device mapper prerequisites not met
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: irvcobb on August 10, 2017, 04:12:54 AM
i tried also:
https://pastebin.com/YaCiuRFk
what does it look like when you run install and the commands it tells you to run?

I got it sorted. PEBCAK.   :)
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on August 10, 2017, 09:12:17 AM
- find out how did g3gg0 get that nice GUI for QEMU (mine has no menus)

Figured it out - installing libgtk2.0-dev *before* building QEMU does the trick. Updated the screenshot.

The DryOS shell:
(https://www.magiclantern.fm/forum/proxy.php?request=http%3A%2F%2Fa1ex.magiclantern.fm%2Fbleeding-edge%2Fwin10%2Fqemu-60D-drysh.png&hash=c2c283a7edac8f2ecb0dcc08a5136c80) (https://www.magiclantern.fm/forum/proxy.php?request=http%3A%2F%2Fa1ex.magiclantern.fm%2Fbleeding-edge%2Fwin10%2Fqemu-60D-drysh2.png&hash=d45d5c28df5a02f91ec99fdb336b0c7f)

QEMU is working--great, but how are you guys mounting the card image so you can install ML?

One scriptable way is using mtools - if the image uses FAT16/FAT32. I'm currently using it in the test suite (tests/run_tests.sh) and in this script: run_ml_all_cams.sh (which is not meant for interactive use, but for running some - usually short - test on more than one camera model, then saving a log and/or some screenshots). Without any mounting tools, we can use that script to copy ML on the card image:

Code: [Select]
# this is non-interactive (no display, but we'll ask it to save a screenshot, just for kicks)
# tip: use INCREMENTAL=1 to avoid running "make clean", and AUTOEXEC_ONLY=1 to avoid building/copying modules
ML_PLATFORMS="60D.111/" ML_CHANGESET="unified" TIMEOUT=10 SCREENSHOT=1 ./run_ml_all_cams.sh

# now we have ML on the card, so we can run it interactively
./run_canon_fw.sh 60D,firmware="boot=1"

(https://www.magiclantern.fm/forum/proxy.php?request=http%3A%2F%2Fa1ex.magiclantern.fm%2Fbleeding-edge%2Fwin10%2Fqemu-60D-ml.png&hash=50eeb2ce679d8c153397d20db9d7a798)

Note: the "boot=0" or "boot=1" (which looks that way because I couldn't figure out how to add custom command-line options in QEMU, so I've hijacked an existing one) is used to change the boot flag in the ROM. On the very first ML install, the ROM dumps have the boot flag turned off. Subsequent ROM dumps (e.g. after formatting the card) will have the boot flag enabled. For cameras that do not run ML yet, the boot flag will be disabled. Therefore, for this example I'm assuming nothing about the boot flag state and always setting it manually.

Todo: a "make install_qemu" would be handy.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: bpv5P on August 10, 2017, 10:36:14 AM
Great, now people can run open source code in a closed source system...
Isn't it simple to do a debian live usb? Faster compilation times, no bugs.
Microsoft is trying hard to gain market again, since the inception of android.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 10, 2017, 11:16:14 AM
Great, now people can run open source code in a closed source system...
Isn't it simple to do a debian live usb? Faster compilation times, no bugs.
Microsoft is trying hard to gain market again, since the inception of android.
please dont shift this into a "closed source vs open source" flamewar kind of discussion.

1. for various reasons i am working with windows. my life is not "for ML only" and so i cannot simply switch to another OS.
2. booting a VM with linux, which i did for years now, is just extra overhead - rebooting into another OS is not an option.
3. i don't care whether my kernel is called NTKERNEL or Linux. i focus practical solutions, not idealism.
4. Open Source implies openness, which allows exactly this and that's what makes Open Source cool
5. this pipe dream of having a full blown GNU/* environment without quirks and compromieses no matter which OS i use, is finally real - why not accept it?
6. its the counterpart of WINE - its not noticeable slower.

and finally:
-> if its possible and doesn't cost too much effort, it will be done
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: bpv5P on August 10, 2017, 12:48:00 PM
please dont shift this into a "closed source vs open source" flamewar kind of discussion.

I'm not, but seems you are. I'm using meritocracy here, not idealism. Booting on the real system instead of 'emulation' has many benefits, beyond usability.

Quote
3. i don't care whether my kernel is called NTKERNEL or Linux. i focus practical solutions, not idealism.

You would be surprised how practical a unix system is, compared to Windows. Especially for development.

Quote
4. Open Source implies openness, which allows exactly this and that's what makes Open Source cool

I'm not stopping people from doing it and I'm not against it. Actually companies do this all the time with open source code.
What I'm saying is, again, that booting on real OS has many benefits.

Quote
5. this pipe dream of having a full blown GNU/* environment without quirks and compromieses no matter which OS i use, is finally real - why not accept it?

It's not the same. Can you tell what's going on in your system, without the code? You don't.
And, if you don't, how can you fix bugs or be sure it's secure? You g3gg0, for example, should be concerned about the security point, since you're designing the crypto module for ML. See all the accusations against Windows 10 about privacy. People that brings cryptography to general public are being monitored and this is not "tinfoil hat" bullshit, it's real.
If the crypto module ever go mainline, you should be concerned about these points, since it would potentially influence many people in need for this feature (like journalists in war zones).
But, you are the devs, not me. I'm just a random guy.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: irvcobb on August 10, 2017, 08:31:00 PM
Successfully complied qemu and discovered "next steps" 1-3 which I was too dull to see yesterday.

In step 3, mount.sh throws an error because it needs kpartx. So install kpartx. Then this:

Code: [Select]
Kernel not configured for semaphores (System V IPC). Not using udev synchronisation code.
/dev/mapper/control: open failed: Permission denied
Failure to communicate with kernel device-mapper driver.
Incompatible libdevmapper (unknown version) and kernel driver (unknown version).
device mapper prerequisites not met

What am I missing?
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: dfort on August 11, 2017, 05:46:16 AM
What am I missing?

I asked the same question (about kpartx) and a1ex came up with a good suggestion (http://www.magiclantern.fm/forum/index.php?topic=20214.msg188309#msg188309).
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: bouncyball on August 11, 2017, 08:52:51 AM
5. this pipe dream of having a full blown GNU/* environment without quirks and compromieses no matter which OS i use, is finally real - why not accept it?
6. its the counterpart of WINE - its not noticeable slower.
Yeah all is right except maybe the fact that WSL (windows subsystem for Linux) can't run 32bit ELFs, only 64 bit ones.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on August 11, 2017, 09:28:44 AM
Tried gdb (required to run some models in QEMU, including 5D3). The one from Ubuntu repository doesn't work (it stops the emulation when it shouldn't). Tried https://launchpad.net/gcc-arm-embedded (gcc 5.4, Linux installation tarball), but that didn't work either, as it has 32-bit binaries.

As I'm currently on a slow connection, I'll let somebody else figure it out (best guess: compile the 64-bit version from sources, or use the Windows install package). The command you need to get running is:
Code: [Select]
./run_canon_fw.sh 5D3/firmware="boot=0" -s -S & arm-none-eabi-gdb -x 5D3/patches.gdb

or similar for any other camera model that has a patches.gdb file.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: irvcobb on August 11, 2017, 03:15:12 PM
I asked the same question (about kpartx) and a1ex came up with a good suggestion (http://www.magiclantern.fm/forum/index.php?topic=20214.msg188309#msg188309).
Thanks for the help, I'm trying it now.
Obviously I'm having real trouble with reading comprehension this week. :-(
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: dfort on August 12, 2017, 08:32:58 AM
best guess: compile the 64-bit version from sources

This worked for my system.

Code: [Select]
sudo apt-get build-dep gdb-arm-none-eabi
sudo apt-get source --compile gdb-arm-none-eabi
sudo dpkg -i gdb-arm-none-eabi_7.11.1-0ubuntu1~16.5+9_amd64.deb

Note the name of the deb file because
Code: [Select]
sudo dpkg -i gdb-arm-none-eabi.debdoesn't work--and after it is all over there's a mess to clean up but it works!

Slight change on the command:

Code: [Select]
DISPLAY=:0 ./run_canon_fw.sh 5D3,firmware="boot=0" -s -S & arm-none-eabi-gdb -x 5D3/patches.gdb
I keep getting:
Code: [Select]
Program received signal SIGTRAP, Trace/breakpoint trap.
0xff13659c in ?? ()
on the 5D3 but it does the same thing on the Mac.

However, it works great on the 700D!

Ok, my question. How do you copy to sd.img without mounting it?

This worked for me:
Code: [Select]
. ./mtools_setup.sh
mcopy -o -i $MSD ../magic-lantern/minimal/5D3.113/autoexec.bin ::

(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Ffarm5.staticflickr.com%2F4426%2F36377984861_9aa0412a4f_z.jpg&hash=1c1c6fe681e3f22e5661206bf711ee75) (https://flic.kr/p/XqAFvx)

Yeah, I know, where's the Canon GUI? It works on the 700D:

(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Ffarm5.staticflickr.com%2F4416%2F36515516065_aed9e8290e_n.jpg&hash=d0d938457beab3d932e315a7e5637c88) (https://flic.kr/p/XCKyKc)
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: g3gg0 on August 12, 2017, 10:10:46 AM
yep, its 64 bits only, no 32 bit ABI adaption layer.
so probably good to upvote the uservoice (https://wpdev.uservoice.com/forums/266908-command-prompt-console-bash-on-ubuntu-on-windo/suggestions/13377507-please-add-32-bit-elf-support-to-the-kernel?page=1&per_page=20) regarding this issue. i already voted for it a year ago, but its not essential.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on August 12, 2017, 11:16:41 AM
Quote
I keep getting:

Program received signal SIGTRAP, Trace/breakpoint trap.
0xff13659c in ?? ()

on the 5D3 but it does the same thing on the Mac.

I don't have this issue on Ubuntu with gdb 7.10.1.20160616-cvs (gcc-arm-none-eabi-5_4-2016q2). The older gdb 7.6.0.20131129-cvs (gcc-arm-none-eabi-4_8-2013q4) works too (boots the GUI on 5D3), but some features from the GDB scripts (IIRC semaphores and message queues) require gdb newer than 7.7.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: dfort on August 12, 2017, 05:36:27 PM
Interesting--I've got:

Mac (installed in: ~/gcc-arm-none-eabi-4_8-2013q4/bin/arm-none-eabi-gdb)
Code: [Select]
(gdb) show version
GNU gdb (GNU Tools for ARM Embedded Processors) 7.6.0.20131129-cvs

Ubuntu on Windows (installed in: /usr/bin/arm-none-eabi-gdb)
Code: [Select]
(gdb) show version
GNU gdb (7.11.1-0ubuntu1~16.5+9) 7.11.1

Neither boots the GUI on the 5D3 but they both do on the 700D.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on September 27, 2017, 12:05:53 AM
Found a 64-bit gdb in the PPA from https://launchpad.net/gcc-arm-embedded and updated the install script from qemu to use that one. Unfortunately, it doesn't boot the 5D3 GUI either.

Then noticed the gcc-arm-embedded builds were moved here: https://developer.arm.com/open-source/gnu-toolchain/gnu-rm

After double-checking on Ubuntu, all the 64-bit gdb versions I've tested (gdb-arm-none-eabi 7.10, gcc-arm-embedded 7.12 git) fail to boot the 5D3 GUI, while the 32-bit one (gdb-arm-none-eabi:i386 7.10) works just fine.

TODO: other than checking the 32-bit Windows binaries, not sure what other options we have...
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: dfort on September 28, 2017, 02:15:17 AM
Wonder if that's the same issue with the EOSM2. I can't get to the ML menus in QEMU and if I close the Canon menu I can't get them back. Does it work in Ubuntu?

Compiling ML works fine on Windows 10 using Linux subsystem or Cygwin on other versions of Windows so we have plenty of options but QEMU may be a good reason to setup an Ubuntu VM.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on September 28, 2017, 01:26:20 PM
The issues on M2 are new DryOS task hooks (http://www.magiclantern.fm/forum/index.php?topic=15895.msg189856#msg189856) (for ML menu) and lack of LiveView emulation (http://www.magiclantern.fm/forum/index.php?topic=15895.msg187913#msg187913) (for Canon menu only working once).
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: jml2017 on December 24, 2017, 11:38:12 AM
Hello ML/Linux Gurus,

I am trying to install QEMU and the procedure described in the first post works for me until the ./install.sh step.

At the very beginning of the script execution it exits with the following messages


(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Fthumb.ibb.co%2FeMr8aR%2Fimage.png&hash=b6867707deb4abe4daedcb6f14530b10) (https://ibb.co/eMr8aR)


I added the command to the profile and checked that the path is now correct with "echo $PATH" command:
The path variable contains
/home/myusername/gcc-arm-none-eabi-5_4-2016q3/bin

I also checked that this folder exists and is populated with files.
However, the script still exits at the same point... I restarted the bash with no success.

It may be obvious for practitionners, but my experience of linux is quite limited.  :(

I am running Windows 10 with Ubuntu installed as per first post.

Thanks for your help.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on December 24, 2017, 11:43:16 AM
Incidentally I was currently testing QEMU installation on WSL and noticed the same issue - try "hg pull; hg update qemu -C" to get the fix.

No guarantees the next steps are actually working - will try them later after a short break.

edit: seems to work; still want to re-test on a fresh installation.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: jml2017 on January 03, 2018, 10:26:09 PM
Ok, with this command, the script goes further. But now it complains that I dot have the right GDB

(https://www.magiclantern.fm/forum/proxy.php?request=http%3A%2F%2Fthumb.ibb.co%2FdrDjCG%2Fimage.png&hash=edd8880f6f5225bbe102731883890606) (http://ibb.co/drDjCG)


I guess the best choice is option 5. However I am not sure how to install this from https://launchpad.net/gcc-arm-embedded. Which command line should I use?

Thanks for the help.
 
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on January 03, 2018, 11:02:20 PM
For trying out current stuff, I hope option 4 should work fine (that's also because most of the GDB patches that were causing trouble are no longer needed (http://www.magiclantern.fm/forum/index.php?topic=2864.msg190823#msg190823)).

For 5, just unzip a Linux 64-bit build in your home directory and add it to your PATH.

I've ran some parts of the test suite with gcc-arm-none-eabi-6-2017-q2-update, gcc-arm-none-eabi-6-2017-q2-update and gdb 8.0.50.20171008-git (all 64-bit) and worked fine. However, if I get the 5D3/patches.gdb back from changeset 93e57ce57802 (https://bitbucket.org/hudson/magic-lantern/commits/93e57ce57802) and intentionally break the RTC emulation - so the patch will execute something - all these 3 64-bit versions will fail. The 32-bit gdb from gcc-arm-none-eabi-5_4-2016q3 (and any other 32-bit versions I've tried) will work just fine.

Recently I've managed to crash the 32-bit gdb on 5D classic code, and the 64-bit gdb 8.0.50.20171008-git worked to some extent (so, the 32-bit GDB isn't bug-free either).

My conclusion so far: for serious GDB use on DIGIC 4 and 5 firmwares, you are more likely to get in trouble with a 64-bit GDB (but you should still be able to run the examples from the QEMU guide (https://bitbucket.org/hudson/magic-lantern/src/qemu/contrib/qemu/README.rst?at=qemu&fileviewer=file-view-default)).
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: jml2017 on January 04, 2018, 09:29:32 PM
I selected 4, and now it complains again about the PATH even though the PATH is correct...


(https://www.magiclantern.fm/forum/proxy.php?request=http%3A%2F%2Fthumb.ibb.co%2FbNNzEw%2Fimage.png&hash=5bc2c1592c94d54da4249128e8d4dc43) (http://ibb.co/bNNzEw)
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on January 04, 2018, 09:43:44 PM
Hm, that's a bug; it should have installed arm-none-eabi-gcc/gdb from the package manager, so they should be already in PATH and recognized as valid...

Do you get any output if you type arm-none-eabi-gdb at the bash prompt?

(will look into it, but need to reinstall the VM first)
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: jml2017 on January 05, 2018, 04:50:37 PM
That is what I get:

-bash: /home/jml2017/gcc-arm-none-eabi-5_4-2016q3/bin/arm-none-eabi-gdb: cannot execute binary file: Exec format error
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on January 05, 2018, 04:55:36 PM
Hm, it (or maybe you) somehow downloaded the 32-bit toolchain (which WSL can't run), and you have added it to PATH. If you ran the command suggested by the script, close the bash window and open a new one, as that change is temporary.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on January 07, 2018, 04:05:32 PM
Made some WSL changes to QEMU install script, but for some reason I'm unable to bring the Win10 VM back to life (and I'm not currently on a fast internet connection either). Would appreciate some help with testing latest changes (both from scratch and on top on some existing installation).

Please include an installation log, if possible, or some screenshots from the process (for example, the prompts you may get during installation). Thanks.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: jml2017 on January 12, 2018, 11:12:30 PM
Hello,
Reinstalled Ubuntu from scratch and ran the script install.sh for QEMU with no issues until I get...

---------------------------------------------------------------------------------------------------------------
Initialized empty Git repository in /home/username/qemu/qemu-2.5.0/.git/

*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: empty ident name (for <qemu@magiclantern.fm>) not allowed

-----------------------------------------------------------------------------------------------------

What should I do?

Thanks.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on January 12, 2018, 11:24:47 PM
Okay, that must be a newer git than what I've tested; will check.

If this patch works for you, I'll commit it:
Code: [Select]
--- a/contrib/qemu/install.sh
+++ b/contrib/qemu/install.sh
@@ -389,6 +389,7 @@
   git init
   # git requires a valid email; if not setup, add one for this directory only
   git config user.email || git config user.email qemu@magiclantern.fm
+  git config user.name || git config user.name qemu-eos
   git add . && git commit -q -m "$QEMU_NAME vanilla"
 fi
 cd ..
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: jml2017 on January 13, 2018, 10:39:28 AM
Okay QEMU compiles with no extra errors after adding your extra line to the script.

I am now at the step of running ./run canon_fw.sh 6D. However it errors because it cannot open /6D/SFDATA.BIN. If I understand well, I should be able to retrieve this file by running some module sf_dump on my 6D. However, I do not see this module on the ML camera menus. Where is it?

Thanks
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on January 13, 2018, 12:05:09 PM
It's covered under Installation (https://bitbucket.org/hudson/magic-lantern/src/qemu/contrib/qemu/README.rst#rst-header-installation) (no binary available yet, but I should provide one).
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: jml2017 on January 13, 2018, 07:14:42 PM
I followed steps from https://www.magiclantern.fm/forum/index.php?topic=19232.0 (https://www.magiclantern.fm/forum/index.php?topic=19232.0)

I compiled the module with
 ~/magic-lantern/modules/sf_dump$ make

Then I had to mount the SD card  so that Ubuntu subsystem of windows 10 sees it:

sudo mkdir /mnt/SD
sudo mount -t drvfs F: /mnt/SD (F: is the SD drive under windows 10)

Then  ran :
make install CF_CARD=/mnt/SD

Finally, when starting my 6D with the SD card, I could load the sf_dump module and run it to get the SFDATA.BIN.

So I ran again ./run_canon_fw.sh 6D and got the following output:

Code: [Select]
/sbin/losetup
/sbin/losetup
make: Entering directory '/home/username/qemu/qemu-2.5.0'
CHK version_gen.h
LEX convert-dtsv0-lexer.lex.c
make[1]: flex: Command not found
BISON dtc-parser.tab.c
make[1]: bison: Command not found
LEX dtc-lexer.lex.c
make[1]: flex: Command not found
make: Leaving directory '/home/username/qemu/qemu-2.5.0'
./run_canon_fw.sh 6D &

DebugMsg=0x67c8 (from GDB script)
Lockdown read 0
Lockdown read 0
Lockdown read 1
Lockdown read 1
Lockdown read 2
Lockdown read 2
Lockdown read 3
Lockdown read 3
Lockdown read 4
Lockdown read 4
00000000 - 00000FFF: eos.tcm_code
40000000 - 40000FFF: eos.tcm_data
00001000 - 1FFFFFFF: eos.ram
40001000 - 5FFFFFFF: eos.ram_uncached
F0000000 - F0FFFFFF: eos.rom0
F1000000 - F1FFFFFF: eos.rom0_mirror
F2000000 - F2FFFFFF: eos.rom0_mirror
F3000000 - F3FFFFFF: eos.rom0_mirror
F4000000 - F4FFFFFF: eos.rom0_mirror
F5000000 - F5FFFFFF: eos.rom0_mirror
F6000000 - F6FFFFFF: eos.rom0_mirror
F7000000 - F7FFFFFF: eos.rom0_mirror
F8000000 - F8FFFFFF: eos.rom1
F9000000 - F9FFFFFF: eos.rom1_mirror
FA000000 - FAFFFFFF: eos.rom1_mirror
FB000000 - FBFFFFFF: eos.rom1_mirror
FC000000 - FCFFFFFF: eos.rom1_mirror
FD000000 - FDFFFFFF: eos.rom1_mirror
FE000000 - FEFFFFFF: eos.rom1_mirror
FF000000 - FFFFFFFF: eos.rom1_mirror
C0000000 - DFFFFFFF: eos.iomem
[EOS] loading './6D/ROM0.BIN' to 0xF0000000-0xF0FFFFFF
[EOS] loading './6D/ROM1.BIN' to 0xF8000000-0xF8FFFFFF
[EOS] loading './6D/SFDATA.BIN' as serial flash, size=0x800000
[MPU] warning: non-empty spell #2 (Complete WaitID = 0x80000001 Mode group) has duplicate(s): #6
[MPU] warning: non-empty spell #52 (PROP_VIDEO_MODE) has duplicate(s): #53

[MPU] Available keys:
- Arrow keys   : Navigation
- PgUp, PgDn   : Sub dial (rear scrollwheel)
- [ and ]      : Main dial (top scrollwheel)
- SPACE        : SET
- DELETE       : guess (press only)
- M            : MENU (press only)
- P            : PLAY (press only)
- I            : INFO/DISP (press only)
- Q            : guess (press only)
- L            : LiveView (press only)
- Shift        : Half-shutter
- 0/9          : Mode dial (press only)
- B            : Open battery door
- C            : Open card door
- F10          : Power down switch
- F1           : show this help

gtk initialization failed
[MPU] WARNING: forced shutdown.

For clean shutdown, please use 'Machine -> Power Down'
(or 'system_powerdown' in QEMU monitor.)

What did I do wrong?
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on January 13, 2018, 09:05:21 PM
You need to install an X server (see earlier in this thread) and export the DISPLAY variable. This step is specific to WSL.

Make sure you can run other GUI programs (such as gitk).
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: jml2017 on January 13, 2018, 11:23:30 PM
Ok I installed VcXsrv.

Now I get this error:

(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Fthumb.ibb.co%2Ff83Aj6%2Fimage.png&hash=b0d4ed2dd8584711a9f3d9197182bdda) (https://ibb.co/f83Aj6)
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on January 13, 2018, 11:31:58 PM
Press M and start navigating the menu. For some reason, the 6D starts with main display off - was your camera configured that way before dumping the ROM? Or press I(nfo) to turn it on.

The red messages are printed by Canon firmware to the serial console (https://bitbucket.org/hudson/magic-lantern/src/qemu/contrib/qemu/HACKING.rst#rst-header-serial-console).
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: jml2017 on January 14, 2018, 12:50:45 AM
Ok it works now  :)


(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Fthumb.ibb.co%2FmxQO46%2Fimage.png&hash=c996c0446b4454fb5bdb8c490b178785) (https://ibb.co/mxQO46)

I'd like to generate the zebras and histogram I get with ML on the real camera.

I tried this command with some image
env QEMU_EOS_VRAM_PH_QR_RAW='/path/to/IMG_1234.CR2' ./run_canon_fw.sh 6D,firmware="boot=1", but I do not get anything.

What is the procedure to emulate the capture from an image and the image review that we get right after?

Thanks again.

Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: clanlee on April 09, 2018, 09:50:37 AM
I need some assistance.  I followed the instructions and got to the point where I can call up the QEMU window but I can't do anything from there.  It looks like Magic Lantern is not loaded so I have nothing but the QEMU window.  I tried pressing M for menu and all other combinations of buttons but nothing happens.

How do I load Magic Lantern within the Ubuntu environment?  Do I have to copy the contents of the nightly build somewhere?  Thank you.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: dfort on April 09, 2018, 01:27:58 PM
Do I have to copy the contents of the nightly build somewhere?

Yes, it needs to be in the sd.img or cf.img depending on which (virtual) camera you are using. I had some problems on the EOSM and it turned out there was a problem with the SFDATA.BIN file I was using.

Did you follow these instructions?

https://bitbucket.org/hudson/magic-lantern/src/qemu/contrib/qemu/README.rst

If you have a problem with the user guide or suggestions, a1ex is looking for feedback -- post it on the  How to run Magic Lantern into QEMU?!...  (https://www.magiclantern.fm/forum/index.php?topic=2864.0) topic.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: clanlee on April 09, 2018, 08:49:53 PM
Yes, it needs to be in the sd.img or cf.img depending on which (virtual) camera you are using. I had some problems on the EOSM and it turned out there was a problem with the SFDATA.BIN file I was using.

Did you follow these instructions?

https://bitbucket.org/hudson/magic-lantern/src/qemu/contrib/qemu/README.rst

If you have a problem with the user guide or suggestions, a1ex is looking for feedback -- post it on the  How to run Magic Lantern into QEMU?!...  (https://www.magiclantern.fm/forum/index.php?topic=2864.0) topic.

Yes, I was following those instructions but as a linux newbie, I ran into a road block when trying to mount the sd.img file.  I'm trying to setup the environment for the 5D3.123.  I wasn't sure where to post the question since this is specific to the Windows 10 running Ubuntu so I thought this might be a good place.

This is where I ran into the problem.  According to the instructions:
Quote
mount the card image (sd.img or cf.img) as /whatever/EOS_DIGITAL, then run make install from your platform directory:

# from the magic-lantern directory
cd platform/60D.111
make clean; make
# make sure your virtual card is mounted (this step is operating system specific)
make install
# make sure your virtual card is no longer mounted

I ran make clean; make command in the platform/5D3.123 folder.

When I attempted to mount the sd.img file, it's failing due to my lack of knowledge in linux commands.  I tried the following command:
Quote
sudo mount -t ~/qemu-eos/sd.img ~/magic-lantern/platform/5D3.123/EOS_DIGITAL -o loop

But received a message that it can't find the path in /etc/fstab.  When I listed the contents of fstab, it's nothing like the suggestions I found when searching for answer.  It's probably due to the fact that it's a virtual environment in Windows. Any help would be appreciated.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: a1ex on April 21, 2018, 07:59:51 PM
Reproduced; looks like mounting the images in WSL is different; however, it's not really needed. You should be able to use "make install_qemu".

Sorry for the delay when it comes to WSL issues; the Windows VM is painfully slow :(

It took about 1 hour to run the install script, then 15 minutes just to execute the above command (compared to 1 min + 25 seconds on the local machine). It wasn't a fresh install, just hg pull, hg update, ./install.sh and make install_qemu (so all the dependencies were already there). Hoping a physical Win10 installation is faster than that...
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: ewinemiller on July 17, 2020, 11:58:55 PM
Hey folks,

I'm giving this a whirl and running into python problems when it tries to compile the modules. The error I get is

/bin/sh: 1: python: not found

I found a reference in one thread where adding

PYTHON=python2.7

to the Makefile.user helped with this problem. For me not so much. Also tried python2. I know it's using the value because if I change it to python3, it yells at me about a syntax error in the script.

  File "../readme2modulestrings.py", line 40
    print "static char __module_string_%s_name [] MODULE_STRINGS_SECTION = %s;" % (a, c_repr(name))
          ^
SyntaxError: invalid syntax

If I type python2 or python2.7 in bash, I do get the 2.7 python shell so it does seem to be installed correctly.

Any suggestions? I did pick Ubuntu 20.04LTS for my Linux version and I'm trying to compile Danne's branch (though I had the same problem with unified).

Thanks.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: ewinemiller on July 18, 2020, 01:38:08 PM
Switched to Unbuntu 18.04LTS and it works fine.

I did pick Ubuntu 20.04LTS for my Linux version
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: theBilalFakhouri on May 10, 2022, 03:56:32 PM
Followed g3gg0 guide from the first post, didn't have problems with packages, and I was able to compile ML and QEMU successfully, very fast compiling speed compared to Cygwin :)

However I am getting this error after trying to run QEMU:
Code: [Select]
gtk initialization failed
Already installed all required packages and doubled checked that, I installed and tried many X servers (VcXsrv, cygwin x, XMING, and I didn't forget to launch it) then followed these commands:

Code: [Select]
export DISPLAY=:0
./run_canon_fw.sh 700D,firmware="boot=0"

then
Code: [Select]
DISPLAY=:0 ./run_canon_fw.sh 700D,firmware="boot=0"
without a luck, same result:
Code: [Select]
./run_canon_fw.sh 700D,firmware=boot=0

DebugMsg=0x395C (from GDB script)
Lockdown read 4
Lockdown read 4
Lockdown read 5
Lockdown read 5
Lockdown read 0
Lockdown read 0
Lockdown read 1
Lockdown read 1
Lockdown read 2
Lockdown read 2
Lockdown read 3
Lockdown read 3
00000000 - 00000FFF: eos.tcm_code
40000000 - 40000FFF: eos.tcm_data
00001000 - 0FFFFFFF: eos.ram
40001000 - 4FFFFFFF: eos.ram_uncached
F8000000 - F8FFFFFF: eos.rom1
F9000000 - F9FFFFFF: eos.rom1_mirror
FA000000 - FAFFFFFF: eos.rom1_mirror
FB000000 - FBFFFFFF: eos.rom1_mirror
FC000000 - FCFFFFFF: eos.rom1_mirror
FD000000 - FDFFFFFF: eos.rom1_mirror
FE000000 - FEFFFFFF: eos.rom1_mirror
FF000000 - FFFFFFFF: eos.rom1_mirror
C0000000 - DFFFFFFF: eos.mmio
[EOS] loading './700D/ROM1.BIN' to 0xF8000000-0xF8FFFFFF
[EOS] loading './700D/SFDATA.BIN' as serial flash, size=0x800000
[MPU] warning: non-empty spell #36 (PROP_VIDEO_MODE) has duplicate(s): #37

[MPU] Available keys:
- Arrow keys   : Navigation
- [ and ]      : Main dial (top scrollwheel)
- SPACE        : SET
- DELETE       : guess (press only)
- M            : MENU (press only)
- P            : PLAY (press only)
- I            : INFO/DISP (press only)
- Q            : guess (press only)
- L            : LiveView (press only)
- A            : Av
- Z/X          : Zoom in/out
- Shift        : Half-shutter
- 0/9          : Mode dial (press only)
- V            : Movie mode (press only)
- B            : Open battery door
- C            : Open card door
- F10          : Power down switch
- F1           : show this help

Setting BOOTDISK flag to 0
gtk initialization failed
[MPU] WARNING: forced shutdown.

For clean shutdown, please use 'Machine -> Power Down'
(or 'system_powerdown' in QEMU monitor.)

Tried to run the following just for testing:
Code: [Select]
gitk
Result:
Code: [Select]
application-specific initialization failed: couldn't connect to display ":0"
Error in startup script: couldn't connect to display ":0"
    while executing
"load /usr/lib/x86_64-linux-gnu/libtk8.6.so Tk"
    ("package ifneeded Tk 8.6.10" script)
    invoked from within
"package require Tk"
    (file "/usr/bin/gitk" line 10)

No idea what's the problem, I am using ubuntu distribution, WSL2 (it could be WSL version problem and how it handle DISPLAY?, I am not sure if your tests are done using WSL1 or WSL2).
Tested on Windows 10 x64 21H2 (19044.1645).

Also tried Windows CMD with bash command and Ubuntu cmd, same result. tried rebooting PC after I installed all packages and X server same thing.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: theBilalFakhouri on May 10, 2022, 05:27:12 PM
Got it working:

(https://www.magiclantern.fm/forum/proxy.php?request=https%3A%2F%2Fi.ibb.co%2F0Zm94Vy%2FIt-s-working-WSL2.png&hash=a2c6c8343a856c4ab292f0b5e6e10744) (https://ibb.co/TRY0jqM)

As I guessed, DISPLAY configuration has changed in WSL2, followed these guides:
https://stackoverflow.com/questions/61110603/how-to-set-up-working-x11-forwarding-on-wsl2
https://github.com/cascadium/wsl-windows-toolbar-launcher#firewall-rules

My IP was different: 172.30.208.1 instead of "172.16.0.0/12".

Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: JOELwindows7 on November 17, 2022, 05:23:09 PM
Okay, I followed but I have an issue
Code: [Select]
joelwindows7@JOEL-ROG-GL503GE:~/sauce/magic-lantern/platform/500D.111$ make zip |& tee make.log
Using /home/joelwindows7/gcc-arm-none-eabi-7-2018-q2-update/bin/arm-none-eabi-gcc (from PATH).
../../Makefile.inc:81: removing ../../platform/*/magiclantern.sym
[ RM dir   ]   /home/joelwindows7/sauce/magic-lantern/platform/500D.111/zip/
[ RM       ]   ../../platform/*/magiclantern.sym
mkdir -p /home/joelwindows7/sauce/magic-lantern/platform/500D.111/zip
[ MKDIR    ]   ML directory structure...
[ CPP      ]   magiclantern.lds
[ AS       ]   entry.o
[ AS       ]   ../../platform/500D.111/stubs.o
[ VERSION  ]   ../../platform/500D.111/version.c
[ CC       ]   version.o
[ CC       ]   backtrace.o
[ CC       ]   boot-hack.o
[ CC       ]   fio-ml.o
[ CC       ]   mem.o
../../src/mem.c: In function 'mem_total_display':
../../src/mem.c:1387:13: warning: unused variable 'total' [-Wunused-variable]
         int total = alloc_total_with_memcheck / 1024;
             ^~~~~
[ CC       ]   ico.o
[ CC       ]   edmac.o
../../src/edmac.c: In function 'edmac_channel_to_index':
../../src/edmac.c:56:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
             for (int i = 0; i < COUNT(read_edmacs); i++)
             ^~~
../../src/edmac.c:60:9: note: here
         case EDMAC_DIR_WRITE:
         ^~~~
[ CC       ]   menu.o
../../src/menu.c: In function 'menu_draw_icon':
../../src/menu.c:1827:13: warning: this 'else' clause does not guard... [-Wmisleading-indentation]
             else slider(x, y, i-1, N-1, color_slider_off_fg, color_slider_bg); return;
             ^~~~
../../src/menu.c:1827:80: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'else'
             else slider(x, y, i-1, N-1, color_slider_off_fg, color_slider_bg); return;
                                                                                ^~~~~~
../../src/menu.c: In function 'handle_ml_menu_keys':
../../src/menu.c:4511:12: warning: this statement may fall through [-Wimplicit-fallthrough=]
         if (edit_mode && !menu_lv_transparent_mode)
            ^
../../src/menu.c:4520:5: note: here
     case BGMT_WHEEL_UP:
     ^~~~
../../src/menu.c:4534:12: warning: this statement may fall through [-Wimplicit-fallthrough=]
         if (edit_mode && !menu_lv_transparent_mode)
            ^
../../src/menu.c:4543:5: note: here
     case BGMT_WHEEL_DOWN:
     ^~~~
../../src/menu.c:123:40: warning: this statement may fall through [-Wimplicit-fallthrough=]
 #define EDIT_OR_TRANSPARENT (edit_mode || menu_lv_transparent_mode)
                             ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../src/menu.c:4557:12: note: in expansion of macro 'EDIT_OR_TRANSPARENT'
         if(EDIT_OR_TRANSPARENT)
            ^~~~~~~~~~~~~~~~~~~
../../src/menu.c:4567:5: note: here
     case BGMT_WHEEL_RIGHT:
     ^~~~
../../src/menu.c:123:40: warning: this statement may fall through [-Wimplicit-fallthrough=]
 #define EDIT_OR_TRANSPARENT (edit_mode || menu_lv_transparent_mode)
                             ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../src/menu.c:4576:12: note: in expansion of macro 'EDIT_OR_TRANSPARENT'
         if(EDIT_OR_TRANSPARENT)
            ^~~~~~~~~~~~~~~~~~~
../../src/menu.c:4586:5: note: here
     case BGMT_WHEEL_LEFT:
     ^~~~
[ CC       ]   debug.o
[ CC       ]   rand.o
[ CC       ]   posix.o
[ CC       ]   util.o
[ CC       ]   imath.o
[ CC       ]   electronic_level.o
[ CC       ]   cfn.o
[ CC       ]   gui.o
[ CC       ]   picstyle-noauto.o
[ CC       ]   exmem.o
[ CC       ]   bmp.o
[ CC       ]   rbf_font.o
[ CC       ]   config.o
[ CC       ]   stdio.o
[ CC       ]   bitrate.o
[ CC       ]   lcdsensor.o
[ CC       ]   tweaks.o
[ CC       ]   tweaks-eyefi.o
[ CC       ]   lens.o
[ CC       ]   property.o
[ CC       ]   propvalues.o
[ CC       ]   gui-common.o
[ CC       ]   chdk-gui_draw.o
[ CC       ]   movtweaks.o
[ CC       ]   menuhelp.o
[ CC       ]   menuindex.o
[ CC       ]   af_patterns.o
[ CC       ]   focus.o
[ CC       ]   notify_box.o
[ CC       ]   bootflags.o
../../src/bootflags.c:73:37: warning: 'boot_flags' defined but not used [-Wunused-const-variable=]
 static struct boot_flags * const    boot_flags = NVRAM_BOOTFLAGS;;
                                     ^~~~~~~~~~
[ CC       ]   dialog_test.o
[ CC       ]   vram.o
[ CC       ]   greenscreen.o
[ CC       ]   fps-engio.o
../../src/fps-engio.c:300:12: warning: 'fps_timer_b_method' defined but not used [-Wunused-variable]
 static int fps_timer_b_method = 0;
            ^~~~~~~~~~~~~~~~~~
[ CC       ]   shoot.o
../../src/shoot.c: In function 'hdr_auto_take_pics':
../../src/shoot.c:4843:5: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
     if (!under) UNDER = 0; if (!over) OVER = 0;
     ^~
../../src/shoot.c:4843:28: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
     if (!under) UNDER = 0; if (!over) OVER = 0;
                            ^~
../../src/shoot.c:4855:21: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
                     if (!under) UNDER = 0; if (!over) OVER = 0;
                     ^~
../../src/shoot.c:4855:44: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
                     if (!under) UNDER = 0; if (!over) OVER = 0;
                                            ^~
../../src/shoot.c:4863:21: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
                     if (!under) UNDER = 0; if (!over) OVER = 0;
                     ^~
../../src/shoot.c:4863:44: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
                     if (!under) UNDER = 0; if (!over) OVER = 0;
                                            ^~
../../src/shoot.c:4877:21: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
                     if (!under) UNDER = 0; if (!over) OVER = 0;
                     ^~
../../src/shoot.c:4877:44: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
                     if (!under) UNDER = 0; if (!over) OVER = 0;
                                            ^~
../../src/shoot.c:4891:21: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
                     if (!under) UNDER = 0; if (!over) OVER = 0;
                     ^~
../../src/shoot.c:4891:44: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
                     if (!under) UNDER = 0; if (!over) OVER = 0;
                                            ^~
[ CC       ]   hdr.o
[ CC       ]   lv-img-engio.o
[ CC       ]   state-object.o
[ CC       ]   tasks.o
[ CC       ]   vsync-lite.o
[ CC       ]   tskmon.o
[ CC       ]   battery.o
[ CC       ]   imgconv.o
[ CC       ]   histogram.o
[ CC       ]   falsecolor.o
[ CC       ]   audio-ak.o
[ CC       ]   zebra.o
[ CC       ]   vectorscope.o
[ CC       ]   beep.o
[ CC       ]   crop-mode-hack.o
[ CC       ]   ph_info_disp.o
[ CC       ]   flexinfo.o
[ CC       ]   screenshot.o
[ CC       ]   fileprefix.o
[ CC       ]   lvinfo.o
[ CC       ]   builtin-enforcing.o
[ CC       ]   powersave.o
[ CC       ]   ml-cbr.o
[ CC       ]   raw.o
../../src/raw.c: In function 'raw_update_params_work':
../../src/raw.c:574:10: warning: #warning FIXME: are these values correct for 1080p or 720p? (which of them?) [-Wcpp]
         #warning FIXME: are these values correct for 1080p or 720p? (which of them?)
          ^~~~~~~
[ CC       ]   chdk-dng.o
[ CC       ]   edmac-memcpy.o
../../src/edmac-memcpy.c: In function 'edmac_memcpy_init':
../../src/edmac-memcpy.c:86:57: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
     static int AbortEDmac_check __attribute__((used)) = &AbortEDmac;
                                                         ^
[ CC       ]   console.o
[ CC       ]   tcc-glue.o
make -C ../../tcc
make[1]: Entering directory '/home/joelwindows7/sauce/magic-lantern/tcc'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/tcc'
[ CC       ]   module.o
[ AR       ]   strrchr.o
[ AR       ]   dietlibc.a
[ AR       ]   lib_a-setjmp.o
[ AR       ]   newlib-libc.a
[ CP       ]   newlib-libm.a
[ CP       ]   gcc-libgcc.a
[ LD       ]   magiclantern
[ SYMBOLS  ]   magiclantern.sym
[ CP       ]   500D_111.sym
[ CP       ]   install
cp ML-SETUP.FIR /home/joelwindows7/sauce/magic-lantern/platform/500D.111/zip/
[ VERSION  ]   ../../platform/500D.111/version.bin
[ OBJCOPY  ]   magiclantern.bin
[ STAT     ]   magiclantern.bin
magiclantern.bin: 441096 bytes
[ CC       ]   reboot.o
[ CC       ]   disp_direct.o
[ CC       ]   font_direct.o
[ CC       ]   footer.o
[ LD       ]   autoexec
[ OBJCOPY  ]   autoexec.bin
[ XOR_CHK  ]   autoexec.bin
cp autoexec.bin /home/joelwindows7/sauce/magic-lantern/platform/500D.111/zip/
cp ../../data/fonts/*.rbf /home/joelwindows7/sauce/magic-lantern/platform/500D.111/zip/ML/fonts/
cp ../../data/vram/*.lut /home/joelwindows7/sauce/magic-lantern/platform/500D.111/zip/ML/data/
cp ../../data/cropmks/*.bmp /home/joelwindows7/sauce/magic-lantern/platform/500D.111/zip/ML/cropmks/
[ SCRIPTS  ]   install_extra_data
/bin/sh: 1: Bad substitution
make: *** [../../Makefile.inc:41: install_extra_data] Error 2
Yes, that Bad substitution thingy. Can anyone pls explain, and help me out fix this issue here that somehow.. the variable reference did not work.
[/li]
[li]Try compile qemu faile! here's yesterday install.log that work:[/li][/list]
Code: [Select]

This will setup QEMU for emulating Magic Lantern.
Thou shalt not be afraid of compiling stuff on Linux ;)
Continue? [y/n]
*** You have a valid ARM GCC/GDB already installed - using that one.
*** Checking dependencies for Ubuntu/Debian...


*** Using GCC: /home/joelwindows7/gcc-arm-none-eabi-7-2018-q2-update/bin/arm-none-eabi-gcc
gcc version 7.3.1 20180622 (release) [ARM/embedded-7-branch revision 261907] (GNU Tools for Arm Embedded Processors 7-2018-q2-update)

*** Using GDB: /home/joelwindows7/gcc-arm-none-eabi-7-2018-q2-update/bin/arm-none-eabi-gdb
GNU gdb (GNU Tools for Arm Embedded Processors 7-2018-q2-update) 8.1.0.20180315-git

docutils               0.17.1
vncdotool              1.0.0

*** Setting up QEMU in /home/joelwindows7/sauce/qemu-eos/ ...

*** Directory /home/joelwindows7/sauce/qemu-eos/qemu-2.5.0 already exists.
*** To reinstall, please rename or delete it first.

- R or r       : rename to /home/joelwindows7/sauce/qemu-eos/qemu-2.5.0_2022-11-16_22-09-15/
- C or c       : make clean & rename to /home/joelwindows7/sauce/qemu-eos/qemu-2.5.0_2022-11-16_22-09-15/
- uppercase D  : delete /home/joelwindows7/sauce/qemu-eos/qemu-2.5.0/ without confirmation (!)
- any other key: cancel the operation (exit the script)

Your choice? make: Entering directory '/home/joelwindows7/sauce/qemu-eos/qemu-2.5.0'
rm -f config.mak op-i386.h opc-i386.h gen-op-i386.h op-arm.h opc-arm.h gen-op-arm.h
rm -f qemu-options.def
rm -f *.msi
find . \( -name '*.l[oa]' -o -name '*.so' -o -name '*.dll' -o -name '*.mo' -o -name '*.[oda]' \) -type f -exec rm {} +
rm -f   qemu-ga TAGS cscope.* *.pod *~ */*~
rm -f fsdev/*.pod
rm -rf .libs */.libs
rm -f qemu-img-cmds.h
rm -f ui/shader/*-vert.h ui/shader/*-frag.h
rm -f trace/generated-tracers-dtrace.dtrace*
rm -f trace/generated-tracers-dtrace.h*
rm -f config-host.h config-host.h-timestamp qemu-options.def qemu-options.def-timestamp qmp-commands.h qmp-commands.h-timestamp qapi-types.h qapi-types.h-timestamp qapi-visit.h qapi-visit.h-timestamp qapi-event.h qapi-event.h-timestamp qmp-introspect.h qmp-introspect.h-timestamp trace/generated-events.h trace/generated-events.h-timestamp trace/generated-tracers.h trace/generated-tracers.h-timestamp trace/generated-tcg-tracers.h trace/generated-tcg-tracers.h-timestamp trace/generated-helpers-wrappers.h trace/generated-helpers-wrappers.h-timestamp trace/generated-helpers.h trace/generated-helpers.h-timestamp
rm -f qmp-marshal.c qmp-marshal.c-timestamp qapi-types.c qapi-types.c-timestamp qapi-visit.c qapi-visit.c-timestamp qapi-event.c qapi-event.c-timestamp qmp-introspect.c qmp-introspect.c-timestamp trace/generated-events.c trace/generated-events.c-timestamp trace/generated-tracers.c trace/generated-tracers.c-timestamp trace/generated-helpers.c trace/generated-helpers.c-timestamp
rm -rf qapi-generated
rm -rf qga/qapi-generated
for d in  ; do \
if test -d $d; then make -C $d clean || exit 1; fi; \
rm -f $d/qemu-options.def; \
        done
make: Leaving directory '/home/joelwindows7/sauce/qemu-eos/qemu-2.5.0'


hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
Initialized empty Git repository in /home/joelwindows7/sauce/qemu-eos/qemu-2.5.0/.git/
Copying files...
Patching qemu-2.5.0 for recent compilers...
patching file block/blkdebug.c
patching file block/blkverify.c
patching file configure
patching file hw/9pfs/virtio-9p.c
patching file hw/char/exynos4210_uart.c
patching file hw/usb/bus.c
patching file net/slirp.c
patching file qemu-char.c
patching file qga/commands-posix.c
patching file util/memfd.c
Patching qemu-2.5.0 for EOS emulation...
patching file cpu-exec.c
patching file disas/arm.c
patching file exec.c
patching file gdbstub.c
patching file hw/arm/Makefile.objs
patching file hw/arm/digic.c
patching file hw/display/exynos4210_fimd.c
patching file hw/ide/qdev.c
patching file hw/sd/sd.c
patching file include/exec/exec-all.h
patching file include/exec/memory.h
patching file include/hw/elf_ops.h
patching file include/qemu/log.h
patching file memory.c
patching file qemu-log.c
patching file target-arm/cpu-qom.h
patching file target-arm/cpu.c
patching file target-arm/cpu.h
patching file target-arm/helper.c
patching file target-arm/helper.h
patching file target-arm/internals.h
patching file target-arm/op_helper.c
patching file target-arm/translate.c
patching file target-arm/translate.h
patching file vl.c

Setting up SD/CF card images...
Replace (overwrite) old sd.img and cf.img? [y/n]
'../magic-lantern/contrib/qemu/sd.img.xz' -> './sd.img.xz'
sd.img.xz: 49.8 KiB / 247.5 MiB = 0.000, 0:01
'sd.img' -> 'cf.img'

Next steps:
===========

1) Compile QEMU

   cd /home/joelwindows7/sauce/qemu-eos/qemu-2.5.0
   ../configure_eos.sh
   make -j12

Shall this script attempt to compile QEMU now? [y/n] Setting up QEMU on Linux...
Python 2.7.18
Using gcc --std=gnu99 11.3.0 / g++ 11.3.0 with flags:  -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation
Options: --target-list=arm-softmmu --disable-docs --enable-vnc --audio-drv-list= --python=python2 --enable-gtk
Disabling libtool due to broken toolchain support

ERROR: configure test passed without -Werror but failed with -Werror.
       This is probably a bug in the configure script. The failing command
       will be at the bottom of config.log.
       You can run configure with --disable-werror to bypass this check.


but as you can see above, at the configure_eos.sh it errors. here's that day's config.log:
Code: [Select]
# QEMU configure log Wed Nov 16 22:10:43 WIB 2022
# Configured with: './configure' '--target-list=arm-softmmu' '--disable-docs' '--enable-vnc' '--audio-drv-list=' '--python=python2' '--enable-gtk' '--extra-cflags= -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation'
#
gcc --std=gnu99 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c
gcc --std=gnu99 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c
config-temp/qemu-conf.c:2:2: error: #error __i386__ not defined
    2 | #error __i386__ not defined
      |  ^~~~~
gcc --std=gnu99 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c
gcc --std=gnu99 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c
config-temp/qemu-conf.c:2:2: error: #error __ILP32__ not defined
    2 | #error __ILP32__ not defined
      |  ^~~~~
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c
gcc --std=gnu99 -Werror -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -Werror -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c
gcc --std=gnu99 -Werror -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c
g++ -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wall -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -o config-temp/qemu-conf.exe config-temp/qemu-conf.cxx config-temp/qemu-conf.o -m64 -g
g++ -Werror -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wall -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -o config-temp/qemu-conf.exe config-temp/qemu-conf.cxx config-temp/qemu-conf.o -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Werror -Wstring-plus-int -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc: error: unrecognized command-line option ‘-Wstring-plus-int’
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Werror -Winitializer-overrides -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc: error: unrecognized command-line option ‘-Winitializer-overrides’
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Werror -Wendif-labels -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Werror -Wmissing-include-dirs -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Werror -Wempty-body -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Werror -Wnested-externs -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Werror -Wformat-security -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Werror -Wformat-y2k -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Werror -Winit-self -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Werror -Wignored-qualifiers -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Werror -Wold-style-declaration -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Werror -Wold-style-definition -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Werror -Wtype-limits -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -Werror -fstack-protector-strong -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -Werror -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -Werror -fno-gcse -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
config-temp/qemu-conf.c:4:2: error: #error No bug in this compiler.
    4 | #error No bug in this compiler.
      |  ^~~~~
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -Werror -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g
gcc --std=gnu99 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -fPIE -DPIE -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -pie
gcc --std=gnu99 -Werror -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -fPIE -DPIE -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -pie
gcc --std=gnu99 -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -pie -m64 -g -Wl,-z,relro -Wl,-z,now
gcc --std=gnu99 -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -pie -m64 -g -Wl,-z,relro -Wl,-z,now
gcc --std=gnu99 -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -Werror -fno-pie -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g -nopie
gcc: error: unrecognized command-line option ‘-nopie’; did you mean ‘-no-pie’?
libtool --mode=compile --tag=CC gcc --std=gnu99 -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -c -fPIE -DPIE -o config-temp/qemu-conf.o config-temp/qemu-conf.c
./configure: 124: libtool: Permission denied
gcc --std=gnu99 -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c
gcc --std=gnu99 -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c
gcc --std=gnu99 -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g
gcc --std=gnu99 -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g
gcc --std=gnu99 -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c
gcc --std=gnu99 -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c
gcc --std=gnu99 -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g -lz
gcc --std=gnu99 -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g -lz
gcc --std=gnu99 -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g -llzo2
config-temp/qemu-conf.c:1:10: fatal error: lzo/lzo1x.h: No such file or directory
    1 | #include <lzo/lzo1x.h>
      |          ^~~~~~~~~~~~~
compilation terminated.
gcc --std=gnu99 -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g -lsnappy
config-temp/qemu-conf.c:1:10: fatal error: snappy-c.h: No such file or directory
    1 | #include <snappy-c.h>
      |          ^~~~~~~~~~~~
compilation terminated.
gcc --std=gnu99 -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g -lbz2
config-temp/qemu-conf.c:1:10: fatal error: bzlib.h: No such file or directory
    1 | #include <bzlib.h>
      |          ^~~~~~~~~
compilation terminated.
gcc --std=gnu99 -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g -lxenstore -lxenctrl -lxenguest
gcc --std=gnu99 -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g -lxenstore -lxenctrl -lxenguest
gcc --std=gnu99 -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g -lxenstore -lxenctrl -lxenguest
config-temp/qemu-conf.c: In function ‘main’:
config-temp/qemu-conf.c:6:27: warning: passing argument 3 of ‘xc_domain_create’ from incompatible pointer type [-Wincompatible-pointer-types]
    6 |   xc_domain_create(xc, 0, handle, 0, NULL, NULL);
      |                           ^~~~~~
      |                           |
      |                           uint8_t * {aka unsigned char *}
In file included from config-temp/qemu-conf.c:1:
/usr/include/xenctrl.h:505:54: note: expected ‘struct xen_domctl_createdomain *’ but argument is of type ‘uint8_t *’ {aka ‘unsigned char *’}
  505 |                      struct xen_domctl_createdomain *config);
      |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
config-temp/qemu-conf.c:6:3: error: too many arguments to function ‘xc_domain_create’
    6 |   xc_domain_create(xc, 0, handle, 0, NULL, NULL);
      |   ^~~~~~~~~~~~~~~~
In file included from config-temp/qemu-conf.c:1:
/usr/include/xenctrl.h:504:5: note: declared here
  504 | int xc_domain_create(xc_interface *xch, uint32_t *pdomid,
      |     ^~~~~~~~~~~~~~~~
gcc --std=gnu99 -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g -lxenstore -lxenctrl -lxenguest
config-temp/qemu-conf.c: In function ‘main’:
config-temp/qemu-conf.c:12:3: warning: implicit declaration of function ‘xc_hvm_set_mem_type’; did you mean ‘XEN_DMOP_set_mem_type’? [-Wimplicit-function-declaration]
   12 |   xc_hvm_set_mem_type(0, 0, HVMMEM_ram_ro, 0, 0);
      |   ^~~~~~~~~~~~~~~~~~~
      |   XEN_DMOP_set_mem_type
config-temp/qemu-conf.c:12:3: warning: nested extern declaration of ‘xc_hvm_set_mem_type’ [-Wnested-externs]
config-temp/qemu-conf.c:13:3: warning: implicit declaration of function ‘xc_gnttab_open’; did you mean ‘xc_gnttab_op’? [-Wimplicit-function-declaration]
   13 |   xc_gnttab_open(NULL, 0);
      |   ^~~~~~~~~~~~~~
      |   xc_gnttab_op
config-temp/qemu-conf.c:13:3: warning: nested extern declaration of ‘xc_gnttab_open’ [-Wnested-externs]
config-temp/qemu-conf.c:15:3: warning: implicit declaration of function ‘xc_hvm_inject_msi’; did you mean ‘XEN_DMOP_inject_msi’? [-Wimplicit-function-declaration]
   15 |   xc_hvm_inject_msi(xc, 0, 0xf0000000, 0x00000000);
      |   ^~~~~~~~~~~~~~~~~
      |   XEN_DMOP_inject_msi
config-temp/qemu-conf.c:15:3: warning: nested extern declaration of ‘xc_hvm_inject_msi’ [-Wnested-externs]
config-temp/qemu-conf.c:16:3: warning: implicit declaration of function ‘xc_hvm_create_ioreq_server’; did you mean ‘XEN_DMOP_create_ioreq_server’? [-Wimplicit-function-declaration]
   16 |   xc_hvm_create_ioreq_server(xc, 0, HVM_IOREQSRV_BUFIOREQ_ATOMIC, NULL);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~
      |   XEN_DMOP_create_ioreq_server
config-temp/qemu-conf.c:16:3: warning: nested extern declaration of ‘xc_hvm_create_ioreq_server’ [-Wnested-externs]
gcc --std=gnu99 -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -Wno-error=deprecated-declarations -Wno-error=address-of-packed-member -Wno-error=stringop-truncation -Wno-error=stringop-overflow -Wno-error=format-truncation -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g -lxenstore -lxenctrl -lxenguest
config-temp/qemu-conf.c: In function ‘main’:
config-temp/qemu-conf.c:12:3: error: implicit declaration of function ‘xc_hvm_set_mem_type’; did you mean ‘XEN_DMOP_set_mem_type’? [-Werror=implicit-function-declaration]
   12 |   xc_hvm_set_mem_type(0, 0, HVMMEM_ram_ro, 0, 0);
      |   ^~~~~~~~~~~~~~~~~~~
      |   XEN_DMOP_set_mem_type
config-temp/qemu-conf.c:12:3: error: nested extern declaration of ‘xc_hvm_set_mem_type’ [-Werror=nested-externs]
config-temp/qemu-conf.c:13:3: error: implicit declaration of function ‘xc_gnttab_open’; did you mean ‘xc_gnttab_op’? [-Werror=implicit-function-declaration]
   13 |   xc_gnttab_open(NULL, 0);
      |   ^~~~~~~~~~~~~~
      |   xc_gnttab_op
config-temp/qemu-conf.c:13:3: error: nested extern declaration of ‘xc_gnttab_open’ [-Werror=nested-externs]
config-temp/qemu-conf.c:15:3: error: implicit declaration of function ‘xc_hvm_inject_msi’; did you mean ‘XEN_DMOP_inject_msi’? [-Werror=implicit-function-declaration]
   15 |   xc_hvm_inject_msi(xc, 0, 0xf0000000, 0x00000000);
      |   ^~~~~~~~~~~~~~~~~
      |   XEN_DMOP_inject_msi
config-temp/qemu-conf.c:15:3: error: nested extern declaration of ‘xc_hvm_inject_msi’ [-Werror=nested-externs]
config-temp/qemu-conf.c:16:3: error: implicit declaration of function ‘xc_hvm_create_ioreq_server’; did you mean ‘XEN_DMOP_create_ioreq_server’? [-Werror=implicit-function-declaration]
   16 |   xc_hvm_create_ioreq_server(xc, 0, HVM_IOREQSRV_BUFIOREQ_ATOMIC, NULL);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~
      |   XEN_DMOP_create_ioreq_server
config-temp/qemu-conf.c:16:3: error: nested extern declaration of ‘xc_hvm_create_ioreq_server’ [-Werror=nested-externs]
cc1: all warnings being treated as errors


I have downloaded latest WSL, and today's lsb_release -a is..
Code: [Select]
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.1 LTS
Release:        22.04
Codename:       jammy

Yeah, pls help. thancc cool and good.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: names_are_hard on November 17, 2022, 10:38:00 PM
I think that "bad substitution" error is because the version of "make" that you are using is too modern for the source you're trying to compile.

You need these changes:
https://github.com/reticulatedpines/magiclantern_simplified/commit/4a6e5e666e52e56aaf3447f9d112b3fc791e38f3
https://github.com/reticulatedpines/magiclantern_simplified/commit/af10c16925912f864f4e218532dc9ac4e5af358f

Very likely your qemu compile errors are because you are using a modern version of linux to build, and you're trying to build qemu 2.  Qemu 2 is so old it's hard to build on new systems.  I recommend using an older version of linux (debian 8 maybe), or using a newer version of qemu.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: JOELwindows7 on November 18, 2022, 11:38:55 AM
I think that "bad substitution" error is because the version of "make" that you are using is too modern for the source you're trying to compile.

You need these changes:
https://github.com/reticulatedpines/magiclantern_simplified/commit/4a6e5e666e52e56aaf3447f9d112b3fc791e38f3
https://github.com/reticulatedpines/magiclantern_simplified/commit/af10c16925912f864f4e218532dc9ac4e5af358f

Very likely your qemu compile errors are because you are using a modern version of linux to build, and you're trying to build qemu 2.  Qemu 2 is so old it's hard to build on new systems.  I recommend using an older version of linux (debian 8 maybe), or using a newer version of qemu.

Okay let's see
I've already changed things in Makefile.top
Code: [Select]
# this one is called from both platform and modules
# copies all scripts, preserving directory structure
# (simpler way to do this?)
H := \#
INSTALL_ALL_SCRIPTS = \
$(call build,SCRIPTS,\
for f in $(shell find $(SCRIPT_DIR) -type f -name *.lua); do \
dst=$(INSTALL_SCRIPTS_DIR)/$${f$H$H$(SCRIPT_DIR)/}; \
dstdir=`dirname $$dst`; \
$(MKDIR) -p $$dstdir; \
$(CP) $$f $$dst; \
done)

go to unified branch again (making sure that makefile top edit still there, re add if gone), make clean & make zip again. made progress but
Code: [Select]
joelwindows7@JOEL-ROG-GL503GE:~/sauce/magic-lantern$ cd platform/1100D.105/
joelwindows7@JOEL-ROG-GL503GE:~/sauce/magic-lantern/platform/1100D.105$ ls
ML-SETUP.FIR  Makefile.platform.default  cfn.c     features.h  include      stubs.S
Makefile      Makefile.setup.default     consts.h  gui.h       internals.h
joelwindows7@JOEL-ROG-GL503GE:~/sauce/magic-lantern/platform/1100D.105$ make zip
Using ~/gcc-arm-none-eabi-5_4-2016q3/bin/arm-none-eabi-gcc (preferred).
../../Makefile.inc:81: removing ../../platform/*/magiclantern.sym
[ RM dir   ]   /home/joelwindows7/sauce/magic-lantern/platform/1100D.105/zip/
[ RM       ]   ../../platform/*/magiclantern.sym
mkdir -p /home/joelwindows7/sauce/magic-lantern/platform/1100D.105/zip
[ MKDIR    ]   ML directory structure...
[ CPP      ]   magiclantern.lds
[ AS       ]   entry.o
[ AS       ]   ../../platform/1100D.105/stubs.o
[ VERSION  ]   ../../platform/1100D.105/version.c
[ CC       ]   version.o
[ CC       ]   backtrace.o
[ CC       ]   boot-hack.o
[ CC       ]   fio-ml.o
[ CC       ]   mem.o
../../src/mem.c: In function 'mem_total_display':
../../src/mem.c:1387:13: warning: unused variable 'total' [-Wunused-variable]
         int total = alloc_total_with_memcheck / 1024;
             ^
[ CC       ]   ico.o
[ CC       ]   edmac.o
[ CC       ]   menu.o
[ CC       ]   debug.o
[ CC       ]   rand.o
[ CC       ]   posix.o
[ CC       ]   util.o
[ CC       ]   imath.o
[ CC       ]   electronic_level.o
[ CC       ]   cfn.o
[ CC       ]   gui.o
[ CC       ]   picstyle.o
[ CC       ]   exmem.o
[ CC       ]   bmp.o
[ CC       ]   rbf_font.o
[ CC       ]   config.o
[ CC       ]   stdio.o
[ CC       ]   bitrate.o
[ CC       ]   lcdsensor.o
[ CC       ]   tweaks.o
[ CC       ]   tweaks-eyefi.o
[ CC       ]   lens.o
[ CC       ]   property.o
[ CC       ]   propvalues.o
[ CC       ]   gui-common.o
[ CC       ]   chdk-gui_draw.o
[ CC       ]   movtweaks.o
[ CC       ]   menuhelp.o
[ MENU IDX ]   ../../src/menuindexentries.h

No menuindex.txt! The "Complete user guide" menu is empty!
Run make docq to update menuindex.txt.

[ CC       ]   menuindex.o
[ CC       ]   af_patterns.o
[ CC       ]   focus.o
[ CC       ]   notify_box.o
[ CC       ]   bootflags.o
[ CC       ]   dialog_test.o
[ CC       ]   vram.o
[ CC       ]   greenscreen.o
[ CC       ]   fps-engio.o
[ CC       ]   shoot.o
[ CC       ]   hdr.o
[ CC       ]   lv-img-engio.o
[ CC       ]   state-object.o
[ CC       ]   tasks.o
[ CC       ]   vsync-lite.o
[ CC       ]   tskmon.o
[ CC       ]   battery.o
[ CC       ]   imgconv.o
[ CC       ]   histogram.o
[ CC       ]   falsecolor.o
[ CC       ]   audio-ak.o
[ CC       ]   zebra.o
[ CC       ]   vectorscope.o
[ CC       ]   beep.o
[ CC       ]   crop-mode-hack.o
[ CC       ]   ph_info_disp.o
[ CC       ]   flexinfo.o
[ CC       ]   screenshot.o
[ CC       ]   fileprefix.o
[ CC       ]   lvinfo.o
[ CC       ]   builtin-enforcing.o
[ CC       ]   powersave.o
[ CC       ]   ml-cbr.o
[ CC       ]   raw.o
../../src/raw.c: In function 'raw_update_params_work':
../../src/raw.c:623:2: warning: #warning RAW FEATURES WILL NOT WORK IN LIVEVIEW ON THIS BUILD [-Wcpp]
 #warning RAW FEATURES WILL NOT WORK IN LIVEVIEW ON THIS BUILD
  ^
[ CC       ]   chdk-dng.o
[ CC       ]   edmac-memcpy.o
[ CC       ]   console.o
[ CC       ]   tcc-glue.o
make -C ../../tcc
make[1]: Entering directory '/home/joelwindows7/sauce/magic-lantern/tcc'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/tcc'
[ CC       ]   module.o
[ CC       ]   liveview.o
[ CC       ]   reloc.o
../../src/reloc.c: In function 'reloc':
../../src/reloc.c:203:22: warning: unused variable 'reg_dest' [-Wunused-variable]
             uint32_t reg_dest    = (instr >> 12) & 0xF;
                      ^
[ AR       ]   strrchr.o
[ AR       ]   dietlibc.a
[ AR       ]   lib_a-setjmp.o
[ AR       ]   newlib-libc.a
[ CP       ]   newlib-libm.a
[ CP       ]   gcc-libgcc.a
[ LD       ]   magiclantern
[ SYMBOLS  ]   magiclantern.sym
[ CP       ]   t3_105.sym
[ CP       ]   install
cp ML-SETUP.FIR /home/joelwindows7/sauce/magic-lantern/platform/1100D.105/zip/
[ VERSION  ]   ../../platform/1100D.105/version.bin
[ OBJCOPY  ]   magiclantern.bin
[ STAT     ]   magiclantern.bin
magiclantern.bin: 424104 bytes
[ CC       ]   reboot.o
[ CC       ]   disp_direct.o
[ CC       ]   font_direct.o
[ CC       ]   footer.o
[ LD       ]   autoexec
[ XOR_CHK  ]   ../../build_tools/xor_chk
[ OBJCOPY  ]   autoexec.bin
[ XOR_CHK  ]   autoexec.bin
cp autoexec.bin /home/joelwindows7/sauce/magic-lantern/platform/1100D.105/zip/
cp ../../data/fonts/*.rbf /home/joelwindows7/sauce/magic-lantern/platform/1100D.105/zip/ML/fonts/
cp ../../data/vram/*.lut /home/joelwindows7/sauce/magic-lantern/platform/1100D.105/zip/ML/data/
cp ../../data/cropmks/*.bmp /home/joelwindows7/sauce/magic-lantern/platform/1100D.105/zip/ML/cropmks/
[ SCRIPTS  ]   install_extra_data
for target in  CONFIG_MODULES_install; do make $target; done
make[1]: Entering directory '/home/joelwindows7/sauce/magic-lantern/platform/1100D.105'
make -C ../../modules
make[2]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules'
make[3]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_lite'

Building module mlv_lite...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7fa0f62e3dc0>)
[ CC       ]   mlv_lite.o
In file included from mlv_lite.c:48:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: mlv_lite.o] Error 1

********************************************************
WARNING: module mlv_lite failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_lite'
[ RM       ]   mlv_lite.o ../mlv_rec/mlv.o mlv_lite.mo mlv_lite.sym mlv_lite.dep mlv_lite.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
[ RM       ]   raw2dng raw2dng.exe dng2raw dng2raw.exe
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_lite'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_lite'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_play'

Building module mlv_play...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7fc516ab9f00>)
[ CC       ]   mlv_play.o
In file included from mlv_play.c:25:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: mlv_play.o] Error 1

********************************************************
WARNING: module mlv_play failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_play'
[ RM       ]   mlv_play.o video.bmp.rsc mlv_play.mo mlv_play.sym mlv_play.dep mlv_play.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_play'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_play'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_rec'

Building module mlv_rec...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7fb01849dd70>)
[ CC       ]   mlv_rec.o
In file included from mlv_rec.c:56:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: mlv_rec.o] Error 1

********************************************************
WARNING: module mlv_rec failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_rec'
[ RM       ]   mlv_rec.o mlv.o mlv_rec.mo mlv_rec.sym mlv_rec.dep mlv_rec.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
[ RM       ]   mlv_dump mlv_dump.exe lzma/7zAlloc.host.o lzma/7zBuf.host.o lzma/7zBuf2.host.o lzma/7zCrc.host.o lzma/7zCrcOpt.host.o lzma/7zDec.host.o lzma/7zFile.host.o lzma/7zIn.host.o lzma/7zStream.host.o lzma/Alloc.host.o lzma/Bcj2.host.o lzma/Bra.host.o lzma/Bra86.host.o lzma/BraIA64.host.o lzma/CpuArch.host.o lzma/Delta.host.o lzma/LzFind.host.o lzma/Lzma2Dec.host.o lzma/Lzma2Enc.host.o lzma/Lzma86Dec.host.o lzma/Lzma86Enc.host.o lzma/LzmaDec.host.o lzma/LzmaEnc.host.o lzma/LzmaLib.host.o lzma/Ppmd7.host.o lzma/Ppmd7Dec.host.o lzma/Ppmd7Enc.host.o lzma/Sha256.host.o lzma/Xz.host.o lzma/XzCrc64.host.o lzma/lib7z.a lzma/Threads.w32.o lzma/LzFindMt.w32.o lzma/MtCoder.w32.o lzma/7zAlloc.w32.o lzma/7zBuf.w32.o lzma/7zBuf2.w32.o lzma/7zCrc.w32.o lzma/7zCrcOpt.w32.o lzma/7zDec.w32.o lzma/7zFile.w32.o lzma/7zIn.w32.o lzma/7zStream.w32.o lzma/Alloc.w32.o lzma/Bcj2.w32.o lzma/Bra.w32.o lzma/Bra86.w32.o lzma/BraIA64.w32.o lzma/CpuArch.w32.o lzma/Delta.w32.o lzma/LzFind.w32.o lzma/Lzma2Dec.w32.o lzma/Lzma2Enc.w32.o lzma/Lzma86Dec.w32.o lzma/Lzma86Enc.w32.o lzma/LzmaDec.w32.o lzma/LzmaEnc.w32.o lzma/LzmaLib.w32.o lzma/Ppmd7.w32.o lzma/Ppmd7Dec.w32.o lzma/Ppmd7Enc.w32.o lzma/Sha256.w32.o lzma/Xz.w32.o lzma/XzCrc64.w32.o lzma/lib7z.w32.a
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_rec'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_rec'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_snd'

Building module mlv_snd...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7fdd593a4d70>)
[ CC       ]   mlv_snd.o
In file included from mlv_snd.c:25:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: mlv_snd.o] Error 1

********************************************************
WARNING: module mlv_snd failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_snd'
[ RM       ]   mlv_snd.o mlv_snd.mo mlv_snd.sym mlv_snd.dep mlv_snd.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_snd'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_snd'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/file_man'

Building module file_man...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f360e7ebeb0>)
[ CC       ]   file_man.o
In file included from file_man.c:4:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: file_man.o] Error 1

********************************************************
WARNING: module file_man failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/file_man'
[ RM       ]   file_man.o file_man.mo file_man.sym file_man.dep file_man.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/file_man'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/file_man'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/pic_view'

Building module pic_view...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f9e78bbfdc0>)
[ CC       ]   pic_view.o
In file included from pic_view.c:4:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: pic_view.o] Error 1

********************************************************
WARNING: module pic_view failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/pic_view'
[ RM       ]   pic_view.o pic_view.mo pic_view.sym pic_view.dep pic_view.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/pic_view'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/pic_view'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/ettr'

Building module ettr...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f523a71bd20>)
[ CC       ]   ettr.o
In file included from ettr.c:7:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: ettr.o] Error 1

********************************************************
WARNING: module ettr failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/ettr'
[ RM       ]   ettr.o ettr.mo ettr.sym ettr.dep ettr.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/ettr'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/ettr'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/dual_iso'

Building module dual_iso...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7fa9048cde10>)
[ CC       ]   dual_iso.o
In file included from dual_iso.c:60:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: dual_iso.o] Error 1

********************************************************
WARNING: module dual_iso failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/dual_iso'
[ RM       ]   dual_iso.o dual_iso.mo dual_iso.sym dual_iso.dep dual_iso.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
[ RM       ]   cr2hdr cr2hdr.exe dcraw dcraw.c dcraw.exe exiftool.exe exiftool.tar.gz exiftool exiftool.zip cr2hdr.zip cr2hdr-win.zip cr2hdr-win_exiftool-perl-script.zip
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/dual_iso'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/dual_iso'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/silent'

Building module silent...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f6ae4e05d20>)
[ CC       ]   silent.o
In file included from silent.c:3:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: silent.o] Error 1

********************************************************
WARNING: module silent failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/silent'
[ RM       ]   silent.o silent.mo silent.sym silent.dep silent.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/silent'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/silent'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/dot_tune'

Building module dot_tune...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f62d1617dc0>)
[ CC       ]   dot_tune.o
In file included from dot_tune.c:11:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: dot_tune.o] Error 1

********************************************************
WARNING: module dot_tune failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/dot_tune'
[ RM       ]   dot_tune.o dot_tune.mo dot_tune.sym dot_tune.dep dot_tune.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/dot_tune'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/dot_tune'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/autoexpo'

Building module autoexpo...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f8951f6ed70>)
[ CC       ]   autoexpo.o
In file included from autoexpo.c:17:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: autoexpo.o] Error 1

********************************************************
WARNING: module autoexpo failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/autoexpo'
[ RM       ]   autoexpo.o autoexpo.mo autoexpo.sym autoexpo.dep autoexpo.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/autoexpo'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/autoexpo'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/arkanoid'

Building module arkanoid...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f5eaa02dd20>)
[ CC       ]   arkanoid.o
In file included from arkanoid.c:1:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: arkanoid.o] Error 1

********************************************************
WARNING: module arkanoid failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/arkanoid'
[ RM       ]   arkanoid.o arkanoid.mo arkanoid.sym arkanoid.dep arkanoid.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/arkanoid'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/arkanoid'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/deflick'

Building module deflick...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7fe8fb3e9dc0>)
[ CC       ]   deflick.o
In file included from deflick.c:16:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: deflick.o] Error 1

********************************************************
WARNING: module deflick failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/deflick'
[ RM       ]   deflick.o deflick.mo deflick.sym deflick.dep deflick.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/deflick'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/deflick'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/lua'

Building module lua...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f4e72927d70>)
[ CC       ]   lua/ml-lua-shim.o
In file included from lua/ml-lua-shim.c:4:0:
dietlibc/include/unistd.h:72:5: warning: conflicting types for built-in function 'execl'
 int execl(const char *path, ...) __THROW;
     ^
dietlibc/include/unistd.h:73:5: warning: conflicting types for built-in function 'execle'
 int execle(const char *path, ...) __THROW;
     ^
[ CC       ]   lua/lapi.o
[ CC       ]   lua/lcode.o
[ CC       ]   lua/lctype.o
[ CC       ]   lua/ldebug.o
[ CC       ]   lua/ldo.o
[ CC       ]   lua/ldump.o
[ CC       ]   lua/lfunc.o
[ CC       ]   lua/lgc.o
[ CC       ]   lua/llex.o
[ CC       ]   lua/lmem.o
[ CC       ]   lua/lobject.o
[ CC       ]   lua/lopcodes.o
[ CC       ]   lua/lparser.o
[ CC       ]   lua/lstate.o
[ CC       ]   lua/lstring.o
[ CC       ]   lua/ltable.o
[ CC       ]   lua/ltm.o
[ CC       ]   lua/lundump.o
[ CC       ]   lua/lvm.o
[ CC       ]   lua/lzio.o
[ CC       ]   lua/lauxlib.o
In file included from lua/lauxlib.c:24:0:
lua/lauxlib.c: In function 'luaL_tolstring':
lua/lua.h:340:27: warning: implicit conversion from 'lua_Number {aka float}' to 'double' when passing argument to function [-Wdouble-promotion]
 #define lua_tonumber(L,i) lua_tonumberx(L,(i),NULL)
                           ^
lua/lauxlib.c:755:36: note: in expansion of macro 'lua_tonumber'
           lua_pushfstring(L, "%f", lua_tonumber(L, idx));
                                    ^
lua/lauxlib.c: In function 'luaL_checkversion_':
lua/lauxlib.c:970:19: warning: implicit conversion from 'lua_Number {aka float}' to 'double' when passing argument to function [-Wdouble-promotion]
                   ver, *v);
                   ^
lua/lauxlib.c:970:24: warning: implicit conversion from 'lua_Number {aka const float}' to 'double' when passing argument to function [-Wdouble-promotion]
                   ver, *v);
                        ^
[ CC       ]   lua/lbaselib.o
[ CC       ]   lua/lbitlib.o
[ CC       ]   lua/lcorolib.o
[ CC       ]   lua/ldblib.o
[ CC       ]   lua/liolib.o
In file included from lua/liolib.c:20:0:
lua/liolib.c: In function 'g_write':
lua/lua.h:340:27: warning: implicit conversion from 'lua_Number {aka float}' to 'double' when passing argument to function [-Wdouble-promotion]
 #define lua_tonumber(L,i) lua_tonumberx(L,(i),NULL)
                           ^
lua/liolib.c:611:46: note: in expansion of macro 'lua_tonumber'
                 : fprintf(f, LUA_NUMBER_FMT, lua_tonumber(L, arg));
                                              ^
[ CC       ]   lua/lmathlib.o
lua/lmathlib.c: In function 'math_random':
lua/lmathlib.c:243:59: warning: implicit conversion from 'float' to 'double' to match other operand of binary expression [-Wdouble-promotion]
   double r = (double)l_rand() * (1.0 / ((double)L_RANDMAX + 1.0));
                                                           ^
lua/lmathlib.c:243:38: warning: implicit conversion from 'float' to 'double' to match other operand of binary expression [-Wdouble-promotion]
   double r = (double)l_rand() * (1.0 / ((double)L_RANDMAX + 1.0));
                                      ^
lua/lmathlib.c:265:27: warning: implicit conversion from 'float' to 'double' to match other operand of binary expression [-Wdouble-promotion]
   r *= (double)(up - low) + 1.0;
                           ^
[ CC       ]   lua/lstrlib.o
lua/lstrlib.c: In function 'str_format':
lua/lstrlib.c:910:44: warning: implicit conversion from 'lua_Number {aka float}' to 'double' when passing argument to function [-Wdouble-promotion]
           nb = snprintf(buff, 65536, form, luaL_checknumber(L, arg));
                                            ^
[ CC       ]   lua/ltablib.o
[ CC       ]   lua/lutf8lib.o
[ CC       ]   lua/loadlib.o
[ CC       ]   lua/linit.o
[ CC       ]   lua_globals.o
[ CC       ]   lua_console.o
[ CC       ]   lua_camera.o
[ CC       ]   lua_lv.o
[ CC       ]   lua_lens.o
[ CC       ]   lua_movie.o
[ CC       ]   lua_display.o
[ CC       ]   lua_key.o
[ CC       ]   lua_menu.o
[ CC       ]   lua_dryos.o
lua_dryos.c: In function 'luaCB_dryos_call':
lua_dryos.c:55:38: warning: implicit conversion from 'float' to 'double' when passing argument to function [-Wdouble-promotion]
         result = call(function_name, arg);
                                      ^
[ CC       ]   lua_interval.o
[ CC       ]   lua_battery.o
[ CC       ]   lua_task.o
[ CC       ]   lua_property.o
[ CC       ]   lua_constants.o
[ CC       ]   lua.o
In file included from lua.c:21:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: lua.o] Error 1

********************************************************
WARNING: module lua failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/lua'
[ RM       ]   lua/ml-lua-shim.o lua/lapi.o lua/lcode.o lua/lctype.o lua/ldebug.o lua/ldo.o lua/ldump.o lua/lfunc.o lua/lgc.o lua/llex.o lua/lmem.o lua/lobject.o lua/lopcodes.o lua/lparser.o lua/lstate.o lua/lstring.o lua/ltable.o lua/ltm.o lua/lundump.o lua/lvm.o lua/lzio.o lua/lauxlib.o lua/lbaselib.o lua/lbitlib.o lua/lcorolib.o lua/ldblib.o lua/liolib.o lua/lmathlib.o lua/lstrlib.o lua/ltablib.o lua/lutf8lib.o lua/loadlib.o lua/linit.o lua_globals.o lua_console.o lua_camera.o lua_lv.o lua_lens.o lua_movie.o lua_display.o lua_key.o lua_menu.o lua_dryos.o lua_interval.o lua_battery.o lua_task.o lua_property.o lua_constants.o lua.o dietlibc.a lua.mo lua.sym lua.dep lua.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/lua'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/lua'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/bench'

Building module bench...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f41e9c51dc0>)
[ CC       ]   bench.o
In file included from bench.c:3:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: bench.o] Error 1

********************************************************
WARNING: module bench failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/bench'
[ RM       ]   bench.o bench.mo bench.sym bench.dep bench.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/bench'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/bench'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/selftest'

Building module selftest...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7fa838d75dc0>)
[ CC       ]   selftest.o
In file included from selftest.c:1:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: selftest.o] Error 1

********************************************************
WARNING: module selftest failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/selftest'
[ RM       ]   selftest.o selftest.mo selftest.sym selftest.dep selftest.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/selftest'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/selftest'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/adv_int'

Building module adv_int...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7efce09cee10>)
[ CC       ]   adv_int.o
In file included from adv_int.c:8:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: adv_int.o] Error 1

********************************************************
WARNING: module adv_int failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/adv_int'
[ RM       ]   adv_int.o adv_int.mo adv_int.sym adv_int.dep adv_int.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/adv_int'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/adv_int'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'

Building module edmac...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f46f94bbd20>)
[ CC       ]   edmac.o
In file included from edmac.c:1:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: edmac.o] Error 1

********************************************************
WARNING: module edmac failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'
[ RM       ]   edmac.o edmac_util.o edmac_test.o md5.o edmac.mo edmac.sym edmac.dep edmac.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'
make[3]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules'
make[2]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules'
make -C ../../modules install
make[2]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules'
make[3]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_lite'

Building module mlv_lite...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f0c98003dc0>)
[ CC       ]   mlv_lite.o
In file included from mlv_lite.c:48:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: mlv_lite.o] Error 1

********************************************************
WARNING: module mlv_lite failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_lite'
[ RM       ]   mlv_lite.o ../mlv_rec/mlv.o mlv_lite.mo mlv_lite.sym mlv_lite.dep mlv_lite.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
[ RM       ]   raw2dng raw2dng.exe dng2raw dng2raw.exe
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_lite'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_lite'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_play'

Building module mlv_play...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7fdf3d7cbf00>)
[ CC       ]   mlv_play.o
In file included from mlv_play.c:25:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: mlv_play.o] Error 1

********************************************************
WARNING: module mlv_play failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_play'
[ RM       ]   mlv_play.o video.bmp.rsc mlv_play.mo mlv_play.sym mlv_play.dep mlv_play.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_play'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_play'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_rec'

Building module mlv_rec...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7fb7fb67fd70>)
[ CC       ]   mlv_rec.o
In file included from mlv_rec.c:56:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: mlv_rec.o] Error 1

********************************************************
WARNING: module mlv_rec failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_rec'
[ RM       ]   mlv_rec.o mlv.o mlv_rec.mo mlv_rec.sym mlv_rec.dep mlv_rec.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
[ RM       ]   mlv_dump mlv_dump.exe lzma/7zAlloc.host.o lzma/7zBuf.host.o lzma/7zBuf2.host.o lzma/7zCrc.host.o lzma/7zCrcOpt.host.o lzma/7zDec.host.o lzma/7zFile.host.o lzma/7zIn.host.o lzma/7zStream.host.o lzma/Alloc.host.o lzma/Bcj2.host.o lzma/Bra.host.o lzma/Bra86.host.o lzma/BraIA64.host.o lzma/CpuArch.host.o lzma/Delta.host.o lzma/LzFind.host.o lzma/Lzma2Dec.host.o lzma/Lzma2Enc.host.o lzma/Lzma86Dec.host.o lzma/Lzma86Enc.host.o lzma/LzmaDec.host.o lzma/LzmaEnc.host.o lzma/LzmaLib.host.o lzma/Ppmd7.host.o lzma/Ppmd7Dec.host.o lzma/Ppmd7Enc.host.o lzma/Sha256.host.o lzma/Xz.host.o lzma/XzCrc64.host.o lzma/lib7z.a lzma/Threads.w32.o lzma/LzFindMt.w32.o lzma/MtCoder.w32.o lzma/7zAlloc.w32.o lzma/7zBuf.w32.o lzma/7zBuf2.w32.o lzma/7zCrc.w32.o lzma/7zCrcOpt.w32.o lzma/7zDec.w32.o lzma/7zFile.w32.o lzma/7zIn.w32.o lzma/7zStream.w32.o lzma/Alloc.w32.o lzma/Bcj2.w32.o lzma/Bra.w32.o lzma/Bra86.w32.o lzma/BraIA64.w32.o lzma/CpuArch.w32.o lzma/Delta.w32.o lzma/LzFind.w32.o lzma/Lzma2Dec.w32.o lzma/Lzma2Enc.w32.o lzma/Lzma86Dec.w32.o lzma/Lzma86Enc.w32.o lzma/LzmaDec.w32.o lzma/LzmaEnc.w32.o lzma/LzmaLib.w32.o lzma/Ppmd7.w32.o lzma/Ppmd7Dec.w32.o lzma/Ppmd7Enc.w32.o lzma/Sha256.w32.o lzma/Xz.w32.o lzma/XzCrc64.w32.o lzma/lib7z.w32.a
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_rec'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_rec'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_snd'

Building module mlv_snd...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f89ac178d70>)
[ CC       ]   mlv_snd.o
In file included from mlv_snd.c:25:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: mlv_snd.o] Error 1

********************************************************
WARNING: module mlv_snd failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_snd'
[ RM       ]   mlv_snd.o mlv_snd.mo mlv_snd.sym mlv_snd.dep mlv_snd.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_snd'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/mlv_snd'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/file_man'

Building module file_man...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f0b97bbbeb0>)
[ CC       ]   file_man.o
In file included from file_man.c:4:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: file_man.o] Error 1

********************************************************
WARNING: module file_man failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/file_man'
[ RM       ]   file_man.o file_man.mo file_man.sym file_man.dep file_man.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/file_man'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/file_man'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/pic_view'

Building module pic_view...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f1757ac6dc0>)
[ CC       ]   pic_view.o
In file included from pic_view.c:4:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: pic_view.o] Error 1

********************************************************
WARNING: module pic_view failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/pic_view'
[ RM       ]   pic_view.o pic_view.mo pic_view.sym pic_view.dep pic_view.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/pic_view'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/pic_view'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/ettr'

Building module ettr...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f1bd0846d20>)
[ CC       ]   ettr.o
In file included from ettr.c:7:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: ettr.o] Error 1

********************************************************
WARNING: module ettr failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/ettr'
[ RM       ]   ettr.o ettr.mo ettr.sym ettr.dep ettr.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/ettr'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/ettr'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/dual_iso'

Building module dual_iso...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f82a4160e10>)
[ CC       ]   dual_iso.o
In file included from dual_iso.c:60:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: dual_iso.o] Error 1

********************************************************
WARNING: module dual_iso failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/dual_iso'
[ RM       ]   dual_iso.o dual_iso.mo dual_iso.sym dual_iso.dep dual_iso.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
[ RM       ]   cr2hdr cr2hdr.exe dcraw dcraw.c dcraw.exe exiftool.exe exiftool.tar.gz exiftool exiftool.zip cr2hdr.zip cr2hdr-win.zip cr2hdr-win_exiftool-perl-script.zip
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/dual_iso'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/dual_iso'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/silent'

Building module silent...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7fc377affd20>)
[ CC       ]   silent.o
In file included from silent.c:3:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: silent.o] Error 1

********************************************************
WARNING: module silent failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/silent'
[ RM       ]   silent.o silent.mo silent.sym silent.dep silent.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/silent'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/silent'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/dot_tune'

Building module dot_tune...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f0cddb90dc0>)
[ CC       ]   dot_tune.o
In file included from dot_tune.c:11:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: dot_tune.o] Error 1

********************************************************
WARNING: module dot_tune failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/dot_tune'
[ RM       ]   dot_tune.o dot_tune.mo dot_tune.sym dot_tune.dep dot_tune.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/dot_tune'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/dot_tune'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/autoexpo'

Building module autoexpo...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f06b81fad70>)
[ CC       ]   autoexpo.o
In file included from autoexpo.c:17:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: autoexpo.o] Error 1

********************************************************
WARNING: module autoexpo failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/autoexpo'
[ RM       ]   autoexpo.o autoexpo.mo autoexpo.sym autoexpo.dep autoexpo.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/autoexpo'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/autoexpo'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/arkanoid'

Building module arkanoid...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7fd9af955d20>)
[ CC       ]   arkanoid.o
In file included from arkanoid.c:1:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: arkanoid.o] Error 1

********************************************************
WARNING: module arkanoid failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/arkanoid'
[ RM       ]   arkanoid.o arkanoid.mo arkanoid.sym arkanoid.dep arkanoid.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/arkanoid'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/arkanoid'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/deflick'

Building module deflick...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7efe3f228dc0>)
[ CC       ]   deflick.o
In file included from deflick.c:16:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: deflick.o] Error 1

********************************************************
WARNING: module deflick failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/deflick'
[ RM       ]   deflick.o deflick.mo deflick.sym deflick.dep deflick.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/deflick'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/deflick'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/lua'

Building module lua...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f50ce2a0d70>)
[ CC       ]   lua/ml-lua-shim.o
In file included from lua/ml-lua-shim.c:4:0:
dietlibc/include/unistd.h:72:5: warning: conflicting types for built-in function 'execl'
 int execl(const char *path, ...) __THROW;
     ^
dietlibc/include/unistd.h:73:5: warning: conflicting types for built-in function 'execle'
 int execle(const char *path, ...) __THROW;
     ^
[ CC       ]   lua/lapi.o
[ CC       ]   lua/lcode.o
[ CC       ]   lua/lctype.o
[ CC       ]   lua/ldebug.o
[ CC       ]   lua/ldo.o
[ CC       ]   lua/ldump.o
[ CC       ]   lua/lfunc.o
[ CC       ]   lua/lgc.o
[ CC       ]   lua/llex.o
[ CC       ]   lua/lmem.o
[ CC       ]   lua/lobject.o
[ CC       ]   lua/lopcodes.o
[ CC       ]   lua/lparser.o
[ CC       ]   lua/lstate.o
[ CC       ]   lua/lstring.o
[ CC       ]   lua/ltable.o
[ CC       ]   lua/ltm.o
[ CC       ]   lua/lundump.o
[ CC       ]   lua/lvm.o
[ CC       ]   lua/lzio.o
[ CC       ]   lua/lauxlib.o
In file included from lua/lauxlib.c:24:0:
lua/lauxlib.c: In function 'luaL_tolstring':
lua/lua.h:340:27: warning: implicit conversion from 'lua_Number {aka float}' to 'double' when passing argument to function [-Wdouble-promotion]
 #define lua_tonumber(L,i) lua_tonumberx(L,(i),NULL)
                           ^
lua/lauxlib.c:755:36: note: in expansion of macro 'lua_tonumber'
           lua_pushfstring(L, "%f", lua_tonumber(L, idx));
                                    ^
lua/lauxlib.c: In function 'luaL_checkversion_':
lua/lauxlib.c:970:19: warning: implicit conversion from 'lua_Number {aka float}' to 'double' when passing argument to function [-Wdouble-promotion]
                   ver, *v);
                   ^
lua/lauxlib.c:970:24: warning: implicit conversion from 'lua_Number {aka const float}' to 'double' when passing argument to function [-Wdouble-promotion]
                   ver, *v);
                        ^
[ CC       ]   lua/lbaselib.o
[ CC       ]   lua/lbitlib.o
[ CC       ]   lua/lcorolib.o
[ CC       ]   lua/ldblib.o
[ CC       ]   lua/liolib.o
In file included from lua/liolib.c:20:0:
lua/liolib.c: In function 'g_write':
lua/lua.h:340:27: warning: implicit conversion from 'lua_Number {aka float}' to 'double' when passing argument to function [-Wdouble-promotion]
 #define lua_tonumber(L,i) lua_tonumberx(L,(i),NULL)
                           ^
lua/liolib.c:611:46: note: in expansion of macro 'lua_tonumber'
                 : fprintf(f, LUA_NUMBER_FMT, lua_tonumber(L, arg));
                                              ^
[ CC       ]   lua/lmathlib.o
lua/lmathlib.c: In function 'math_random':
lua/lmathlib.c:243:59: warning: implicit conversion from 'float' to 'double' to match other operand of binary expression [-Wdouble-promotion]
   double r = (double)l_rand() * (1.0 / ((double)L_RANDMAX + 1.0));
                                                           ^
lua/lmathlib.c:243:38: warning: implicit conversion from 'float' to 'double' to match other operand of binary expression [-Wdouble-promotion]
   double r = (double)l_rand() * (1.0 / ((double)L_RANDMAX + 1.0));
                                      ^
lua/lmathlib.c:265:27: warning: implicit conversion from 'float' to 'double' to match other operand of binary expression [-Wdouble-promotion]
   r *= (double)(up - low) + 1.0;
                           ^
[ CC       ]   lua/lstrlib.o
lua/lstrlib.c: In function 'str_format':
lua/lstrlib.c:910:44: warning: implicit conversion from 'lua_Number {aka float}' to 'double' when passing argument to function [-Wdouble-promotion]
           nb = snprintf(buff, 65536, form, luaL_checknumber(L, arg));
                                            ^
[ CC       ]   lua/ltablib.o
[ CC       ]   lua/lutf8lib.o
[ CC       ]   lua/loadlib.o
[ CC       ]   lua/linit.o
[ CC       ]   lua_globals.o
[ CC       ]   lua_console.o
[ CC       ]   lua_camera.o
[ CC       ]   lua_lv.o
[ CC       ]   lua_lens.o
[ CC       ]   lua_movie.o
[ CC       ]   lua_display.o
[ CC       ]   lua_key.o
[ CC       ]   lua_menu.o
[ CC       ]   lua_dryos.o
lua_dryos.c: In function 'luaCB_dryos_call':
lua_dryos.c:55:38: warning: implicit conversion from 'float' to 'double' when passing argument to function [-Wdouble-promotion]
         result = call(function_name, arg);
                                      ^
[ CC       ]   lua_interval.o
[ CC       ]   lua_battery.o
[ CC       ]   lua_task.o
[ CC       ]   lua_property.o
[ CC       ]   lua_constants.o
[ CC       ]   lua.o
In file included from lua.c:21:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: lua.o] Error 1

********************************************************
WARNING: module lua failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/lua'
[ RM       ]   lua/ml-lua-shim.o lua/lapi.o lua/lcode.o lua/lctype.o lua/ldebug.o lua/ldo.o lua/ldump.o lua/lfunc.o lua/lgc.o lua/llex.o lua/lmem.o lua/lobject.o lua/lopcodes.o lua/lparser.o lua/lstate.o lua/lstring.o lua/ltable.o lua/ltm.o lua/lundump.o lua/lvm.o lua/lzio.o lua/lauxlib.o lua/lbaselib.o lua/lbitlib.o lua/lcorolib.o lua/ldblib.o lua/liolib.o lua/lmathlib.o lua/lstrlib.o lua/ltablib.o lua/lutf8lib.o lua/loadlib.o lua/linit.o lua_globals.o lua_console.o lua_camera.o lua_lv.o lua_lens.o lua_movie.o lua_display.o lua_key.o lua_menu.o lua_dryos.o lua_interval.o lua_battery.o lua_task.o lua_property.o lua_constants.o lua.o dietlibc.a lua.mo lua.sym lua.dep lua.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/lua'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/lua'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/bench'

Building module bench...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f832e2e1dc0>)
[ CC       ]   bench.o
In file included from bench.c:3:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: bench.o] Error 1

********************************************************
WARNING: module bench failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/bench'
[ RM       ]   bench.o bench.mo bench.sym bench.dep bench.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/bench'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/bench'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/selftest'

Building module selftest...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7f7c4e7e2dc0>)
[ CC       ]   selftest.o
In file included from selftest.c:1:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: selftest.o] Error 1

********************************************************
WARNING: module selftest failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/selftest'
[ RM       ]   selftest.o selftest.mo selftest.sym selftest.dep selftest.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/selftest'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/selftest'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/adv_int'

Building module adv_int...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7fd04993ae10>)
[ CC       ]   adv_int.o
In file included from adv_int.c:8:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: adv_int.o] Error 1

********************************************************
WARNING: module adv_int failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/adv_int'
[ RM       ]   adv_int.o adv_int.mo adv_int.sym adv_int.dep adv_int.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/adv_int'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/adv_int'
make[4]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'

Building module edmac...
Updated HGVERSION
[ README   ]   module_strings.h
$//"README.rst | grep -v -E "^:([^:])+:.+$" | rst2html | python ../html2text.py -b 700 | sed "s/

/bin/sh: 1: python: Permission denied

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0x7ffaf78c5d20>)
[ CC       ]   edmac.o
In file included from edmac.c:1:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: edmac.o] Error 1

********************************************************
WARNING: module edmac failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'
[ RM       ]   edmac.o edmac_util.o edmac_test.o md5.o edmac.mo edmac.sym edmac.dep edmac.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'
make[3]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules'
[ MKDIR    ]   ML directory structure...
cp ../modules/*/*.mo /home/joelwindows7/sauce/magic-lantern/platform/1100D.105/zip/ML/modules/
cp: cannot stat '../modules/*/*.mo': No such file or directory
make[2]: *** [Makefile:31: install] Error 1
make[2]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules'
make[1]: *** [../../Makefile.inc:27: CONFIG_MODULES_install] Error 2
make[1]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/platform/1100D.105'
make: *** [../../Makefile.inc:34: install] Error 2
some how the module_strings.h is not found. Perhaps I missed something.

also for QEMU. I gotta learn how to make the configure adapts to current regular QEMU source code. idk how. gotta learn. feel free to give me any advice.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: names_are_hard on November 18, 2022, 01:16:55 PM
You're missing rst2html, or perhaps, your environment is unable to run python commands when trying to run rst2html.  On debian you need docutils-common.

I don't understand your question about qemu.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: JOELwindows7 on November 18, 2022, 02:51:01 PM
You're missing rst2html, or perhaps, your environment is unable to run python commands when trying to run rst2html.  On debian you need docutils-common.

I don't understand your question about qemu.

Okay, check docutils-common.
Code: [Select]
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
docutils-common is already the newest version (0.17.1+dfsg-2).
The following packages were automatically installed and are no longer required:
  libpython2-stdlib libpython2.7-minimal libpython2.7-stdlib
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
I already have it.

I make clean. make zip again. still same error
Code: [Select]
...
Traceback (most recent call last):
  File "/home/joelwindows7/sauce/magic-lantern/modules/edmac/../html2text.py", line 41, in <module>
    from align_string_proportional import word_wrap
  File "/home/joelwindows7/sauce/magic-lantern/modules/align_string_proportional.py", line 57
    print line
    ^^^^^^^^^^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)?

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0xf7ad0554>)
[ CC]   edmac.o
In file included from edmac.c:1:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: edmac.o] Error 1

********************************************************
WARNING: module edmac failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'
[ RM       ]   edmac.o edmac_util.o edmac_test.o md5.o edmac.mo edmac.sym edmac.dep edmac.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'
make[3]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules'
[ MKDIR    ]   ML directory structure...
cp ../modules/*/*.mo /home/joelwindows7/sauce/magic-lantern/platform/1100D.105/zip/ML/modules/
cp: cannot stat '../modules/*/*.mo': No such file or directory
make[2]: *** [Makefile:31: install] Error 1
make[2]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules'
make[1]: *** [../../Makefile.inc:27: CONFIG_MODULES_install] Error 2
make[1]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/platform/1100D.105'
make: *** [../../Makefile.inc:34: install] Error 2]
...
Traceback (most recent call last):
  File "/home/joelwindows7/sauce/magic-lantern/modules/edmac/../html2text.py", line 41, in <module>
    from align_string_proportional import word_wrap
  File "/home/joelwindows7/sauce/magic-lantern/modules/align_string_proportional.py", line 57
    print line
    ^^^^^^^^^^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)?

(<type 'exceptions.SystemExit'>, SystemExit(1,), <traceback object at 0xf7ad0554>)
[ CC       ]   edmac.o
In file included from edmac.c:1:0:
../../src/module.h:344:28: fatal error: module_strings.h: No such file or directory
 #include "module_strings.h"
                            ^
compilation terminated.
make[5]: *** [../../Makefile.filerules:21: edmac.o] Error 1

********************************************************
WARNING: module edmac failed to build, deleting
********************************************************

make[5]: Entering directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'
[ RM       ]   edmac.o edmac_util.o edmac_test.o md5.o edmac.mo edmac.sym edmac.dep edmac.zip module_strings.h hgdiff.tmp *.o *.d *.dep *.sym hgstamp
make[5]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'
make[4]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules/edmac'
make[3]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules'
[ MKDIR    ]   ML directory structure...
cp ../modules/*/*.mo /home/joelwindows7/sauce/magic-lantern/platform/1100D.105/zip/ML/modules/
cp: cannot stat '../modules/*/*.mo': No such file or directory
make[2]: *** [Makefile:31: install] Error 1
make[2]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/modules'
make[1]: *** [../../Makefile.inc:27: CONFIG_MODULES_install] Error 2
make[1]: Leaving directory '/home/joelwindows7/sauce/magic-lantern/platform/1100D.105'
make: *** [../../Makefile.inc:34: install] Error 2

Okay, for QEMU, I mean, How do I compile QEMU latest version for Magic Lantern? ./install.sh & configure_eos.sh but with latest QEMU yeah.

Also
I have tried reticulatedpines' version of ML (https://github.com/reticulatedpines/magiclantern_simplified), fresh, just leave makefile user default as is, no makefile user. it works.

the QEMU for that simplified has trouble though, I have submitted issue (https://github.com/reticulatedpines/magiclantern_simplified/issues/76).

Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: names_are_hard on November 18, 2022, 04:22:47 PM
You have docutils-common, but are you on Debian, and do you have rst2html?  What is the output from this command?
Code: [Select]
rst2html --version

The reticulatedpines repo is mine.  I modernised several things in the code to make it easier to build on modern linux.  Your log for 200D shows you're using gcc 5, which is very old.  I suspect the error is related to this.  I guess you're using a very old Linux.  I use Debian Bullseye and install gcc like this:
Code: [Select]
apt install gcc-arm-none-eabi
That gets me arm-none-eabi-gcc version 8.3.1, which builds fine.  Try again with a similar version of gcc.

Thanks for the bug report, it was well written.  I've closed it, because I don't want to maintain anything to do with qemu 2.  I've explained further in the ticket.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: JOELwindows7 on November 19, 2022, 03:49:30 PM
You have docutils-common, but are you on Debian, and do you have rst2html?  What is the output from this command?
Code: [Select]
rst2html --version

The reticulatedpines repo is mine.  I modernised several things in the code to make it easier to build on modern linux.  Your log for 200D shows you're using gcc 5, which is very old.  I suspect the error is related to this.  I guess you're using a very old Linux.  I use Debian Bullseye and install gcc like this:
Code: [Select]
apt install gcc-arm-none-eabi
That gets me arm-none-eabi-gcc version 8.3.1, which builds fine.  Try again with a similar version of gcc.

Thanks for the bug report, it was well written.  I've closed it, because I don't want to maintain anything to do with qemu 2.  I've explained further in the ticket.

No problem
Wait, so reticulatedpines = names_are_hard? oh lol! sorry, got mixed up. anyways..

Okay, update. first of, my rst2html version
Code: [Select]
rst2html (Docutils 0.17.1 [release], Python 3.10.6, on linux)

I see. Well, my WSL isn't that old, it's in today's LTS release, lsb_release -a once again
Code: [Select]
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.1 LTS
Release:        22.04
Codename:       jammy
Therefore it's relatively current. That mean somehow the Make chose the wrong GCC version. According to its Makefile user default file, it prefers that GCC 5 you've mentioned
Code: [Select]
# use this one if installed on the system
# otherwise, use the one from executable PATH
PREFERRED_ARM_PATH=~/gcc-arm-none-eabi-5_4-2016q3
#PREFERRED_ARM_PATH=~/gcc-linaro-7.1.1-2017.08-i686_arm-eabi
Then the comment said it picks the system if installed, which I already had. Something..

Oh well, then I just head on to make Makefile user, only contains these
Code: [Select]
ARM_PATH=/usr
that's it. No. For good measure, I also cleared any export that mentions the old GCC in my ~/.profile
Code: [Select]
...
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
    PATH="$HOME/.local/bin:$PATH"
fi

# QEMU Magic Lantern
# export PATH=~/gcc-arm-none-eabi-5_4-2016q3/bin:$PATH
# export PATH=~/gcc-arm-none-eabi-7-2018-q2-update/bin:$PATH
There, commented out, no more old GCC references. Restart terminal (close terminal & then reopen terminal, no need to restart the WSL)..

Finally to really make sure, these old GCCs I had in home directory, get it out. move those gcc somewhere away from my home root, into uh e.g. "hide" folder, yeah. Now it's clean. Go back to your simplified, and let's try 200D again.. it finally uses the latest GCC Ubuntu Jammy has, and yey it works!

here ML zip (https://perkedel.netlify.app/assets/zip/magiclantern-Nightly.2022Nov19.200D101.zip) & the log (https://perkedel.netlify.app/assets/txt/logs/attempt_ml_2022-11-19/reticulatedpines_finallywork_200D.log).

Great! now compiler is ready (Not the original source, it's the names_are_hard's simplified ML)...
Now let's get to the QEMU.

Okay, I see. Here instruction (https://github.com/reticulatedpines/qemu-eos/tree/qemu-eos-v4.2.1/magiclantern), so.. this repo (https://github.com/reticulatedpines/qemu-eos), clone it, go to branch "qemu-eos-v4.2.1" okay, and get out from there, saw your repo & the qemu eos, now make build folder with that name, do this configure command, done.

Now let's try make. I only have 12 threads here because my laptop is Hexa-core (6 physical core), so people, I change the "-j16" to "-j12". You know your core number times two. "make -j12"!

Code: [Select]
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ make clean
/bin/sh: 1: ./scripts/git-submodule.sh: not found
  GEN     arm-softmmu/hmp-commands.h
: Permission deniedsauce/simplified/qemu-eos/scripts/hxtool: 2:
: Permission deniedsauce/simplified/qemu-eos/scripts/hxtool: 4: {
/home/joelwindows7/sauce/simplified/qemu-eos/scripts/hxtool: 7: Syntax error: word unexpected (expecting "in")
make[1]: *** [Makefile:218: hmp-commands.h] Error 2
make[1]: *** Deleting file 'hmp-commands.h'
make: *** [Makefile:491: arm-softmmu/clean] Error 2
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ chmod +x ../qemu-eos/scripts/hxtool
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ make clean
/bin/sh: 1: ./scripts/git-submodule.sh: not found
  GEN     arm-softmmu/hmp-commands.h
: Permission deniedsauce/simplified/qemu-eos/scripts/hxtool: 2:
: Permission deniedsauce/simplified/qemu-eos/scripts/hxtool: 4: {
/home/joelwindows7/sauce/simplified/qemu-eos/scripts/hxtool: 7: Syntax error: word unexpected (expecting "in")
make[1]: *** [Makefile:218: hmp-commands.h] Error 2
make[1]: *** Deleting file 'hmp-commands.h'
make: *** [Makefile:491: arm-softmmu/clean] Error 2
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ make -j12
/bin/sh: 1: ./scripts/git-submodule.sh: not found
  GEN     config-host.h
  GEN     qemu-options.def
make[1]: *** No rule to make target '/home/joelwindows7/sauce/simplified/qemu-eos-build/capstone/libcapstone.a'.  Stop.
make: *** [Makefile:518: capstone/all] Error 2
make: *** Waiting for unfinished jobs....
: Permission deniedsauce/simplified/qemu-eos/scripts/create_config: 2:
: Permission deniedsauce/simplified/qemu-eos/scripts/hxtool: 2:
: Permission deniedsauce/simplified/qemu-eos/scripts/create_config: 4:
/home/joelwindows7/sauce/simplified/qemu-eos/scripts/create_config: 7: Syntax error: word unexpected (expecting "in")
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:203: config-host.h-timestamp] Error 2
make: *** Deleting file 'config-host.h-timestamp'
: Permission deniedsauce/simplified/qemu-eos/scripts/hxtool: 4: {
/home/joelwindows7/sauce/simplified/qemu-eos/scripts/hxtool: 7: Syntax error: word unexpected (expecting "in")
make: *** [Makefile:472: qemu-options.def] Error 2
make: *** Deleting file 'qemu-options.def'
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$
full log (https://perkedel.netlify.app/assets/txt/attempt_ml_2022-11-19/make_qemu-eos_fail.log)

Ah damn it. What is wrong here? I checked the "scripts" folder here, the git_submodule.sh exists. Okay, uh I saw the "Makefile", "python", & "scripts" in cyan, I think it means symbolic link.
Okay, anyone can explain here?
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: names_are_hard on November 19, 2022, 06:29:03 PM
This is your error:
Code: [Select]
/bin/sh: 1: ./scripts/git-submodule.sh: not found

What happens if you are in qemu-eos-build and manually run:
Code: [Select]
./scripts/git-submodule.sh

Also please show the result of this command:
Code: [Select]
ls -l ./scripts/git-submodule.h

I'm guessing the file isn't executable.  If it isn't executable, you probably have bad config for either git or umask, on a Linux system these files should be created executable.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: JOELwindows7 on November 21, 2022, 12:10:40 PM
This is your error:
Code: [Select]
/bin/sh: 1: ./scripts/git-submodule.sh: not found

What happens if you are in qemu-eos-build and manually run:
Code: [Select]
./scripts/git-submodule.sh

Also please show the result of this command:
Code: [Select]
ls -l ./scripts/git-submodule.h

I'm guessing the file isn't executable.  If it isn't executable, you probably have bad config for either git or umask, on a Linux system these files should be created executable.

Alright update
So, apparently I figured out perhaps it was my typo or something. I think I got mixed the `_` & `-` at some point. it's a dash, not underscore yeah. idk.

log here (https://perkedel.netlify.app/assets/txt/attempt_ml_2022-11-21/somehow_gitmodule_notfound_exist.log)

Anyways, typed the correct name, but first yeah I looked that git submodule detail
Code: [Select]
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ ls scripts
analyse-9p-simpletrace.py     device-crash-test          qapi                   signrom.py
analyse-locks-simpletrace.py  disas-objdump.pl           qapi-gen.py            simpletrace.py
analyze-inclusions            dump-guest-memory.py       qemu-binfmt-conf.sh    switch-timer-api
analyze-migration.py          extract-vsssdk-headers     qemu-gdb.py            tap-driver.pl
archive-source.sh             feature_to_c.sh            qemu-guest-agent       tap-merge.pl
checkpatch.pl                 fix-multiline-comments.sh  qemu-trace-stap        texi2pod.pl
clean-header-guards.pl        get_maintainer.pl          qemu-trace-stap.texi   tracetool
clean-includes                git-submodule.sh           qemugdb                tracetool.py
cleanup-trace-events.pl       git.orderfile              qmp                    travis
cocci-macro-file.h            hxtool                     refresh-pxe-roms.sh    update-linux-headers.sh
coccinelle                    kvm                        render_block_graph.py  vmstate-static-checker.py
coverity-model.c              make-release               replay-dump.py
create_config                 minikconf.py               shaderinclude.pl
decodetree.py                 modules                    show-fixed-bugs.sh
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ ls -l ./script/git-submodule.sh
ls: cannot access './script/git-submodule.sh': No such file or directory
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ ls -l ./scripts/git-submodule.sh
-rwxr-xr-x 1 joelwindows7 joelwindows7 2035 Nov 19 19:04 ./scripts/git-submodule.sh
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ ./scripts/git-submodule.sh
-bash: ./scripts/git-submodule.sh: /bin/sh^M: bad interpreter: No such file or directory
full log (https://perkedel.netlify.app/assets/txt/attempt_ml_2022-11-21/somehow_gitmodule_notfound_fixed.log)

and it's there, has executable right,
Code: [Select]
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ ls -l ./scripts/git-submodule.sh
-rwxr-xr-x 1 joelwindows7 joelwindows7 2035 Nov 19 19:04 ./scripts/git-submodule.sh
good, now let's manually run it.

Code: [Select]
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ ./scripts/git-submodule.sh
-bash: ./scripts/git-submodule.sh: /bin/sh^M: bad interpreter: No such file or directory
And yeah you see above again it had the same `/bin/sh^M` bad interpreter again. Yeah, somehow many of your scripts got line ended in DOS / Windows. And in my WSL, the bash got confused like what the peck is that `\r` thingy?! or in my case I cannot find the /bin/sh^M you're talking about! stuff like that. so to convert every files from DOS Windows CRLF (`\r\n`) into Unix LF (`\n`), AS WELL AS, add executable right because-if-not-it-will-error-permission-denied (even during `make clean`), Go to script folder.. Oh yeah btw first that `script` folder is symlinked from that `qemu-eos/script` before, I knew this from
Code: [Select]
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ ls -l ./scripts
lrwxrwxrwx 1 joelwindows7 joelwindows7 52 Nov 19 20:03 ./scripts -> /home/joelwindows7/sauce/simplified/qemu-eos/scripts

Yes, doing the `ls -l ./scripts` when in `qemu-eos-build` repo directory. So, go to original script folder in `qemu-eos/scripts` not the build one, just case.., and do this:
Code: [Select]
for FILER in ./*; do chmod +x $FILER; dos2unix $FILER; done
Bash has for loop itteration! Basically, for every file in this folder, do the following: add executable right to each file, also convert line endings from DOS Windows to UNIX ones. yeah, the `$FILER` variable means each file. Now all the scripts line endings has been set correctly to UNIX & has executable rights.

`make clean` works yay! let's `make -j12` again!

We do have progress here, but still error
Code: [Select]
...
  GEN     util/trace.c
  GEN     hw/core/trace.c
warning: redirecting to https://gitlab.com/qemu-project/capstone.git/
Cloning into '/home/joelwindows7/sauce/simplified/qemu-eos/tests/fp/berkeley-softfloat-3'...
warning: redirecting to https://gitlab.com/qemu-project/berkeley-softfloat-3.git/
Cloning into '/home/joelwindows7/sauce/simplified/qemu-eos/tests/fp/berkeley-testfloat-3'...
warning: redirecting to https://gitlab.com/qemu-project/berkeley-testfloat-3.git/
Cloning into '/home/joelwindows7/sauce/simplified/qemu-eos/ui/keycodemapdb'...
warning: redirecting to https://gitlab.com/qemu-project/keycodemapdb.git/
  GEN     ui/input-keymap-atset1-to-qcode.c
  GEN     ui/input-keymap-linux-to-qcode.c
  GEN     ui/input-keymap-qcode-to-atset1.c
  GEN     ui/input-keymap-qcode-to-atset2.c
  GEN     ui/input-keymap-qcode-to-atset3.c
  GEN     ui/input-keymap-qcode-to-linux.c
  GEN     ui/input-keymap-qcode-to-qnum.c
  GEN     ui/input-keymap-qcode-to-sun.c
  GEN     ui/input-keymap-qnum-to-qcode.c
  GEN     ui/input-keymap-usb-to-qcode.c
  GEN     ui/input-keymap-win32-to-qcode.c
  GEN     ui/input-keymap-x11-to-qcode.c
  GEN     ui/input-keymap-xorgevdev-to-qcode.c
  GEN     ui/input-keymap-xorgkbd-to-qcode.c
  GEN     ui/input-keymap-xorgxquartz-to-qcode.c
  GEN     ui/input-keymap-xorgxwin-to-qcode.c
  GEN     ui/input-keymap-osx-to-qcode.c
  CC      cs.o
  CC      utils.o
  CC      SStream.o
  CC      MCInstrDesc.o
  CC      MCRegisterInfo.o
  CC      arch/ARM/ARMInstPrinter.o
  CC      arch/ARM/ARMDisassembler.o
  CC      arch/ARM/ARMMapping.o
  CC      arch/ARM/ARMModule.o
  CC      arch/AArch64/AArch64BaseInfo.o
  CC      arch/AArch64/AArch64Disassembler.o
  CC      arch/AArch64/AArch64InstPrinter.o
  CC      arch/AArch64/AArch64Mapping.o
  CC      arch/AArch64/AArch64Module.o
  CC      arch/Mips/MipsDisassembler.o
  CC      arch/Mips/MipsInstPrinter.o
  CC      arch/Mips/MipsMapping.o
  CC      arch/Mips/MipsModule.o
  CC      arch/PowerPC/PPCDisassembler.o
  CC      arch/PowerPC/PPCInstPrinter.o
  CC      arch/PowerPC/PPCMapping.o
  CC      arch/PowerPC/PPCModule.o
  CC      arch/Sparc/SparcDisassembler.o
  CC      arch/Sparc/SparcInstPrinter.o
  CC      arch/Sparc/SparcMapping.o
  CC      arch/Sparc/SparcModule.o
  CC      arch/SystemZ/SystemZDisassembler.o
  CC      arch/SystemZ/SystemZInstPrinter.o
  CC      arch/SystemZ/SystemZMapping.o
  CC      arch/SystemZ/SystemZModule.o
  CC      arch/SystemZ/SystemZMCTargetDesc.o
  CC      arch/X86/X86Disassembler.o
  CC      arch/X86/X86DisassemblerDecoder.o
  CC      arch/X86/X86IntelInstPrinter.o
  CC      arch/X86/X86ATTInstPrinter.o
  CC      arch/X86/X86Mapping.o
  CC      arch/X86/X86Module.o
  CC      arch/XCore/XCoreDisassembler.o
  CC      arch/XCore/XCoreInstPrinter.o
  CC      arch/XCore/XCoreMapping.o
  CC      arch/XCore/XCoreModule.o
  CC      MCInst.o
  AR      libcapstone.a
ar: creating /home/joelwindows7/sauce/simplified/qemu-eos-build/capstone/libcapstone.a
  CC      tests/qemu-iotests/socket_scm_helper.o
  GEN     qga/qapi-generated/qapi-gen
  CC      qapi/qapi-visit-core.o
  CC      qapi/qapi-dealloc-visitor.o
  CC      qapi/qobject-input-visitor.o
  CC      qapi/qobject-output-visitor.o
  CC      qapi/qmp-registry.o
  CC      qapi/qmp-dispatch.o
  CC      qapi/string-output-visitor.o
  CC      qapi/string-input-visitor.o
  CC      qapi/opts-visitor.o
  CC      qapi/qapi-clone-visitor.o
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:30,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/tests/qemu-iotests/socket_scm_helper.c:13:
./config-host.h:36:22: error: missing terminating " character [-Werror]
   36 | #define QEMU_VERSION "4.2.1 "
      |                      ^
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:30,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/qapi/qmp-registry.c:15:
./config-host.h:36:22: error: missing terminating " character [-Werror]
   36 | #define QEMU_VERSION "4.2.1 "
      |                      ^
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:30,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/qapi/qapi-dealloc-visitor.c:15:
./config-host.h:36:22: error: missing terminating " character [-Werror]
   36 | #define QEMU_VERSION "4.2.1 "
      |                      ^
./config-host.h:37:1: error: missing terminating " character [-Werror]
   37 | #define QEMU_VERSION_MAJOR 4
      | ^
./config-host.h:37:1: error: missing terminating " character [-Werror]
   37 | #define QEMU_VERSION_MAJOR 4
      | ^
./config-host.h:37:1: error: missing terminating " character [-Werror]
   37 | #define QEMU_VERSION_MAJOR 4
      | ^
./config-host.h:37:1: error: missing terminating " character
./config-host.h:37:1: error: missing terminating " character
./config-host.h:37:1: error: missing terminating " character
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:30,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/qapi/qobject-output-visitor.c:15:
./config-host.h:36:22: error: missing terminating " character [-Werror]
   36 | #define QEMU_VERSION "4.2.1 "
      |                      ^
./config-host.h:37:1: error: missing terminating " character [-Werror]
   37 | #define QEMU_VERSION_MAJOR 4
      | ^
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:30,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/qapi/qobject-input-visitor.c:15:
./config-host.h:36:22: error: missing terminating " character [-Werror]
   36 | #define QEMU_VERSION "4.2.1 "
      |                      ^
./config-host.h:37:1: error: missing terminating " character
./config-host.h:37:1: error: missing terminating " character [-Werror]
   37 | #define QEMU_VERSION_MAJOR 4
      | ^
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:30,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/qapi/qapi-visit-core.c:15:
./config-host.h:36:22: error: missing terminating " character [-Werror]
   36 | #define QEMU_VERSION "4.2.1 "
      |                      ^
./config-host.h:37:1: error: missing terminating " character
./config-host.h:37:1: error: missing terminating " character [-Werror]
   37 | #define QEMU_VERSION_MAJOR 4
      | ^
./config-host.h:37:1: error: missing terminating " character
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:30,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/qapi/opts-visitor.c:13:
./config-host.h:36:22: error: missing terminating " character [-Werror]
   36 | #define QEMU_VERSION "4.2.1 "
      |                      ^
./config-host.h:37:1: error: missing terminating " character [-Werror]
   37 | #define QEMU_VERSION_MAJOR 4
      | ^
./config-host.h:37:1: error: missing terminating " character
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:30,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/qapi/qmp-dispatch.c:14:
./config-host.h:36:22: error: missing terminating " character [-Werror]
   36 | #define QEMU_VERSION "4.2.1 "
      |                      ^
./config-host.h:37:1: error: missing terminating " character [-Werror]
   37 | #define QEMU_VERSION_MAJOR 4
      | ^
./config-host.h:37:1: error: missing terminating " character
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:30,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/qapi/string-output-visitor.c:13:
./config-host.h:36:22: error: missing terminating " character [-Werror]
   36 | #define QEMU_VERSION "4.2.1 "
      |                      ^
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:30,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/qapi/qapi-clone-visitor.c:11:
./config-host.h:36:22: error: missing terminating " character [-Werror]
   36 | #define QEMU_VERSION "4.2.1 "
      |                      ^
./config-host.h:37:1: error: missing terminating " character [-Werror]
   37 | #define QEMU_VERSION_MAJOR 4
      | ^
./config-host.h:37:1: error: missing terminating " character
./config-host.h:37:1: error: missing terminating " character [-Werror]
   37 | #define QEMU_VERSION_MAJOR 4
      | ^
./config-host.h:37:1: error: missing terminating " character
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:30,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/qapi/string-input-visitor.c:13:
./config-host.h:36:22: error: missing terminating " character [-Werror]
   36 | #define QEMU_VERSION "4.2.1 "
      |                      ^
./config-host.h:37:1: error: missing terminating " character [-Werror]
   37 | #define QEMU_VERSION_MAJOR 4
      | ^
./config-host.h:37:1: error: missing terminating " character
  CC      qapi/qmp-event.o
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:30,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/qapi/qmp-event.c:14:
./config-host.h:36:22: error: missing terminating " character [-Werror]
   36 | #define QEMU_VERSION "4.2.1 "
      |                      ^
./config-host.h:37:1: error: missing terminating " character [-Werror]
   37 | #define QEMU_VERSION_MAJOR 4
      | ^
./config-host.h:37:1: error: missing terminating " character
cc1: all warnings being treated as errors
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: tests/qemu-iotests/socket_scm_helper.o] Error 1
make: *** Waiting for unfinished jobs....
cc1: all warnings being treated as errors
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: qapi/qmp-registry.o] Error 1
cc1: all warnings being treated as errors
cc1: all warnings being treated as errors
cc1: all warnings being treated as errors
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: qapi/qmp-event.o] Error 1
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: qapi/qapi-clone-visitor.o] Error 1
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: qapi/qapi-dealloc-visitor.o] Error 1
cc1: all warnings being treated as errors
cc1: all warnings being treated as errors
cc1: all warnings being treated as errors
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: qapi/qmp-dispatch.o] Error 1
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: qapi/string-input-visitor.o] Error 1
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: qapi/qobject-output-visitor.o] Error 1
cc1: all warnings being treated as errors
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: qapi/opts-visitor.o] Error 1
cc1: all warnings being treated as errors
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: qapi/qapi-visit-core.o] Error 1
cc1: all warnings being treated as errors
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: qapi/string-output-visitor.o] Error 1
cc1: all warnings being treated as errors
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: qapi/qobject-input-visitor.o] Error 1
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$
somehow the compiler could not see the other terminating `"` at the define & etc. etc. log (https://perkedel.netlify.app/assets/txt/attempt_ml_2022-11-21/somehow_missing_character.log)

Now, what's wrong here?
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: names_are_hard on November 21, 2022, 01:17:41 PM
It's progress - you identified the problem of bad line endings, but the fix was inappropriate.  Using dos2unix is not a great solution because it won't fix things for the future, and it edits files which will lead to changes that git will see and try to track or, worse, commit upstream.  What you need to do is determine *why* you had bad line endings, and fix that problem.  What other problems might happen due to that unfixed cause?

^M is a Windows carriage-return character.  When you are using git, are you working in Windows, or in WSL?  You might have bad git config, set to change line endings, or you might be using some Windows tool that is changing them.  Find out what caused it, *remove* your local qemu-eos repo, and re-create it.  That will fix all line endings. 
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: JOELwindows7 on November 22, 2022, 10:19:26 AM
It's progress - you identified the problem of bad line endings, but the fix was inappropriate.  Using dos2unix is not a great solution because it won't fix things for the future, and it edits files which will lead to changes that git will see and try to track or, worse, commit upstream.  What you need to do is determine *why* you had bad line endings, and fix that problem.  What other problems might happen due to that unfixed cause?

^M is a Windows carriage-return character.  When you are using git, are you working in Windows, or in WSL?  You might have bad git config, set to change line endings, or you might be using some Windows tool that is changing them.  Find out what caused it, *remove* your local qemu-eos repo, and re-create it.  That will fix all line endings. 

Oh, oh ok. I didn't know that. Right, I get it. Yeah it would break comparison compatibility & will conflict if other forks would wanted to merge their edit back in. Alright.

Yeah, issue, I haven't been able to figure out how in the world did any of my clone ended up in CRLF. Yeah something wrong with my git on my WSL today, I can't figure at the moment.

But today, there's an update
the qemu-eos on that 4.2.1 branch got an update. So I stashed everything I've changed, pull the newest update here. clean & make, fail (https://perkedel.netlify.app/assets/txt/logs/attempt_ml_2022-11-22/updated_make_fail_again.log).

Oh yeah, I forgot, there must be an update to that Magic Lantern Simplified. OH there is! pull that too! made sure make clean the qemu-eos, reconfigure just to be sure. try again, still failed.

Code: [Select]
...
  CC      block/vdi.o
  CC      block/cloop.o
  CC      block/bochs.o
  CC      block/vvfat.o
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c: In function ‘vpc_open’:
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c:360:51: error: array subscript ‘VHDDynDiskHeader {aka struct vhd_dyndisk_header}[0]’ is partly outside array bounds of ‘uint8_t[512]’ {aka ‘unsigned char[512]’} [-Werror=array-bounds]
  360 |         s->block_size = be32_to_cpu(dyndisk_header->block_size);
      |                                                   ^~
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c:223:13: note: while referencing ‘buf’
  223 |     uint8_t buf[HEADER_SIZE];
      |             ^~~
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c:368:58: error: array subscript ‘VHDDynDiskHeader {aka struct vhd_dyndisk_header}[0]’ is partly outside array bounds of ‘uint8_t[512]’ {aka ‘unsigned char[512]’} [-Werror=array-bounds]
  368 |         s->max_table_entries = be32_to_cpu(dyndisk_header->max_table_entries);
      |                                                          ^~
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c:223:13: note: while referencing ‘buf’
  223 |     uint8_t buf[HEADER_SIZE];
      |             ^~~
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c:400:51: error: array subscript ‘VHDDynDiskHeader {aka struct vhd_dyndisk_header}[0]’ is partly outside array bounds of ‘uint8_t[512]’ {aka ‘unsigned char[512]’} [-Werror=array-bounds]
  400 |         s->bat_offset = be64_to_cpu(dyndisk_header->table_offset);
      |                                                   ^~
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c:223:13: note: while referencing ‘buf’
  223 |     uint8_t buf[HEADER_SIZE];
      |             ^~~
  CC      block/dmg.o
cc1: all warnings being treated as errors
  CC      block/qcow2.o
  CC      block/qcow2-refcount.o
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: block/vpc.o] Error 1
make: *** Waiting for unfinished jobs....
full log (https://perkedel.netlify.app/assets/txt/logs/attempt_ml_2022-11-22/still_not_that_working_either.log)

Although yeah both of the tries today were the same error, but at least it's different. Okay from the look here, something went wrong with the array bounds say it's partly outside of the array bound.. We're going somewhere!
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: names_are_hard on November 22, 2022, 02:03:02 PM
We identified a problem - your files had incorrect line endings.  Then you stopped trying to fix that problem and changed your file contents.  From the logs it looks like you're also running other, unrelated commands, that may change things, too.  Now I can't tell what state your system is in.

Delete all local files for qemu-eos repo and the magiclantern_simplified repo.
Run these commands, and only these commands.  If there are errors, do not run additional commands, instead, report back with the error.
Code: [Select]
git clone https://github.com/reticulatedpines/qemu-eos
cd qemu-eos; git switch qemu-eos-v4.2.1; cd ..
mkdir qemu-eos-build
cd qemu-eos-build
../qemu-eos/configure --target-list=arm-softmmu --enable-plugins --disable-docs --enable-vnc --enable-gtk
make -j16

I expect that will fail because you have incorrect line endings.  If it does fail to build, determine the last source file that had a problem and get the sha1sum hash of it and report that here.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: JOELwindows7 on November 23, 2022, 10:45:11 AM
We identified a problem - your files had incorrect line endings.  Then you stopped trying to fix that problem and changed your file contents.  From the logs it looks like you're also running other, unrelated commands, that may change things, too.  Now I can't tell what state your system is in.

Delete all local files for qemu-eos repo and the magiclantern_simplified repo.
Run these commands, and only these commands.  If there are errors, do not run additional commands, instead, report back with the error.
Code: [Select]
git clone https://github.com/reticulatedpines/qemu-eos
cd qemu-eos; git switch qemu-eos-v4.2.1; cd ..
mkdir qemu-eos-build
cd qemu-eos-build
../qemu-eos/configure --target-list=arm-softmmu --enable-plugins --disable-docs --enable-vnc --enable-gtk
make -j16

I expect that will fail because you have incorrect line endings.  If it does fail to build, determine the last source file that had a problem and get the sha1sum hash of it and report that here.

Okay
Cleared up everything in simplified, let's do it according to the command, line by line exactly you said.

Error:
Code: [Select]
...
  CC      block/qcow2-snapshot.o
  CC      block/qcow2-cache.o
  CC      block/qcow2-bitmap.o
  CC      block/qcow2-threads.o
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c: In function ‘vpc_open’:
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c:360:51: error: array subscript ‘VHDDynDiskHeader {aka struct vhd_dyndisk_header}[0]’ is partly outside array bounds of ‘uint8_t[512]’ {aka ‘unsigned char[512]’} [-Werror=array-bounds]
  360 |         s->block_size = be32_to_cpu(dyndisk_header->block_size);
      |                                                   ^~
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c:223:13: note: while referencing ‘buf’
  223 |     uint8_t buf[HEADER_SIZE];
      |             ^~~
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c:368:58: error: array subscript ‘VHDDynDiskHeader {aka struct vhd_dyndisk_header}[0]’ is partly outside array bounds of ‘uint8_t[512]’ {aka ‘unsigned char[512]’} [-Werror=array-bounds]
  368 |         s->max_table_entries = be32_to_cpu(dyndisk_header->max_table_entries);
      |                                                          ^~
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c:223:13: note: while referencing ‘buf’
  223 |     uint8_t buf[HEADER_SIZE];
      |             ^~~
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c:400:51: error: array subscript ‘VHDDynDiskHeader {aka struct vhd_dyndisk_header}[0]’ is partly outside array bounds of ‘uint8_t[512]’ {aka ‘unsigned char[512]’} [-Werror=array-bounds]
  400 |         s->bat_offset = be64_to_cpu(dyndisk_header->table_offset);
      |                                                   ^~
/home/joelwindows7/sauce/simplified/qemu-eos/block/vpc.c:223:13: note: while referencing ‘buf’
  223 |     uint8_t buf[HEADER_SIZE];
      |             ^~~
  CC      block/qed.o
  CC      block/qed-l2-cache.o
cc1: all warnings being treated as errors
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: block/vpc.o] Error 1
make: *** Waiting for unfinished jobs....

same error vpc.c. sha1sum of vpc.c is `f9ad389e82886eb53f242bde967519fac416e891`:
Code: [Select]
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ sha1sum ../qemu-eos/block/vpc.c
f9ad389e82886eb53f242bde967519fac416e891  ../qemu-eos/block/vpc.c
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$
full log (https://perkedel.netlify.app/assets/txt/logs/attempt_ml_2022-11_23/clear_command_fail.log)
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: names_are_hard on November 23, 2022, 03:44:05 PM
Thanks.  Same file hash here, so that file at least has okay line endings.  I don't see that error.  Qemu fails builds on any compiler warnings, not just errors, so perhaps your compiler produces more warnings than mine.  What does gcc --version show you?  I'm on 10.2.

A quick search suggests you may be using GCC 11 or higher:
https://www.mail-archive.com/qemu-devel@nongnu.org/msg768454.html

If so the easiest fix will be to downgrade your GCC to 10.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: JOELwindows7 on November 23, 2022, 09:27:49 PM
Thanks.  Same file hash here, so that file at least has okay line endings.  I don't see that error.  Qemu fails builds on any compiler warnings, not just errors, so perhaps your compiler produces more warnings than mine.  What does gcc --version show you?  I'm on 10.2.

A quick search suggests you may be using GCC 11 or higher:
https://www.mail-archive.com/qemu-devel@nongnu.org/msg768454.html

If so the easiest fix will be to downgrade your GCC to 10.

Yep
My GCC is 11 series.
Code: [Select]
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ gcc
gcc            gcc-ar         gcc-nm         gcc-ranlib
gcc-11         gcc-ar-11      gcc-nm-11      gcc-ranlib-11
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ gcc --version
gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$
log (https://perkedel.netlify.app/assets/txt/logs/attempt_ml_2022-11-24/downgrade_gcc.log)

gotta figure out how to downgrade yess. Maybe, have a portable gcc again, figure out how to make compiler choose that old gcc.. idk.

Edit 1
Found way. you can explicitly set CC & CXX, this way (https://stackoverflow.com/a/3698487/9079640). e.g.
Code: [Select]
./configure CXX=g++-3.4 CC=gcc-3.4
make CXX=g++-3.4 CC=gcc-3.4

So maybe I can try uh..
Code: [Select]
../qemu-eos/configure --target-list=arm-softmmu --enable-plugins --disable-docs --enable-vnc --enable-gtk CXX=g++-10 CC=gcc-10
make -j16 CXX=g++-10 CC=gcc-10

idk.. will this work..

Oh yeah, first install `gcc-10`. still exist!
Code: [Select]
sudo apt install gcc-10 -y

Edit 2
bit wrong syntax on configure, you should instead
Code: [Select]
../qemu-eos/configure --target-list=arm-softmmu --enable-plugins --disable-docs --enable-vnc --enable-gtk --cxx=g++-10 -cc=gcc-10
watch that dash dash!

the make ones, still unmodified.

Edit 3
Ah crack!
Code: [Select]
...
  CC      net/dump.o
  CC      net/eth.o
  CC      net/announce.o
  CC      net/l2tpv3.o
  CC      net/vhost-user.o
In function ‘dump_receive_iov’,
    inlined from ‘filter_dump_receive_iov’ at /home/joelwindows7/sauce/simplified/qemu-eos/net/dump.c:159:5:
/home/joelwindows7/sauce/simplified/qemu-eos/net/dump.c:89:9: error: ‘writev’ specified size 18446744073709551600 exceeds maximum object size 9223372036854775807 [-Werror=stringop-overflow=]
   89 |     if (writev(s->fd, dumpiov, cnt + 1) != sizeof(hdr) + caplen) {
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:498,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/net/dump.c:25:
/home/joelwindows7/sauce/simplified/qemu-eos/net/dump.c: In function ‘filter_dump_receive_iov’:
/usr/include/x86_64-linux-gnu/sys/uio.h:52:16: note: in a call to function ‘writev’ declared with attribute ‘read_only (2, 3)’
   52 | extern ssize_t writev (int __fd, const struct iovec *__iovec, int __count)
      |                ^~~~~~
  CC      net/vhost-user-stub.o
  CC      net/slirp.o
cc1: all warnings being treated as errors
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: net/dump.o] Error 1
make: *** Waiting for unfinished jobs....
  CC      net/filter.o
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ sha1sum ../qemu-eos/net/dump.c
9f26c48ee1df90a002a0ade61b2acee369ab8415  ../qemu-eos/net/dump.c
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$
full log (https://perkedel.netlify.app/assets/txt/logs/attempt_ml_2022-11-24/retry_lan.log)

one more, gcc-10 I have is
Code: [Select]
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ gcc-10 --version
gcc-10 (Ubuntu 10.4.0-4ubuntu1~22.04) 10.4.0
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$
10.4.0
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: names_are_hard on November 23, 2022, 10:44:41 PM
You are probably still building using gcc 11: https://lore.kernel.org/all/20220109205748.4127032-1-philipp.tomsich@vrull.eu/
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: JOELwindows7 on November 24, 2022, 12:19:57 PM
You are probably still building using gcc 11: https://lore.kernel.org/all/20220109205748.4127032-1-philipp.tomsich@vrull.eu/

Sigh
It seems my system does not want to cooperate with my arguments. You know what, let's break my WSL. I'm going to make the `gcc` defaults to 10. Found way (https://askubuntu.com/a/26518/64076).

clear alternatives if necessary
Code: [Select]
sudo update-alternatives --remove-all gcc
sudo update-alternatives --remove-all g++

Now, I did:
Code: [Select]
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 10
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 20

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 10
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 20

sudo update-alternatives --install /usr/bin/cc cc /usr/bin/gcc 30
sudo update-alternatives --set cc /usr/bin/gcc

sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++ 30
sudo update-alternatives --set c++ /usr/bin/g++

since I only had one that `10` the --config
Code: [Select]
sudo update-alternatives --config gcc
sudo update-alternatives --config g++
does nothing.

Try again
I still have the same error
Code: [Select]
...
  CC      monitor/hmp-cmds.o
  CC      net/net.o
  CC      net/queue.o
  CC      net/checksum.o
  CC      net/util.o
  CC      net/hub.o
  CC      net/socket.o
  CC      net/dump.o
  CC      net/eth.o
  CC      net/announce.o
  CC      net/l2tpv3.o
  CC      net/vhost-user.o
  CC      net/vhost-user-stub.o
  CC      net/slirp.o
  CC      net/filter.o
In function ‘dump_receive_iov’,
    inlined from ‘filter_dump_receive_iov’ at /home/joelwindows7/sauce/simplified/qemu-eos/net/dump.c:159:5:
/home/joelwindows7/sauce/simplified/qemu-eos/net/dump.c:89:9: error: ‘writev’ specified size 18446744073709551600 exceeds maximum object size 9223372036854775807 [-Werror=stringop-overflow=]
   89 |     if (writev(s->fd, dumpiov, cnt + 1) != sizeof(hdr) + caplen) {
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/joelwindows7/sauce/simplified/qemu-eos/include/qemu/osdep.h:498,
                 from /home/joelwindows7/sauce/simplified/qemu-eos/net/dump.c:25:
/home/joelwindows7/sauce/simplified/qemu-eos/net/dump.c: In function ‘filter_dump_receive_iov’:
/usr/include/x86_64-linux-gnu/sys/uio.h:52:16: note: in a call to function ‘writev’ declared with attribute ‘read_only (2, 3)’
   52 | extern ssize_t writev (int __fd, const struct iovec *__iovec, int __count)
      |                ^~~~~~
  CC      net/filter-buffer.o
cc1: all warnings being treated as errors
make: *** [/home/joelwindows7/sauce/simplified/qemu-eos/rules.mak:69: net/dump.o] Error 1
make: *** Waiting for unfinished jobs....
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ cc
cc: fatal error: no input files
compilation terminated.
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ cc --version
cc (Ubuntu 10.4.0-4ubuntu1~22.04) 10.4.0
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ c++ --version
c++ (Ubuntu 10.4.0-4ubuntu1~22.04) 10.4.0
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$
log (https://perkedel.netlify.app/assets/txt/logs/attempt_ml_2022-11-24/still_somehow_same_error_despite.log)

Maybe go back to GCC9
tried, got different error, it's a `-nopie` mistake
Code: [Select]
...
  AS      pc-bios/optionrom/multiboot.o
  LINK    tests/qemu-iotests/socket_scm_helper
  CC      qga/commands.o
  AS      pc-bios/optionrom/linuxboot.o
  CC      pc-bios/optionrom/linuxboot_dma.o
  CC      qga/guest-agent-command-state.o
  AS      pc-bios/optionrom/kvmvapic.o
  AS      pc-bios/optionrom/pvh.o
  CC      pc-bios/optionrom/pvh_main.o
  BUILD   pc-bios/optionrom/multiboot.img
ld: Error: unable to disambiguate: -nopie (did you mean --nopie ?)
make[1]: *** [Makefile:53: multiboot.img] Error 1
make[1]: *** Waiting for unfinished jobs....
  CC      qga/main.o
  CC      qga/commands-posix.o
make: *** [Makefile:542: pc-bios/optionrom/all] Error 2
make: *** Waiting for unfinished jobs....
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ sha1sum pc-bios/optionrom/multiboot.img
sha1sum: pc-bios/optionrom/multiboot.img: No such file or directory
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$
log (https://perkedel.netlify.app/assets/txt/logs/attempt_ml_2022-11-24/dedd_oops.log)

Return to 10 anyways
And I've finally looked up `qemu dump.c writev error specified size` something, found this (https://gitlab.com/qemu-project/qemu/-/issues/1064), says it's not reproducible, but the last comment said (https://gitlab.com/qemu-project/qemu/-/issues/1064#note_1081669190) I can just `--disable-werror` (disable warning as error?). Okay, go back alternative to `10`, don't forget configure alternative, and then, configure qemu-eos with `--disable-werror`. Make again.
Code: [Select]
../qemu-eos/configure --target-list=arm-softmmu --enable-plugins --disable-docs --enable-vnc --enable-gtk --disable-werror && make -j16

& it had the same `-nopie` mistake error.
Code: [Select]
...
  AS      pc-bios/optionrom/linuxboot.o
  CC      pc-bios/optionrom/linuxboot_dma.o
  AS      pc-bios/optionrom/kvmvapic.o
  AR      libvhost-user.a
  AS      pc-bios/optionrom/pvh.o
  CC      pc-bios/optionrom/pvh_main.o
  BUILD   pc-bios/optionrom/multiboot.img
ld: Error: unable to disambiguate: -nopie (did you mean --nopie ?)
make[1]: *** [Makefile:53: multiboot.img] Error 1
make[1]: *** Waiting for unfinished jobs....
  LINK    tests/qemu-iotests/socket_scm_helper
  CC      qga/commands.o
  CC      qga/guest-agent-command-state.o
  CC      qga/main.o
  CC      qga/commands-posix.o
  CC      qga/channel-posix.o
make: *** [Makefile:542: pc-bios/optionrom/all] Error 2
make: *** Waiting for unfinished jobs....
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ gcc --version
gcc (Ubuntu 10.4.0-4ubuntu1~22.04) 10.4.0
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ cc --version
cc (Ubuntu 10.4.0-4ubuntu1~22.04) 10.4.0
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ ls pc-bios/optionrom/
Makefile    kvmvapic.o   linuxboot.o      linuxboot_dma.o  multiboot.o  pvh.o       pvh_main.o
kvmvapic.d  linuxboot.d  linuxboot_dma.d  multiboot.d      pvh.d        pvh_main.d
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ ls pc-bios/optionrom/multiboot.o
pc-bios/optionrom/multiboot.o
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ ls pc-bios/optionrom/multiboot.d
pc-bios/optionrom/multiboot.d
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ sha1sum pc-bios/optionrom/multiboot.o
96bba30ba2f9a83b7cb605ad5f5426c73517f5db  pc-bios/optionrom/multiboot.o
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$ sha1sum pc-bios/optionrom/multiboot.d
a6a91ec42f2e123b4e9aea3d76970cde568b5c2c  pc-bios/optionrom/multiboot.d
joelwindows7@JOEL-ROG-GL503GE:~/sauce/simplified/qemu-eos-build$
full log (https://perkedel.netlify.app/assets/txt/logs/attempt_ml_2022-11-24/eyap_error_locks_to_different.log)
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: names_are_hard on November 24, 2022, 04:25:39 PM
Some of those problems look pretty easy to fix, but only if you have a decent amount of C / gcc experience - I'm guessing you don't?

I'd recommend not using Ubuntu, use Debian Bullseye instead.  That's the distro I use for building and I know it works.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: JOELwindows7 on November 25, 2022, 09:26:44 AM
Some of those problems look pretty easy to fix, but only if you have a decent amount of C / gcc experience - I'm guessing you don't?

I'd recommend not using Ubuntu, use Debian Bullseye instead.  That's the distro I use for building and I know it works.

Yeah, I don't know how to GCC at the moment
Look, I've recently moved on from Friday Night Funkin Modding scene (https://gamebanana.com/mods/293257), No, not the drama, it's a long story. I finally have.. jobs. No, side hustle. The task comes up every time on a regular basis around 24 hours everyday. Therefore I can't keep up maintaining my FNF mod engine.

And basically, I've already had so many rabbit holes over past few years here. Wow, can't count how many, either active, deactivated, reactivated. Like Windows CE, Arduino, Raspberry Pi, Godot, Unity.. AH GET THE PECK OUT!, C++ (oh man, the second or third semester of my college back then), Haxe (yeah already mentioned Friday Night Funkin above), 3D Models (OH PLS WHERE IS DOWNLOAD LINK!!! WTF?!?!?!?), Arch Linux btw, etc.

wow so many things I had learned over the past few years.

Okay enough backstory
Yeah, I gave up. really give up, tired of this, sorry for disturbing your time (if I did). No more. Ubuntu indeed horrible in this scene. I know, porting stuffs to optimize for newer compiler libraries is haaaaaaaaaaaaaaaaaaard!!! Got it, not worth the time.

That's right, I shall just get the ISO here (https://www.debian.org/download). the Bullseye one yess.. (Whoah, it's the latest stable today?), get my Virtualbox (http://virtualbox.org) over here. Hopefully got enough space MAN I NEED MORE DISK SPACE BUY ME WD PLS!!, it works though, no crash because Host disk full..
set everything up, and indeed the GCC & G++ it had is 10 series, forgot what exact minor number. I did alot there.

So the logs in order:

Okay, lemme summarize:
I installed Debian Bullseye, into a VHD (btw, I'll share this later, coz this VHD is HUUUUGE, lots of consideration needed, where to upload this at, where guaranteed no auto-dead. would be my 1st Archive upload?, idk), set things up like build-essentials, cmake, everything libraries. Refollowed your lastly mentioned commands, wait no fail, continue from your instruction, WOW it works? I think? idk... tell me if there something wrong. I cannot test it until 2023 where my sister finished the semester unless I have the convince regarding running ROM dumper FIR won't brick it & had the dump ROM 3000D now.

Also I cloned the Original ML source code too, in case if people would like to figure out something for it.

AH damn it
I lost the log for QEMU compile works! I copy pasted the wrong terminal history. MAN that thingy! How do I supposed to re-prove...

okay, let's just recompile like if made change something (but not, just recompile)
Code: [Select]
cd ~/sauce/simplified/qemu-eos-build
make -j16 && make plugins && cp tests/plugin/libmagiclantern.so arm-softmmu/plugins/

result:
Code: [Select]
magiclantern@debian-magiclantern:~/sauce/simplified/qemu-eos-build$ make -j16 && make plugins && cp tests/plugin/libmagiclantern.so arm-softmmu/plugins/

make[1]: Entering directory '/home/magiclantern/sauce/simplified/qemu-eos/slirp'

make[1]: Nothing to be done for 'all'.

make[1]: Leaving directory '/home/magiclantern/sauce/simplified/qemu-eos/slirp'

LEX convert-dtsv0-lexer.lex.c

BISON dtc-parser.tab.c

make[1]: flex: No such file or directory

make[1]: bison: No such file or directory

LEX dtc-lexer.lex.c

make[1]: flex: No such file or directory

make[1]: Entering directory '/home/magiclantern/sauce/simplified/qemu-eos/slirp'

make[1]: Nothing to be done for 'all'.

make[1]: Leaving directory '/home/magiclantern/sauce/simplified/qemu-eos/slirp'

LEX convert-dtsv0-lexer.lex.c

make[1]: flex: No such file or directory

BISON dtc-parser.tab.c

make[1]: bison: No such file or directory

LEX dtc-lexer.lex.c

make[1]: flex: No such file or directory

  BUILD   plugins

magiclantern@debian-magiclantern:~/sauce/simplified/qemu-eos-build$



Okay definitely something wrong
I didn't have Bison & Lex thingy. let's install whatever I could guess. synaptic log (https://perkedel.netlify.app/assets/txt/logs/attempt_ml_2022-11-25/what_did_install_more.log)

try again..
Code: [Select]
magiclantern@debian-magiclantern:~/sauce/simplified/qemu-eos-build$ make -j16 && make plugins && cp tests/plugin/libmagiclantern.so arm-softmmu/plugins/

make[1]: Entering directory '/home/magiclantern/sauce/simplified/qemu-eos/slirp'

make[1]: Nothing to be done for 'all'.

make[1]: Leaving directory '/home/magiclantern/sauce/simplified/qemu-eos/slirp'

LEX convert-dtsv0-lexer.lex.c

BISON dtc-parser.tab.c

LEX dtc-lexer.lex.c

/home/magiclantern/sauce/simplified/qemu-eos/dtc/dtc-parser.y:57 parser name defined to default :"parse"

"/home/magiclantern/sauce/simplified/qemu-eos/dtc/dtc-parser.y", line 481: invalid @-construct

"/home/magiclantern/sauce/simplified/qemu-eos/dtc/dtc-parser.y", line 481: $� is invalid

free(): double free detected in tcache 2

DEP convert-dtsv0-lexer.lex.c

DEP dtc-lexer.lex.c

BISON dtc-parser.tab.c

/home/magiclantern/sauce/simplified/qemu-eos/dtc/dtc-parser.y:57 parser name defined to default :"parse"

"/home/magiclantern/sauce/simplified/qemu-eos/dtc/dtc-parser.y", line 481: invalid @-construct

"/home/magiclantern/sauce/simplified/qemu-eos/dtc/dtc-parser.y", line 481: $� is invalid

free(): double free detected in tcache 2

make[1]: Entering directory '/home/magiclantern/sauce/simplified/qemu-eos/slirp'

make[1]: Nothing to be done for 'all'.

make[1]: Leaving directory '/home/magiclantern/sauce/simplified/qemu-eos/slirp'

BISON dtc-parser.tab.c

/home/magiclantern/sauce/simplified/qemu-eos/dtc/dtc-parser.y:57 parser name defined to default :"parse"

"/home/magiclantern/sauce/simplified/qemu-eos/dtc/dtc-parser.y", line 481: invalid @-construct

"/home/magiclantern/sauce/simplified/qemu-eos/dtc/dtc-parser.y", line 481: $� is invalid

free(): double free detected in tcache 2

  BUILD   plugins

magiclantern@debian-magiclantern:~/sauce/simplified/qemu-eos-build$
log (https://perkedel.netlify.app/assets/txt/logs/attempt_ml_2022-11-25/go_result_now.log)

Okay idk what's going on, but it seems similar.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: names_are_hard on November 25, 2022, 04:49:23 PM
Ah, I wasn't suggesting you make a VM.  You can use Debian with WSL: https://wiki.debian.org/InstallingDebianOn/Microsoft/Windows/SubsystemForLinux

You changed your environment several times and didn't re-run qemu configure, so it's not picking up those changes (including the addition of bison and flex).  Make clean and then configure again if you want it to use those new things.

If you can't get a rom dump for a few months, that gives you time to learn more C and Ghidra.  The rom dump process is very low risk if you follow the instructions carefully.  Nothing is truly risk free, of course.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: JOELwindows7 on November 25, 2022, 09:14:51 PM
Ah, I wasn't suggesting you make a VM.  You can use Debian with WSL: https://wiki.debian.org/InstallingDebianOn/Microsoft/Windows/SubsystemForLinux

You changed your environment several times and didn't re-run qemu configure, so it's not picking up those changes (including the addition of bison and flex).  Make clean and then configure again if you want it to use those new things.

If you can't get a rom dump for a few months, that gives you time to learn more C and Ghidra.  The rom dump process is very low risk if you follow the instructions carefully.  Nothing is truly risk free, of course.

Debian WSL
Oh wow, why didn't I thought about that?, Microsoft Store had alot of Linux distro variations for the WSL. Oh well, that's alright. maybe the VHD would be useful for those who don't have Windows atleast 10, or Linux distro that isn't Debian Bullseye or whatever compatible with the ML simplified or OG ML right now, or perhaps school laptop that is too potato for even just opening more than 2 Chrome tabs. ...

...

Eh? wrong! LMAO!!!

Yeah, idk why would anyone VHD, I'll just have it later just in case.

But alright, let's just set it up so to confirm if both of these works. logs (to lazy to explain)

Well, basically it, I guess. I will tidy these things up in here. I got my WSL, I recommend you instead from now on use Debian WSL instead of Ubuntu. here Store (https://www.microsoft.com/en-us/p/debian/9msvkqc78pk6).

And hey, gegg0! You better update this one up here, the default Ubuntu (which ships with 20.04 LTS right now) failed horribly today.

Environment
Yep, I forgot to clean up & reconfigure. Also forgot to check if Bison & Flex installed. I got it handled, see above, log number 9 & 10. I'll also fix that further for the VHD.

And look, nothing wrong finally yeyyy!

Dump & Ghidra
Well about good news, the ROM dump maybe done-able faster, I asked my mom about when will she has final exam for this semester. she said about 24th December 2022, yeyyyyy...
Again, can't risk bricking the camera before she can finish the semester. Did that but not camera, it's to this my Gaming Laptop (I used for college) before, so I won't repeat this mistake, not to mention we're talking about embedded device, not something you can just redownload the OS and clean install call it a day. So, thancc for the convince. I should try.. idk..

Okay about C. well, the 3rd semester I had couple years ago, maybe it's just C. ... okay, say it's both C & C++, coz all I learned from the first time C is like stdio.h, printf, getchar, and even had assignment where you be like solve problem jam game, you see a problem, code the solution, submit your code, see if you error, wrong answer, etc. Man, that's a C. C++ I saw somewhere semester is like cout, cin, using namespace std, what have you.. Had ever learned JUCE.. Damn, got sidetracked here..

ALso yeah. Ghidra (https://ghidra-sre.org/). I should've downloaded this as soon as I had ever heard it mentioned alot in LiveOverflow YouTube channel serveral years ago. Btw, make sure you had latest version folks or at least update the log4j parts. the version in & after 10.1 patched the log4j issues (https://github.com/NationalSecurityAgency/ghidra/security/advisories/GHSA-j3xg-fc2p-4jc4). Very curious, I'll figure this out what can I do with this thing for this case here.

I guess that's it for now. thancc for attention.
Title: Re: Compiling Magic Lantern on Windows 10 (using its Linux subsystem)
Post by: names_are_hard on November 25, 2022, 10:23:46 PM
Great, I'm glad you got it working.