Recently, I was looking to do the same thing. I develop for jailbroken devices. In our community, lots of people that can't afford Macs use Linux for building their projects. I see it quite a bit.
Clang/LLVM and Apple's ld64 are used to compile and link Objective-C projects. Luckily, all three are open source, meaning that you can use them on just about any UNIX-based OS. (I think Clang/LLVM supports Windows too, but I doubt ld64 does)
There are many toolchains people have put together to build iOS projects on non-Mac operating systems. You can Google them.
Darling
My personal favorite is the Darling project. It is similar to Wine in that it allows you to run Mac OS X binaries on Linux. When used in conjunction with Apple's toolchain that comes with Xcode, it works wonderfully, much better than any other toolchain. Also, since Apple has yet to commit arm64 support to Clang/LLVM (it's still closed source), this method still allows you to compile for arm64. It's also pretty reliable, in that you'll be able to update your toolchain the second Apple releases a new version, without having to wait for the source code.
I use Darling in my server for copy protection. When someone purchases my product, my server builds a copy specifically for them, embedding their device information in it. That way, if it is pirated, I can see "who dun it". It currently builds 5-6 copies a minute when sales are high, and so far, it has handled the strain just fine.
I've written a (somewhat long) tutorial for setting up Darling on Linux. It's targeted toward jailbroken development, but I'm sure you can adapt it to suit your needs.