Comments (22)
Yes, libc++ is not ready now. There's still plenty of work including libc upgrading.
from crossbridge.
Libc upgrading is roughly done. Wish libc++ to be done soon.
from crossbridge.
Any progress with libc++?
from crossbridge.
I think it will be done very soon. I can upload the files if you'd like to try it.
Oh, I am a little over-optimistic. So let code in first.
from crossbridge.
Hi. Just tested commit e6b4dfe. I'm getting a few errors. First one occurs while building stdlibs target:
/Users/stopiccot/code/flash/crossbridge/build/mac/libthr/libthr/thread/thr_exit.c:110:1: error: conflicting types for '_Unwind_GetCFA'
_Unwind_GetCFA(struct _Unwind_Context *context)
which can be fixed obviously. The second occurs while building as3wig target and seems to be more complex:
In file included from AS3Wig.cpp:22:
In file included from /Users/stopiccot/code/flash/crossbridge/sdk/usr/bin/../../usr/include/AS3++/AS3Wig.h:23:
In file included from /Users/stopiccot/code/flash/crossbridge/sdk/usr/bin/../../usr/include/AS3/AS3++.h:16:
In file included from /Users/stopiccot/code/flash/crossbridge/sdk/usr/bin/../../usr/include/c++/4.2/string:56:
In file included from /Users/stopiccot/code/flash/crossbridge/sdk/usr/bin/../../usr/include/c++/4.2/algorithm:67:
/Users/stopiccot/code/flash/crossbridge/sdk/usr/bin/../../usr/include/c++/4.2/bits/stl_algo.h:1985:40: error: no member named 'rand' in namespace 'std'
std::iter_swap(__i, __first + (std::rand() % ((__i - __first) + 1)));
~~~~~^
It seems that despite we should use libc++, gcc 4.2 headers are somehow getting into compilation which is obviously incorrect. Looking forward for your response.
from crossbridge.
Hi. Just tested commit 37b738b. I've changed my main.cpp to:
#include <iostream>
int main() {
std::cout << "crossbridge test" << std::endl;
return 0;
}
It compiled fine using command line:
$ .../crossbridge/sdk/usr/bin/clang++ ./main.cpp -emit-swf -o ~/test.swf
It's already a good milestone :) But generated swf crashes on startup. Here is what I have in my flashlog.txt:
Error
at global/C_Run::F__sync_val_compare_and_swap_1()
at global/C_Run::F__ZNSt3__16locale8__globalEv()
at global/C_Run::F__ZNSt3__110__stdinbufIcEC2EP7__sFILEP11__mbstate_t()
at global/C_Run::F__ZNSt3__18ios_base4InitC2Ev()
at global/C_Run__2F_var_2F_folders_2F_gy_2F_5rs8cgt96sj_1bf1qxcpqmtw0000gn_2F_T_2F__2F_sK9QJI_2E_lto_2E_bc_3A_6F0C363B_2D_EC8B_2D_439B_2D_86C8_2D_8F DFED6DCB03::F__GLOBAL__I_a()
at com.adobe.flascc::CModule$/callI()
at com.adobe.flascc::CModule/runCtors()
at com.adobe.flascc::CModule$/runCtors()
at global/C_Run::F__init()
at global/C_Run::F__start1()
at com.adobe.flascc::CModule$/callI()
at com.adobe.flascc::CModule$/start()
at com.adobe.flascc::CModule$/startAsync()
at com.adobe.flascc::Console/init()
at com.adobe.flascc::Console()
at com.adobe.flascc.preloader::DefaultPreloader/onPreloaderComplete()
FlasCC does not support CAS on a non-32bit values..
from crossbridge.
Thanks. Known issue.
from crossbridge.
A minor fix is uploaded. Hope it works all the time.
from crossbridge.
What toolchain/OS combo do you use guys to get the futures branch "working" ?
from crossbridge.
@rtissera Mac OS X Lion 10.7.5 (11G63b) + Xcode Version 4.6.3 (4H1503).
Also major parts are also working in Cygwin.
from crossbridge.
Hi. Recent commits to futures branch made it workable for simple test programs that use C++11 features. So I decided to test our project. I'm getting a lot of weird link time errors:
error: z: no archive symbol table (run ranlib)
error: LLVM gold plugin has failed to create LTO module: Invalid MODULE_CODE_GLOBALVAR record
error: SDL: member at 7992 is not an ELF object
error: LLVM gold plugin has failed to create LTO module: Invalid MODULE_CODE_GLOBALVAR record
error: SDL: member at 286344 is not an ELF object
error: LLVM gold plugin has failed to create LTO module: Invalid MODULE_CODE_GLOBALVAR record
error: SDL: member at 289732 is not an ELF object
error: LLVM gold plugin has failed to create LTO module: Invalid MODULE_CODE_GLOBALVAR record
error: SDL: member at 340280 is not an ELF object
error: LLVM gold plugin has failed to create LTO module: Invalid MODULE_CODE_GLOBALVAR record
error: SDL: member at 371328 is not an ELF object
error: LLVM gold plugin has failed to create LTO module: Invalid MODULE_CODE_GLOBALVAR record
error: SDL: member at 389676 is not an ELF object
....
Do you have any idea what can be causing these errors?
from crossbridge.
It's better for me :)
I just missed the following symbols at link time :
_powl
__openat
__fstatat
Seems missing from libc.a :(
2013/10/17 Alexey [email protected]
Hi. Recent commits to futures branch made it workable for simple test
programs that use C++11 features. So I decided to test our project. I'm
getting a lot of weird link time errors:error: z: no archive symbol table (run ranlib)
error: LLVM gold plugin has failed to create LTO module: Invalid MODULE_CODE_GLOBALVAR record
error: SDL: member at 7992 is not an ELF object
error: LLVM gold plugin has failed to create LTO module: Invalid MODULE_CODE_GLOBALVAR record
error: SDL: member at 286344 is not an ELF object
error: LLVM gold plugin has failed to create LTO module: Invalid MODULE_CODE_GLOBALVAR record
error: SDL: member at 289732 is not an ELF object
error: LLVM gold plugin has failed to create LTO module: Invalid MODULE_CODE_GLOBALVAR record
error: SDL: member at 340280 is not an ELF object
error: LLVM gold plugin has failed to create LTO module: Invalid MODULE_CODE_GLOBALVAR record
error: SDL: member at 371328 is not an ELF object
error: LLVM gold plugin has failed to create LTO module: Invalid MODULE_CODE_GLOBALVAR record
error: SDL: member at 389676 is not an ELF object
....Do you have any idea what can be causing these errors?
—
Reply to this email directly or view it on GitHubhttps://github.com//issues/14#issuecomment-26532495
.
from crossbridge.
@stopiccot Did you use the file made by previous version of LLVM?
You may take a look at line 384 at llvm-3.2/tools/gold/gold-plugin.cpp.
from crossbridge.
@rtissera
powl, make it an alias of pow.
openat is in thread lib.
fstatat, you should not rely on such APIs, otherwise have to implement yourself. Image that how can you access the real file system in Flash Player?
from crossbridge.
Not using openat neither fstatat directly in my code, it seems to be called by some underneath library or API hidden by Crossbridge. Using ZipBackingStore VFS btw, maybe the source of the issue ?
from crossbridge.
@cbakgly Yes, you are right. There were some mess with libs compiled by master branch version of crossbridge. I've tried to recompile dependencies (https://github.com/alexmac/alcextra) using newer crossbridge:
libtool: link: ranlib build/.libs/libSDL_mixer.a
bfd plugin: Failed to create LLVM module: Unknown bitstream version!
ld: warning: ignoring file build/.libs/libSDL_mixer.a, file was built for archive which is not the architecture being linked (x86_64): build/.libs/libSDL_mixer.a
ld: file too small for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
from crossbridge.
I've also compiled our project once again (but with libSDL_mixer disabled). This time it compiled and linked successfully. But when I try to run it using Flash Player Debugger 11.2.202.228 it fails on printf() call:
ReferenceError: Error #1065: Variable F_puts is not defined.
I have no idea why it is happening because simple test programs (int main() with just one printf()) wok fine for me. Any ideas what can be causing this issue?
from crossbridge.
@stopiccot
I feel that they both are version-mixed issues.
1st, like a different LLVM bitcode version. Just note that LLVM bitcode is not completely compatible. So a file from 2.9 should not be used to link with 3.2.
2nd, I think you used a bitcode file gen'ed from 2.9 compiler, and use it with 3.2 compiler. Because with previous one, 'put' will be converted later into some function; but in 3.2 "printf" just keeps its name. For this part I don't remember clearly. Hope I am right.
from crossbridge.
@rtissera Hmm, maybe you are right. Does Crossbridge has a ZipBackingStore?
from crossbridge.
ZipBackingStore is a custom alcextra class based on InMemoryBackingStore
2013/10/21 Ye Liu [email protected]
@rtissera https://github.com/rtissera Hmm, maybe you are right. Does
Crossbridge has a ZipBackingStore?—
Reply to this email directly or view it on GitHubhttps://github.com//issues/14#issuecomment-26699093
.
from crossbridge.
Oh yes, but guess he won't update anymore :(
from crossbridge.
If anyone wants commit access to the various alc* repos on my github page just send me a pull request, having a futures branch for each of them would be great but I probably won't have time to keep them up to date myself
from crossbridge.
Related Issues (20)
- Merge codebase to the official SWIG project HOT 3
- Cannot build master branch on Windows platform using Cygwin HOT 6
- Cannot build master branch on Mac platform using Travis-CI HOT 2
- getting started HOT 7
- Building the SDK HOT 1
- pthreads and workers support HOT 10
- getting started HOT 17
- performance aspects of crossbridge code HOT 2
- GDB. HOT 1
- fopen with directories makes fseek throw HOT 2
- PlayerKernel.open() throws exception when opening ISpecialFile file with O_TRUNC
- Cygwin dll files is missing HOT 1
- simple app used flashcc socket throws 'terminate called after throwing an instance of 'AS3::ui::var'' HOT 1
- Can't get it to work with SFML
- how do i link a static lib which build by cygwin HOT 1
- Use crossbridge to compile client.c to swc but failed because of a link error HOT 1
- gcc in cygwin is not support windows 10
- archive project? HOT 4
- crossbridge and C++11 HOT 10
- Disable output in adl
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from crossbridge.