litespeedtech / openlitespeed

Our high-performance, lightweight, open source HTTP server
https://openlitespeed.org
GNU General Public License v3.0
1.2k stars 194 forks source link

FreeBSD: Compilation warnings again with 1.8.0 #378

Closed ozgurkazancci closed 8 months ago

ozgurkazancci commented 9 months ago

Hi. So the version 1.8.0 is now released and I was VERY excited to read in Release Notes;

"Improved compatibility with MacOSX, FreeBSD. Improved build.sh with optional module compilation."

Thus, after a long while, I wanted again, to try building OpenLiteSpeed on FreeBSD 14 - amd64 box, although with; ./build.sh -p OFF -o OFF -l OFF (to maximize the compatibility - deselecting the installation of external modules)

Got full of errors again :(

[Notice] We only have lsphp7 ready for Centos, Debian and Ubuntu in x86_64 architecture.
ld-elf32.so.1: /usr/local/lib/libexpat.so.1: unsupported file layout
Generating key pair for web console login page, please wait ...
ld-elf32.so.1: /usr/local/lib/libexpat.so.1: unsupported file layout
chown: /usr/local/lsws/admin/conf/jcryption_keypair: No such file or directory
chmod: /usr/local/lsws/admin/conf/jcryption_keypair: No such file or directory

cp: modules/*.so: No such file or directory
Installation finished, Enjoy!
make[1]: "/root/ols/third-party/src/libaio-0.3.113/src/Makefile" line 19: Invalid line type
make[1]: "/root/ols/third-party/src/libaio-0.3.113/src/Makefile" line 21: Invalid line type
make[1]: "/root/ols/third-party/src/libaio-0.3.113/src/Makefile" line 64: Invalid line type
make[1]: "/root/ols/third-party/src/libaio-0.3.113/src/Makefile" line 68: Invalid line type
make[1]: Fatal errors encountered -- cannot continue
make[1]: stopped in /root/ols/third-party/src/libaio-0.3.113/src
*** Error code 1

Stop.
make: stopped in /root/ols/third-party/src/libaio-0.3.113
make: don't know how to make clean. Stop
make: stopped in /root/ols/third-party/src/udns
/usr/bin/install -c -m 644 ./man/man1/*.1 '/root/ols/third-party/share/man/man1'
install: ./man/man1/*.1: No such file or directory
*** Error code 71

Stop.
make[2]: stopped in /root/ols/third-party/src/libmaxminddb
*** Error code 1

Stop.
make[1]: stopped in /root/ols/third-party/src/libmaxminddb
*** Error code 1

Stop.
make: stopped in /root/ols/third-party/src/libmaxminddb
[100%] Linking CXX executable openlitespeed
[100%] Built target openlitespeed
cp: build/src/modules/CMakeFiles/*.so: No such file or directory
cp: build/src/modules/Makefile/*.so: Not a directory
cp: build/src/modules/cache/*.so: No such file or directory
cp: build/src/modules/cmake_install.cmake/*.so: Not a directory
cp: build/src/modules/modgzip/*.so: No such file or directory
Start to pack files.
Building finished, please run ./install.sh for installation.
[root@SERVER:~/ols/openlitespeed-1.8.0]# ./install.sh
./_in.sh: arch: not found
./_in.sh: arch: not found
SSL host is [webadmin], use adminSSL
admin_php downloaded.
ld-elf32.so.1: /usr/local/lib/libexpat.so.1: unsupported file layout

Any clue on how to install OpenLiteSpeed headache-free under FreeBSD?

A high-performance web server like OpenLiteSpeed would be the perfect choice (and a great alternative to nginx) on a server OS like FreeBSD; having a very stable and fully performant TCP/IP networking stack.

Any plan to give FreeBSD some love?

Regards.

litespeedtech commented 9 months ago

The biggest headache for FreeBSD is to compile third-party boringSSL . Please check if you can build boringSSL successfully. May need to patch up something to make it compile. once get over that hurdle, others should be easy.

ozgurkazancci commented 9 months ago

Well, there's already a security/boringssl binary package under FreeBSD, ready to be installed by "pkg". However, it has some horror lines in its description text;

"Fork of OpenSSL that is designed to meet Google's needs. Although BoringSSL is an open source project, it is not intended for general use, as OpenSSL is. We don't recommend that third parties depend upon it. Doing so is likely to be frustrating because there are no guarantees of API or ABI stability."

Persistently and stubbornly trying to have a stable&flawless OpenLiteSpeed since FreeBSD release 11 (it was first time I was trying it; and I had hairs on my head back then 😃), and later releases 12.1, 13 and now 14, and according to the lines above; it seems I've reached end of my adventure.