I have a fully working project in TeXstudio (and overleaf). I want to use makefile to recompile, and I am unable to figure out the exact sequence of commands TeXstudio uses in a full compilation process.
pdflatex -synctex=1 -interaction=nonstopmode "main".tex
This does not create the same output when the bibtex and other aux files are cleaned.
Furthermore, I have tried using strace, but so far it has been unsuccessful. The surprising thing is, I can't even see syscalls related to executing a command.
I found this method to list the system calls. And I opened texstudio,then started strace, run compilation and then stop strace.
strace -o >(awk '$1 ~ /^-----/ { toprint = !toprint; next } { if (toprint) print $NF }') \
-c -p `pgrep texstudio` >/dev/null 2>/dev/null
And I could only recognize clone and clone3 syscalls related to running another command.
Here's the list of all syscalls made during the compile process
wait4
poll
readlink
clone
access
read
futex
writev
openat
ioctl
write
newfstatat
statx
clone3
mprotect
close
ppoll
mmap
fcntl
rt_sigprocmask
waitid
pipe2
rt_sigreturn
restart_syscall
getcwd
eventfd2
lseek
recvmsg
inotify_add_watch
inotify_rm_watch
Can someone help me figure out the whole compile cycle? This way or any other way (maybe by logs or just knowledge)?
Because all the tools are CLI, but I can't find a way to use them in an actual terminal.
– Shriraj Hegde Dec 14 '22 at 13:55latexmkto compile your file, this will automatically determine which tools need to be run. – samcarter_is_at_topanswers.xyz Dec 14 '22 at 14:09latexmk -pdfand it generated a PDF that are identical (verified withdiffpdf) – Shriraj Hegde Dec 14 '22 at 14:32