- NSIS Discussion
- NSIS FreeBSD € 1000 to win contest
Archive: NSIS FreeBSD € 1000 to win contest
onad
7th November 2005 15:13 UTC
NSIS FreeBSD € 1000 to win contest
Contest goal:
Compile a successfully running makensis under FreeBSD.
The prizes to win if the solution and all belonging code is posted in the forum:
Under 3 days € 1000
Under 7 days € 600
Under 14 days € 300
Under 30 days € 200
If the under 7 days term is met, a € 400 bonus goes to the NSIS general development.
Why the contest?
I want to promote automatic builds with NSIS on open platforms like FreeBSD, and I was not successful so far.
Allowances:
- Precompiled exeheads are allowed, only makensis needs to be natively an FreeBSD executable.
- A compile and run also only needs to be successful on the x86 Platform.
- People contesting must be alread a forum member as of this post timestamp.
- The solution must compile under GCC 3.4.x or higher.
- Make and Scons solution allowed
Winner time:
If there are more forum posting *different* a solution in the same minute, prize will be divided among them.
Q: I'm afraid that if I post my solution, I do not get paid.
A: Well, don't post it then ;) a little trust one must have.
Good luck!
pabs
8th November 2005 03:47 UTC
WOW! You rock onad! I might just install freebsd on that spare partition. It might take me days to download and install tho :(
Hmm, freebsd doesn't seem to have any way to netinstall it without a floppy or cdrom :S
BTW, is this the CVS version or the latest release?
onad
8th November 2005 08:38 UTC
Hi Pabs,
Expecting already a reponse from at least you ;). Don't care which version CVS or 2.10.
BTW I can send you the v4.11 v.5.3 and v6.0 CD's for free if it helps you in the quest. Installs just fine and easy.
Send a private message to me with adress if you want me to send the CD's to which ofcourse you can keep.
kichik
8th November 2005 19:37 UTC
Compiled using the attached patch, which is already committed to CVS, and:
scons.py SKIPSTUBS=all SKIPPLUGINS=all SKIPUTILS=all SKIPMISC=all LIBPATH=/usr/local/lib CC=gcc30 CXX=g++30
on:
kichik@x86-freebsd1:~$ uname -a
FreeBSD x86-freebsd1 4.11-RELEASE FreeBSD 4.11-RELEASE #0: Wed Oct 5 21:16:58 PDT 2005 root@x86-freebsd1:/usr/obj/usr/src/sys/GENERIC i386
Resulting makensis also
uploaded.
onad
8th November 2005 20:16 UTC
REALLY Great!
Well since it is you "kichik", master of NSIS knowledge, to give the patch I assume it works ;) I'll test it on my FreeBSD v6 machine and report back as soon as it runs.
If it works you are the winner! and I will contact you about payment details.
Thanks!
onad
9th November 2005 16:08 UTC
CVS maintanance on sourceforge 20051109 made it impossible today to download the latest source :(
Will try tomorrow again...
onad
10th November 2005 18:14 UTC
Still iconv.h build problems
Compiled CVS of 20051110 on WinXP, no problem.
Moved files to FreeBSD6
I tried to build with precompiled stubs, removed old files first but still no luck... :(
See included log for all details needed
kichik
10th November 2005 20:37 UTC
Do you have iconv.h somewhere in the system? Run `locate iconv.h`, see where it is, and use that path for CPPPATH. It's probably /usr/local/include. So this should do the trick:
scons SKIPSTUBS=all SKIPPLUGINS=all SKIPUTILS=all SKIPMISC=all LIBPATH=/usr/local/lib CPPPATH=/usr/local/include CC=gcc30 CXX=g++30
onad
11th November 2005 08:48 UTC
Well, yes I tried that already ofcourse... but no luck.
Any other hint. e.g. on which path is on your freeBSD PC the iconv.h so I can just make a symboliclink with the same naming as on your machine.
kichik
11th November 2005 10:45 UTC
For me it's at:
kichik@x86-freebsd1:~/nsis-2.10-src$ locate iconv.h
/usr/X11R6/include/gal/util/e-iconv.h
/usr/compat/linux/usr/include/iconv.h
/usr/include/sys/iconv.h
/usr/local/include/iconv.h
/usr/obj/usr/src/sys/GENERIC/libiconv.h
/usr/obj/usr/src/sys/GENERIC/opt_libiconv.h
/usr/src/sys/sys/iconv.h
But it doesn't matter where it is as long as CPPPATH points to it, or the compiler searches there automatically.
If you can give me shell access to your machine, it'd be easier to find out exactly what's wrong.
onad
11th November 2005 12:54 UTC
YYYYYYEEEEEESSSSSSSS, kichik, look below, and you know what I mean! :-) Time for me to invite friends for a drink...
g++ -o build/release/makensis/makensis -s -Wl,-Map,build/release/makensis/makensis.map -pthread build/release/makensis/build.o build/release/makensis/clzma.o build/release/makensis/crc32.o build/release/makensis/DialogTemplate.o build/release/makensis/dirreader.o build/release/makensis/growbuf.o build/release/makensis/lang.o build/release/makensis/lineparse.o build/release/makensis/makenssi.o build/release/makensis/mmap.o build/release/makensis/Plugins.o build/release/makensis/ResourceEditor.o build/release/makensis/ResourceVersionInfo.o build/release/makensis/script.o build/release/makensis/ShConstants.o build/release/makensis/strlist.o build/release/makensis/tokens.o build/release/makensis/util.o build/release/makensis/bzip2/blocksort.o build/release/makensis/bzip2/bzlib.o build/release/makensis/bzip2/compress.o build/release/makensis/bzip2/huffman.o build/release/makensis/7zip/7zGuids.o build/release/makensis/7zip/Common/CRC.o build/release/makensis/7zip/7zip/Compress/LZ/LZInWindow.o build/release/makensis/7zip/7zip/Compress/LZMA/LZMAEncoder.o build/release/makensis/7zip/7zip/Common/OutBuffer.o build/release/makensis/7zip/7zip/Compress/RangeCoder/RangeCoderBit.o build/release/makensis/7zip/Common/Alloc.o build/release/makensis/zlib/deflate.o build/release/makensis/zlib/trees.o -L/usr/local/lib -lpthread -lstdc++ -liconv
scons: done building targets.
File could not be attatched in zip since it is 177KB, anyhow will make a Wiki page of POSIX struggles and explaining how to succeed.
^^^^^
...now in to my so.1 not found, but that is something different...
onad
11th November 2005 13:08 UTC
For people interested, a compiled version can be found on:
http://stashbox.org/uploads/11317143..._freeBSDv6.zip (bad version)
Remember that it is ofcourse better to try and make a successfull compiled build on your on FreeBSD system yourself.
onad
11th November 2005 14:18 UTC
Basic.nsi example gives ReadVarLenArr error under FreeBSD
When compiling the Basic.nsi example of ModernUI I get:
"Error while changing UI: ReadVarLenArr - Unicode conversion failed."
This is thrown e.g. from DialogTemplate.cpp?
See included file.
kichik
11th November 2005 14:52 UTC
It's iconv erroring out with EILSEQ which means:
An invalid multibyte sequence has been encountered in the input.
I'll take a deeper look.
In the meanwhile, a fresh port of
iconv might do the trick.
kichik
11th November 2005 15:30 UTC
It defauls to Big Endian Unicode. Simply change both UCS-2 to UCS-2LE in util.cpp. I'll commit the change once CVS is back online.
onad
11th November 2005 17:47 UTC
Good, thanks again, that solved it!
Will perform more tests of examples and soon go to test a real big script that I created and works perfectly on Win32.
At the moment cannot yet test on FreeBSD build machine v4.11.
Btw
the static lib makensis build you created did solve my lib problem though, but I will need some time to test it all. Have a good weekend.
onad
11th November 2005 18:35 UTC
So far so good, could almost compile all the examples without changeing ANYTHING. Have to take a loo at the gfx.nsi example and beloning code.
Will come back with detailed results and a test shellscript to automate the scripts.
kichik
11th November 2005 18:48 UTC
There's no need for a shell script. You can run `scons test-scripts` to test all of the scripts. Use -k to continue even if there are errors.
gfx.nsi can't be compiled on non-Windows platforms because it uses AddBrandingImage.
iceman_k
11th November 2005 21:28 UTC
Party at kichik's this weekend. :)
(Got to help him spend that € 1000)
kichik
3rd April 2006 20:52 UTC
After much effort by onad, the money was transferred. Thanks onad for your generous support!
On a side note, the next version will support big-endian platforms. The current CVS version already has this support. This means makensis should be build-able on every platform known to man. Well, maybe not the really weird ones ;) If there are any build problems on a specific platform, please do let me know by submitting a bug report.
iceman, if you manage get anyone to my house, the beer is on me :)
iceman_k
3rd April 2006 22:41 UTC
The plane fare is probably going to exceed the € 1000, so it will be a very expensive beer. :D
coopersss
9th February 2010 20:48 UTC
Hello all.
I need help for compile NSIS on freeBSD 6.
i also have a error with "iconv.h".
i locate iconv.h. It was usr/local/include
BTW, dir nsis-2.46 i put in home/user3/data/test2
Next typed:
root# scons SKIPSTUBS=all SKIPPLUGINS=all SKIPUTILS=all SKIPMISC=all NSIS_CONFIG_CONST_DATA_PATH=no LIBPATH=/usr/local/lib CPPPATH=/usr/local/include PREFIX=/usr/local install-compiler
and get error with iconv.h
Without prefix i got error with iconv.h
without install-compiler, but with CC=gcc30 CXX=g++30
i got "no such file windows.h"
i don't know what i must do. help please.
sorry for bad english.
coopersss
10th February 2010 11:19 UTC
Now i have another problem.
i need install NSIS on freebsd 6
typed
alivelab# scons SKIPSTUBS=all SKIPPLUGINS=all SKIPUTILS=all SKIPMISC=all NSIS_CONFIG_CONST_DATA_PATH=no APPEND_LIBPATH="/usr/local/lib" APPEND_CPPPATH="/usr/local/include"
and got
.o -L/usr/local/lib -lpthread -liconv
scons: done building targets.
i think it's ok
then i typed
alivelab# scons SKIPSTUBS=all SKIPPLUGINS=all SKIPUTILS=all SKIPMISC=all NSIS_CONFIG_CONST_DATA_PATH=no APPEND_LIBPATH="/usr/local/lib" APPEND_CPPPATH="/usr/local/include" install
but i got
scons: done reading SConscript files.
scons: Building targets ...
scons: Nothing to be done for `INSTALL'. scons: done building targets.
and what todo now?
how i can get exe from nsi?
kichik
15th February 2010 13:37 UTC
If it actually complained about "INSTALL", replace it with "install" in all lowercase. If it still doesn't work, try adding PREFIX=something.