PM builds for Linux

Talk about code development, features, specific bugs, enhancements, patches, and similar things.
Forum rules
Please keep everything here strictly on-topic.
This board is meant for Pale Moon source code development related subjects only like code snippets, patches, specific bugs, git, the repositories, etc.

This is not for tech support! Please do not post tech support questions in the "Development" board!
Please make sure not to use this board for support questions. Please post issues with specific websites, extensions, etc. in the relevant boards for those topics.

Please keep things on-topic as this forum will be used for reference for Pale Moon development. Expect topics that aren't relevant as such to be moved or deleted.
access2godzilla

PM builds for Linux

Unread post by access2godzilla » 2013-07-03, 06:15

Could there be any builds of PM for Linux? If not, why?

User avatar
Night Wing
Knows the dark side
Knows the dark side
Posts: 5174
Joined: 2011-10-03, 10:19
Location: Piney Woods of Southeast Texas, USA

Re: PM builds for Linux

Unread post by Night Wing » 2013-07-03, 11:42

This question was asked a long time ago and Moonchild said he wasn't going to make a linux version of Pale Moon because there are many, many linux distributions and each distribution is different.

You can run the Windows version of Pale Moon in Linux Mint 14 XFCE since I'm typing this message using Pale Moon (32-bit) under Wine, using Linux Mint 14 (64-bit) in the XFCE flavor. Linux Mint comes in five "flavors" which are Debian, Cinnamon, Mate, KDE and XFCE. The Windows only Pale Moon (32-bit) runs with no problems in my linux setup. Keep in mind both of my desktop tower computers are 64-bit motherboard machines.

The Windows only Pale Moon may or may not work with other linux distributions. It's an experiment you can try if you have a tower desktop computer with two hard drives in it like I have or you can try an external hard drive if you have a laptop. In my desktop computers (I have two desktops towers) one hard drive has Windows 7 (64-bit) on it and the second hard drive has Linux Mint 14 XFCE (64-bit) on it.

I have one reservation though. Since Pale Moon is Windows only, running Pale Moon in Linux Mint is probably leaving me susceptible to Windows virus/malware programs since I don't have any anti-virus program installed in Linux Mint. I've heard through the grapevine since Linux Mint uses the linux version of Firefox by default, anti-virus/malware programs are not needed in linux. Since Pale Moon is running under Wine, I've been wondering if I should try to run the Windows version of Avast to keep my computer safe when I'm using Windows only Pale Moon under Wine in Linux Mint 14 XFCE. I've googled this question, but I haven't gotten any straight answers yet because Avast has a linux version and people keep referring to it instead of the Windows version of Avast so it's confusing for me. I don't even know if the Windows version of Avast will run under Wine.

Keep this in mind. I'm a non-technical user, not a power user so I'm basically "not very knowledgeable" when it comes to experimentation with regards to the Windows or Linux operating systems.
Last edited by Night Wing on 2013-07-03, 17:57, edited 1 time in total.
Linux Mint 21.3 (Virginia) Xfce w/ Linux Pale Moon, Linux Waterfox, Linux SeaLion, Linux Firefox
MX Linux 23.2 (Libretto) Xfce w/ Linux Pale Moon, Linux Waterfox, Linux SeaLion, Linux Firefox
Linux Debian 12.5 (Bookworm) Xfce w/ Linux Pale Moon, Linux Waterfox, Linux SeaLion, Linux Firefox

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35651
Joined: 2011-08-28, 17:27
Location: Motala, SE

Re: PM builds for Linux

Unread post by Moonchild » 2013-07-03, 12:01

Despite what Night Wing said, I'm open to people contributing builds for Linux, although I won't build them myself.
See also: 3rd Party Builds for basic rules, and
http://forum.palemoon.org/viewtopic.php?f=19&t=1888 for concise build instructions.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

access2godzilla

Re: PM builds for Linux

Unread post by access2godzilla » 2013-07-03, 17:29

Night Wing wrote:This question was asked a long time ago and Moonchild said he wasn't going to make a linux version of Pale Moon because there are many, many linux distributions and each distribution is different.
Cross distribution builds are possible - both Mozilla and Chrome provide Linux binaries for FF and Chrome respectively, which require no installation they can be run on any Linux distro. Of course, if you don't have things like libgtk installed, it won't run.
Moonchild wrote:I'm open to people contributing builds for Linux, although I won't build them myself.
In the light of the above, are you still averse to build them?

And if you are not building them (but simply use a contributed build), how will the branding and mozconfig options be there?

BTW, I had some questions about building it on Linux:
  • Did you remove some of the Linux specific code from the makefiles? While trying to build PM, I saw the wrong options being passed onto the compiler.
  • Is there some method by which compiler options can be set up? For most other Unix/Linux software, where the compile process simply involves "./configure && make install", these options can be configured by changing the values of the CFLAGS and CXXFLAGS in the shell. However, the FF/PM build process seemingly ignores them.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35651
Joined: 2011-08-28, 17:27
Location: Motala, SE

Re: PM builds for Linux

Unread post by Moonchild » 2013-07-03, 19:16

I'm not going to build Pale Moon for Linux myself at this time.

Branding and mozconfig: did you even read the places I linked to? I've already explained it there.

As for building on Linux, look up the build documentation on MDN - it's explained there how to build Firefox on Linux; building Pale Moon on Linux can be done with the same method. Most notably you do not want to run ./configure in the source tree as it will confuse the build process and mess up your source tree. If you have already done so, start from scratch, and run the proper build commands after setting up your build environment. Make sure to add the proper compile flags to your .mozconfig for optimization of the compiler you use.

A side note: Do not use a 2-stage, profiled compile run (profiledbuild); it will likely not work and/or produce unstable or broken binaries.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

access2godzilla

Re: PM builds for Linux

Unread post by access2godzilla » 2013-07-04, 17:43

The following files contain the string "-SUBSYSTEM:CONSOLE" which is not meant for Linux:

Code: Select all

./js/src/config/config.mk
./config/config.mk
./netwerk/streamconv/test/Makefile.in
I have found that irrespective of the platform the options gets passed to the compiler which causes an error. Please rectify this.

(I'm not sure which of the above files is the culprit though.)

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35651
Joined: 2011-08-28, 17:27
Location: Motala, SE

Re: PM builds for Linux

Unread post by Moonchild » 2013-07-04, 19:38

The config.mk files have edits specifically to add Windows XP compatibility to VS2012. That is the only reason the subsystem: entries are there (following Mozilla bug #744942) -- You can simply remove the LDFLAGS if they cause issues, although they should all be properly enclosed in IF clauses?
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

access2godzilla

Re: PM builds for Linux

Unread post by access2godzilla » 2013-07-06, 17:44

Can PM be compiled for Linux at all?

The "nsprpub" is in a complete mess. There are wrong preprocessor directives (that don't consider Linux to be a supported) and even missing headers.

I could work around the issue about the preprocessor directives and have been able to correct the some of the issues of the missing headers, but now it asks for "prcpucfg.h" which I can't find in the archive.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35651
Joined: 2011-08-28, 17:27
Location: Motala, SE

Re: PM builds for Linux

Unread post by Moonchild » 2013-07-06, 20:11

Yes, it can be compiled for Linux using gcc.
I've done so in the past without issues, just make sure you have the proper build environment set up before you try to build.

prcpucfg.h (and plenty of other header files) are generated by the build process; they are not static source files.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

lyceus

Re: PM builds for Linux

Unread post by lyceus » 2013-07-07, 02:10

I remark the obvious facts, but in the past people built Pale Moon from source and founded that the Windows version in Wine was more reliable and fast. So why the experimental Linux builds available to the public are uncommon. You will need to made some QA to test the speed of your builds for your Linux flavor/architecture (HTML5test, acid test, etc.)

User avatar
Night Wing
Knows the dark side
Knows the dark side
Posts: 5174
Joined: 2011-10-03, 10:19
Location: Piney Woods of Southeast Texas, USA

Re: PM builds for Linux

Unread post by Night Wing » 2013-07-07, 11:22

lobocursor wrote:I remark the obvious facts, but in the past people built Pale Moon from source and founded that the Windows version in Wine was more reliable and fast.
Windows only Pale Moon under Wine running in Linux Mint 14 XFCE is very fast. When compared against the linux version of Firefox, I literally can't see the difference in speed between the two browsers with my own eyes.

In terms of reliability, Windows only Pale Moon under Wine running in Linux Mint 14 XFCE, Pale Moon is solid as a rock. There hasn't been a single problem crop up and I was expecting to see at least one problem, but so far, none.

When it comes to computer code, I'm illiterate. If someone would build a linux version of Pale Moon, I would definitely try it since I worry about malware using the Windows only version of Pale Moon under Wine. I haven't tried downloading the Windows version of Avast to see if it would run under Wine since it might create a problem or problems which I wouldn't know how to fix.
Linux Mint 21.3 (Virginia) Xfce w/ Linux Pale Moon, Linux Waterfox, Linux SeaLion, Linux Firefox
MX Linux 23.2 (Libretto) Xfce w/ Linux Pale Moon, Linux Waterfox, Linux SeaLion, Linux Firefox
Linux Debian 12.5 (Bookworm) Xfce w/ Linux Pale Moon, Linux Waterfox, Linux SeaLion, Linux Firefox

lyceus

Re: PM builds for Linux

Unread post by lyceus » 2013-07-08, 03:04

Night Wing wrote:When it comes to computer code, I'm illiterate. If someone would build a linux version of Pale Moon, I would definitely try it since I worry about malware using the Windows only version of Pale Moon under Wine. I haven't tried downloading the Windows version of Avast to see if it would run under Wine since it might create a problem or problems which I wouldn't know how to fix.
I am not sure if it works for wine but you could try ClamAV for Linux servers. Basically is not for use in Linux systems per-se but for search in email as several Linux systems are mail really, but the app has a local scan app in case you need it. I had used only the Windows version (is slow) until I moved to Avast!

http://www.clamav.net/lang/en/

I hope it works meanwhile someone made a stable Linux PM version! ;)